diff options
author | unknown <petr@mysql.com> | 2005-09-08 18:25:42 +0200 |
---|---|---|
committer | unknown <petr@mysql.com> | 2005-09-08 18:25:42 +0200 |
commit | 1b15f430d6734bc3a3b1e4f5af6d52855ad7d33d (patch) | |
tree | c08168bd61b61bb609554187c18f46ee88be27d7 /sql/item.h | |
parent | e61d56a985ad06d23548b367c6258b006ac2dfea (diff) | |
download | mariadb-git-1b15f430d6734bc3a3b1e4f5af6d52855ad7d33d.tar.gz |
fix for Bug #12849 Stored Procedure: Crash on procedure call with CHAR type 'INOUT' parameter
(recommit with the right Bug#)
mysql-test/r/sp.result:
result file modified to reflect new test
mysql-test/t/sp.test:
added test for the bug
sql/item.cc:
protect Item_splocal value from modification by CONCAT() et al
sql/item.h:
added a buffer to save Item_splocal string pointer
sql/sp_head.cc:
don't employ reuse mechanism to save var into itself
Diffstat (limited to 'sql/item.h')
-rw-r--r-- | sql/item.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/sql/item.h b/sql/item.h index f128c72413d..381ba98e193 100644 --- a/sql/item.h +++ b/sql/item.h @@ -715,9 +715,17 @@ public: class Item_splocal : public Item { uint m_offset; + public: LEX_STRING m_name; + /* + Buffer, pointing to the string value of the item. We need it to + protect internal buffer from changes. See comment to analogous + member in Item_param for more details. + */ + String str_value_ptr; + /* Position of this reference to SP variable in the statement (the statement itself is in sp_instr_stmt::m_query). |