diff options
author | Georgi Kodinov <joro@sun.com> | 2009-01-09 13:50:18 +0200 |
---|---|---|
committer | Georgi Kodinov <joro@sun.com> | 2009-01-09 13:50:18 +0200 |
commit | 7c3ae5164738c931938195fd2184a1fff754be1c (patch) | |
tree | d2c700b58b3a495ae4d568d4c8e77e8e32bffe14 /mysql-test | |
parent | 8d16eb71b348830529ef9f1f8e528b3d0abd2967 (diff) | |
download | mariadb-git-7c3ae5164738c931938195fd2184a1fff754be1c.tar.gz |
Bug #41437: Value stored in 'case' lacks charset, causes segfault
When substituting system constant functions with a constant result
the server was not expecting that the function may return NULL.
Fixed by checking for NULL and returning Item_null (in the relevant
collation) if the result of the system constant function was NULL.
Diffstat (limited to 'mysql-test')
-rw-r--r-- | mysql-test/r/mysql.result | 2 | ||||
-rw-r--r-- | mysql-test/t/mysql.test | 5 |
2 files changed, 7 insertions, 0 deletions
diff --git a/mysql-test/r/mysql.result b/mysql-test/r/mysql.result index 95bdcab6ba1..9bad3b9f791 100644 --- a/mysql-test/r/mysql.result +++ b/mysql-test/r/mysql.result @@ -186,4 +186,6 @@ delimiter 2 2 2 +@z:='1' @z=database() +1 NULL End of 5.0 tests diff --git a/mysql-test/t/mysql.test b/mysql-test/t/mysql.test index 76941af893a..68a01a309d4 100644 --- a/mysql-test/t/mysql.test +++ b/mysql-test/t/mysql.test @@ -309,4 +309,9 @@ EOF --exec $MYSQL -c < $MYSQLTEST_VARDIR/tmp/bug38158.sql 2>&1 remove_file $MYSQLTEST_VARDIR/tmp/bug38158.sql; +# +# Bug #41437: Value stored in 'case' lacks charset, causees segfault +# +--exec $MYSQL -e "select @z:='1',@z=database()" + --echo End of 5.0 tests |