summaryrefslogtreecommitdiff
path: root/sql/field_conv.cc
diff options
context:
space:
mode:
authorunknown <mhansson@dl145s.mysql.com>2007-05-21 10:27:33 +0200
committerunknown <mhansson@dl145s.mysql.com>2007-05-21 10:27:33 +0200
commit84966af9fc33a4cfa72f24a57da170db28f1c55a (patch)
treea62ec66f999f1c490922cac311cd09db6534054b /sql/field_conv.cc
parent1e33cfb36a84b477a468dbcfc1ccc3035a9efb81 (diff)
downloadmariadb-git-84966af9fc33a4cfa72f24a57da170db28f1c55a.tar.gz
bug#23856
Diffstat (limited to 'sql/field_conv.cc')
-rw-r--r--sql/field_conv.cc14
1 files changed, 14 insertions, 0 deletions
diff --git a/sql/field_conv.cc b/sql/field_conv.cc
index 5670b1e0676..5c74ea9e49f 100644
--- a/sql/field_conv.cc
+++ b/sql/field_conv.cc
@@ -530,7 +530,21 @@ void Copy_field::set(char *to,Field *from)
}
+/*
+ To do:
+
+ If 'save\ is set to true and the 'from' is a blob field, do_copy is set to
+ do_save_blob rather than do_conv_blob. The only differences between them
+ appears to be:
+ - do_save_blob allocates and uses an intermediate buffer before calling
+ Field_blob::store. Is this in order to trigger the call to
+ well_formed_copy_nchars, by changing the pointer copy->tmp.ptr()?
+ That call will take place anyway in all known cases.
+
+ - The above causes a truncation to MAX_FIELD_WIDTH. Is this the intended
+ effect? Truncation is handled by well_formed_copy_nchars anyway.
+ */
void Copy_field::set(Field *to,Field *from,bool save)
{
if (to->type() == FIELD_TYPE_NULL)