summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mysql-test/r/func_str.result2
-rw-r--r--sql/item_strfunc.cc8
2 files changed, 5 insertions, 5 deletions
diff --git a/mysql-test/r/func_str.result b/mysql-test/r/func_str.result
index a72d32d39f8..1a4cb9217e4 100644
--- a/mysql-test/r/func_str.result
+++ b/mysql-test/r/func_str.result
@@ -64,7 +64,7 @@ concat_ws(NULL,'a') concat_ws(',',NULL,'')
NULL
select concat_ws(',','',NULL,'a');
concat_ws(',','',NULL,'a')
-a
+,a
SELECT CONCAT('"',CONCAT_WS('";"',repeat('a',60),repeat('b',60),repeat('c',60),repeat('d',100)), '"');
CONCAT('"',CONCAT_WS('";"',repeat('a',60),repeat('b',60),repeat('c',60),repeat('d',100)), '"')
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";"cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc";"dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd"
diff --git a/sql/item_strfunc.cc b/sql/item_strfunc.cc
index ae8bf1dfecb..208be1ecd7f 100644
--- a/sql/item_strfunc.cc
+++ b/sql/item_strfunc.cc
@@ -495,18 +495,18 @@ String *Item_func_concat_ws::val_str(String *str)
str->length(0); // QQ; Should be removed
res=str;
- // Skip until non-null and non-empty argument is found.
+ // Skip until non-null argument is found.
// If not, return the empty string
for (i=0; i < arg_count; i++)
- if ((res= args[i]->val_str(str)) && res->length())
+ if ((res= args[i]->val_str(str)))
break;
if (i == arg_count)
return &empty_string;
for (i++; i < arg_count ; i++)
{
- if (!(res2= args[i]->val_str(use_as_buff)) || !res2->length())
- continue; // Skip NULL and empty string
+ if (!(res2= args[i]->val_str(use_as_buff)))
+ continue; // Skip NULL
if (res->length() + sep_str->length() + res2->length() >
current_thd->variables.max_allowed_packet)