1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

Bug #31440: 'select 1 regex null' asserts debug server

The special case with NULL as a regular expression
was handled at prepare time. But in this special case
the item was not marked as fixed. This caused an assertion
at execution time.
Fixed my marking the item as fixed even when known to 
return NULL at prepare time.
This commit is contained in:
gkodinov/kgeorge@magare.gmz
2007-10-11 11:29:26 +03:00
parent 20ec6605d3
commit 99f1606e94
3 changed files with 16 additions and 1 deletions

View File

@ -98,3 +98,8 @@ R2
R3 R3
deallocate prepare stmt1; deallocate prepare stmt1;
drop table t1; drop table t1;
End of 4.1 tests
SELECT 1 REGEXP NULL;
1 REGEXP NULL
NULL
End of 5.0 tests

View File

@ -74,4 +74,13 @@ execute stmt1 using @a;
deallocate prepare stmt1; deallocate prepare stmt1;
drop table t1; drop table t1;
# End of 4.1 tests --echo End of 4.1 tests
#
# Bug #31440: 'select 1 regex null' asserts debug server
#
SELECT 1 REGEXP NULL;
--echo End of 5.0 tests

View File

@ -4285,6 +4285,7 @@ Item_func_regex::fix_fields(THD *thd, Item **ref)
if (args[1]->null_value) if (args[1]->null_value)
{ // Will always return NULL { // Will always return NULL
maybe_null=1; maybe_null=1;
fixed= 1;
return FALSE; return FALSE;
} }
int error; int error;