mirror of
https://github.com/MariaDB/server.git
synced 2025-12-24 11:21:21 +03:00
MDEV-22744 *SAN: sql/item_xmlfunc.cc:791:43: runtime error: downcast of address ... which does not point to an object of type 'Item_func' note: object is of type 'Item_bool' (on optimized builds)
In Item_nodeset_func_predicate::val_nodeset, args[1] is not necessarily an Item_func descendant. It can be Item_bool. Removing a wrong cast. It was not really needed anyway.
This commit is contained in:
@@ -797,7 +797,6 @@ String *Item_nodeset_func_attributebyname::val_nodeset(String *nodeset)
|
||||
String *Item_nodeset_func_predicate::val_nodeset(String *str)
|
||||
{
|
||||
Item_nodeset_func *nodeset_func= (Item_nodeset_func*) args[0];
|
||||
Item_func *comp_func= (Item_func*)args[1];
|
||||
uint pos= 0, size;
|
||||
prepare(str);
|
||||
size= fltend - fltbeg;
|
||||
@@ -807,7 +806,7 @@ String *Item_nodeset_func_predicate::val_nodeset(String *str)
|
||||
((XPathFilter*)(&nodeset_func->context_cache))->append_element(flt->num,
|
||||
flt->pos,
|
||||
size);
|
||||
if (comp_func->val_int())
|
||||
if (args[1]->val_int())
|
||||
((XPathFilter*)str)->append_element(flt->num, pos++);
|
||||
}
|
||||
return str;
|
||||
|
||||
Reference in New Issue
Block a user