From e2495206b276d6aaeb506ed135016112532d71e3 Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 8 Jun 2006 13:25:28 -0400 Subject: Bug#19904: UDF: not initialized *is_null per row The is_null value was initialized once and thereafter only set to indicate NULL, and never unset to indicate not-NULL. Now set is_null to false, in addition to only setting it to true when the value in question is null. mysql-test/r/udf.result: Add result. mysql-test/t/udf.test: Add test. sql/sql_udf.h: Initialize is_null to false before trying to use it, so that historical NULLs don't affect our operation. --- sql/sql_udf.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'sql/sql_udf.h') diff --git a/sql/sql_udf.h b/sql/sql_udf.h index d588572a762..d0729deecaa 100644 --- a/sql/sql_udf.h +++ b/sql/sql_udf.h @@ -70,6 +70,7 @@ class udf_handler :public Sql_alloc void cleanup(); double val(my_bool *null_value) { + is_null= 0; if (get_arguments()) { *null_value=1; @@ -88,6 +89,7 @@ class udf_handler :public Sql_alloc } longlong val_int(my_bool *null_value) { + is_null= 0; if (get_arguments()) { *null_value=1; -- cgit v1.2.1