From ce8a8e08da649a670bdd8e5c9ccdca1e9ba2e063 Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 23 May 2007 14:43:06 +0200 Subject: Bug #28250: Run-Time Check Failure #3 - The variable 'value' is being used without being def Inside method Item_func_unsigned::val_int, the variable value can be returned without being initialized when the CAST argument is of type DECIMAL and has a NULL value. This gives a run-time error when building debug binaries using Visual C++ 2005. Solution: Initialize value to 0 mysql-test/t/cast.test: bug#28250: There is no need for an extra test case, but we recognize that this one catches the bug. sql/item_func.cc: bug#28250: initialization of value. --- mysql-test/t/cast.test | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'mysql-test/t/cast.test') diff --git a/mysql-test/t/cast.test b/mysql-test/t/cast.test index 004ef69182d..b665eb86656 100644 --- a/mysql-test/t/cast.test +++ b/mysql-test/t/cast.test @@ -10,7 +10,13 @@ select cast(-5 as unsigned) -1, cast(-5 as unsigned) + 1; select ~5, cast(~5 as signed); explain extended select ~5, cast(~5 as signed); select cast(5 as unsigned) -6.0; -select cast(NULL as signed), cast(1/0 as signed); +select cast(NULL as signed), cast(1/0 as signed); +# +# Bug #28250: Run-Time Check Failure #3 - The variable 'value' is being used +# without being def +# +# The following line causes Run-Time Check Failure on +# binaries built with Visual C++ 2005 select cast(NULL as unsigned), cast(1/0 as unsigned); select cast("A" as binary) = "a", cast(BINARY "a" as CHAR) = "A"; select cast("2001-1-1" as DATE), cast("2001-1-1" as DATETIME); -- cgit v1.2.1