summaryrefslogtreecommitdiff
path: root/sql/field_conv.cc
diff options
context:
space:
mode:
authorAlexander Barkov <bar@mariadb.org>2015-12-29 15:18:55 +0400
committerAlexander Barkov <bar@mariadb.org>2015-12-29 15:18:55 +0400
commit6d7362eeb893d50b711853f3a04e8e529dd301ef (patch)
tree63c9a7d1c79cbe25b8c76f5ccb275a35eef4ea66 /sql/field_conv.cc
parent4fdf25afa8188905653a83e08fc387243e584600 (diff)
parente1b9be5417668b184893148adea5f1f0e3a8d00f (diff)
downloadmariadb-git-6d7362eeb893d50b711853f3a04e8e529dd301ef.tar.gz
Merge remote-tracking branch 'origin/5.5' into 10.0
Diffstat (limited to 'sql/field_conv.cc')
-rw-r--r--sql/field_conv.cc9
1 files changed, 1 insertions, 8 deletions
diff --git a/sql/field_conv.cc b/sql/field_conv.cc
index 79d579b6828..e633574bf49 100644
--- a/sql/field_conv.cc
+++ b/sql/field_conv.cc
@@ -333,9 +333,7 @@ static void do_copy_next_number(Copy_field *copy)
static void do_copy_blob(Copy_field *copy)
{
- ulong length=((Field_blob*) copy->from_field)->get_length();
- ((Field_blob*) copy->to_field)->store_length(length);
- memcpy(copy->to_ptr, copy->from_ptr, sizeof(char*));
+ ((Field_blob*) copy->to_field)->copy_value(((Field_blob*) copy->from_field));
}
static void do_conv_blob(Copy_field *copy)
@@ -710,12 +708,7 @@ Copy_field::get_copy_func(Field *to,Field *from)
if (!(from->flags & BLOB_FLAG) || from->charset() != to->charset())
return do_conv_blob;
if (from_length != to_length)
- {
- // Correct pointer to point at char pointer
- to_ptr+= to_length - portable_sizeof_char_ptr;
- from_ptr+= from_length - portable_sizeof_char_ptr;
return do_copy_blob;
- }
}
else
{