diff options
author | unknown <ram@gw.mysql.r18.ru> | 2004-06-15 16:03:16 +0500 |
---|---|---|
committer | unknown <ram@gw.mysql.r18.ru> | 2004-06-15 16:03:16 +0500 |
commit | 0f83847940dfa10ba641230607e52321f27df3a8 (patch) | |
tree | 28411be61405a826e3a2858d4e85950cfdd255f8 /sql/item_strfunc.cc | |
parent | 125f840133735bc1031d06612aa04f07800066b2 (diff) | |
parent | 2ef5b0ed4e87c38ad031b3005cdbd05a09fef69b (diff) | |
download | mariadb-git-0f83847940dfa10ba641230607e52321f27df3a8.tar.gz |
Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into gw.mysql.r18.ru:/usr/home/ram/work/4.1.b4035
sql/item_strfunc.cc:
Auto merged
sql/item_sum.cc:
Auto merged
sql/item_sum.h:
Auto merged
Diffstat (limited to 'sql/item_strfunc.cc')
-rw-r--r-- | sql/item_strfunc.cc | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/sql/item_strfunc.cc b/sql/item_strfunc.cc index 5d8fe8c4aef..b0c685c1c46 100644 --- a/sql/item_strfunc.cc +++ b/sql/item_strfunc.cc @@ -950,17 +950,10 @@ String *Item_func_left::val_str(String *str) return 0; if (length <= 0) return &my_empty_string; - length= res->charpos(length); - if (res->length() > (ulong) length) - { // Safe even if const arg - if (!res->alloced_length()) - { // Don't change const str - str_value= *res; // Not malloced string - res= &str_value; - } - res->length((uint) length); - } - return res; + if (res->length() <= (uint) length) + return res; + str_value.set(*res, 0, res->charpos(length)); + return &str_value; } |