summaryrefslogtreecommitdiff
path: root/sql/field_conv.cc
diff options
context:
space:
mode:
authormhansson@dl145s.mysql.com <>2007-05-21 14:28:31 +0200
committermhansson@dl145s.mysql.com <>2007-05-21 14:28:31 +0200
commit2abc880b82a15c340678f576ff913314054d231e (patch)
treeae312ba026c0dea7c15761078a939369c9d4d299 /sql/field_conv.cc
parentd12e6f7b0bc7fdae82cf8742010f53ff53c6b014 (diff)
parent6530f6806a1393132fc56cd2c43e94cd70a72434 (diff)
downloadmariadb-git-2abc880b82a15c340678f576ff913314054d231e.tar.gz
Merge dl145s.mysql.com:/users/mhansson/mysql/push/bug23856/my50-bug23856
into dl145s.mysql.com:/users/mhansson/mysql/push/bug23856/my51-bug23856
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 9771cbc12b1..e042c0ad76d 100644
--- a/sql/field_conv.cc
+++ b/sql/field_conv.cc
@@ -529,7 +529,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() == MYSQL_TYPE_NULL)