File mysql-5.0.67-bug54477.patch of Package mysql

Index: mysql-test/r/func_in.result
===================================================================
--- mysql-test/r/func_in.result.orig
+++ mysql-test/r/func_in.result
@@ -486,3 +486,25 @@ SELECT id FROM t1 WHERE id IN(4564, (SEL
 id
 DROP TABLE t1;
 End of 5.0 tests
+#
+# Bug#54477: Crash on IN / CASE with NULL arguments
+#
+CREATE TABLE t1 (a INT);
+INSERT INTO t1 VALUES (1), (2);
+SELECT 1 IN (NULL, a) FROM t1;
+1 IN (NULL, a)
+1
+NULL
+SELECT a IN (a, a) FROM t1 GROUP BY a WITH ROLLUP;
+a IN (a, a)
+1
+1
+NULL
+SELECT CASE a WHEN a THEN a END FROM t1 GROUP BY a WITH ROLLUP;
+CASE a WHEN a THEN a END
+1
+2
+NULL
+DROP TABLE t1;
+#
+End of 5.1 tests
Index: mysql-test/t/func_in.test
===================================================================
--- mysql-test/t/func_in.test.orig
+++ mysql-test/t/func_in.test
@@ -381,3 +381,21 @@ SELECT id FROM t1 WHERE id IN(4564, (SEL
 DROP TABLE t1;
 
 --echo End of 5.0 tests
+--echo #
+--echo # Bug#54477: Crash on IN / CASE with NULL arguments
+--echo #
+
+CREATE TABLE t1 (a INT);
+INSERT INTO t1 VALUES (1), (2);
+
+SELECT 1 IN (NULL, a) FROM t1;
+
+SELECT a IN (a, a) FROM t1 GROUP BY a WITH ROLLUP;
+
+SELECT CASE a WHEN a THEN a END FROM t1 GROUP BY a WITH ROLLUP;
+
+DROP TABLE t1;
+
+--echo #
+
+--echo End of 5.1 tests
openSUSE Build Service is sponsored by