summaryrefslogtreecommitdiff
path: root/sql/item_cmpfunc.h
diff options
context:
space:
mode:
authorSergey Glukhov <Sergey.Glukhov@sun.com>2010-06-08 10:22:40 +0400
committerSergey Glukhov <Sergey.Glukhov@sun.com>2010-06-08 10:22:40 +0400
commitbc774bd332863bb5379d75e2f2605bdd80e4fb3c (patch)
tree0f806ccd38dfdfe38cad4a9543d0811dd70c9668 /sql/item_cmpfunc.h
parent80acd9573f52f72fcbe3dfc37dc1aa353f2b53ae (diff)
downloadmariadb-git-bc774bd332863bb5379d75e2f2605bdd80e4fb3c.tar.gz
Bug#53933 crash when using uncacheable subquery in the having clause of outer query
The problem is in the Item_func_isnull::update_used_tables() function, bracket is at the wrong place. Because of that isnull item erroneously is treated as const item. The fix is to set brackets in the right place.
Diffstat (limited to 'sql/item_cmpfunc.h')
-rw-r--r--sql/item_cmpfunc.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/sql/item_cmpfunc.h b/sql/item_cmpfunc.h
index 89bc6f9570b..233922fe2f8 100644
--- a/sql/item_cmpfunc.h
+++ b/sql/item_cmpfunc.h
@@ -1209,8 +1209,8 @@ public:
else
{
args[0]->update_used_tables();
- if ((const_item_cache= !(used_tables_cache= args[0]->used_tables())) &&
- !with_subselect)
+ if ((const_item_cache= !(used_tables_cache= args[0]->used_tables()) &&
+ !with_subselect))
{
/* Remember if the value is always NULL or never NULL */
cached_value= (longlong) args[0]->is_null();