summaryrefslogtreecommitdiff
path: root/sql/sql_string.h
diff options
context:
space:
mode:
authorVenkatesh Duggirala <venkatesh.duggirala@oracle.com>2013-03-12 22:36:13 +0530
committerVenkatesh Duggirala <venkatesh.duggirala@oracle.com>2013-03-12 22:36:13 +0530
commit8a49d7a83efdf9be5a07b8c11637e8987ce0ef66 (patch)
tree701ae576a4a4d0f7b20a1609b58d23254734fe70 /sql/sql_string.h
parentdaa28126f5740ba88d513f83f13927a56b42addd (diff)
downloadmariadb-git-8a49d7a83efdf9be5a07b8c11637e8987ce0ef66.tar.gz
BUG#14593883-REPLICATION BREAKS WHEN SET DATA TYPE
COLUMNS ARE USED INSIDE A STORED PROCEDURE Problem: The operator '=' overload method inside 'String' class is not coping str_charset member from R.H.S object to L.H.S object. Hence charset is wrongly set while using string assignments Analaysis: The above mentioned problem is identified while doing the analaysis of bug#14593883. Though the test scenario mentioned in the bug page is not an issue in mysql-5.1 code, the actual root cause ie., "str_charset member is not copied" exists in the mysql-5.1 code base. Fix: Handle coping str_charset member in operator '=' overload method. sql/sql_string.h: Handled coping str_charset member in operator '=' overload method.
Diffstat (limited to 'sql/sql_string.h')
-rw-r--r--sql/sql_string.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/sql/sql_string.h b/sql/sql_string.h
index 6d5e8c46c55..c65560dd1d1 100644
--- a/sql/sql_string.h
+++ b/sql/sql_string.h
@@ -1,5 +1,5 @@
/*
- Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -258,6 +258,7 @@ public:
DBUG_ASSERT(!s.uses_buffer_owned_by(this));
free();
Ptr=s.Ptr ; str_length=s.str_length ; Alloced_length=s.Alloced_length;
+ str_charset=s.str_charset;
alloced=0;
}
return *this;