diff --git a/mysql-test/main/vector_funcs.result b/mysql-test/main/vector_funcs.result index 8134bd3de4f..78e98449635 100644 Binary files a/mysql-test/main/vector_funcs.result and b/mysql-test/main/vector_funcs.result differ diff --git a/mysql-test/main/vector_funcs.test b/mysql-test/main/vector_funcs.test index b85b097c2ff..f0c56f6604c 100644 --- a/mysql-test/main/vector_funcs.test +++ b/mysql-test/main/vector_funcs.test @@ -74,3 +74,8 @@ select vec_fromtext(v) from t; drop table t; select vec_fromtext(0x00000000); + +--echo # +--echo # MDEV-35220 Assertion `!item->null_value' failed upon VEC_TOTEXT call +--echo # +select vec_totext(`null`) from (values (null),(0x00000000)) x; diff --git a/sql/item_vectorfunc.cc b/sql/item_vectorfunc.cc index e0e5fc26696..e7686657728 100644 --- a/sql/item_vectorfunc.cc +++ b/sql/item_vectorfunc.cc @@ -65,11 +65,8 @@ bool Item_func_vec_totext::fix_length_and_dec(THD *thd) String *Item_func_vec_totext::val_str_ascii(String *str) { String *r1= args[0]->val_str(); - if (args[0]->null_value) - { - null_value= true; + if ((null_value= args[0]->null_value)) return nullptr; - } // Wrong size returns null if (r1->length() % 4)