← Back to team overview

maria-developers team mailing list archive

Re: [Commits] c5975eaea17: MDEV-7339 Server crashes in Item_func_trig_cond::val_int

 

Hi!

Am 12.07.2017 um 10:39 schrieb serg@xxxxxxxxxxx:
revision-id: c5975eaea174460e774e77717e972a8d32e6c8de (mariadb-5.5.56-38-gc5975eaea17)
parent(s): f305a7ce4bccbd56520d874e1d81a4f29bc17a96
author: Sergei Golubchik
committer: Sergei Golubchik
timestamp: 2017-07-12 10:39:02 +0200
message:

MDEV-7339 Server crashes in Item_func_trig_cond::val_int

Item_in_subselect::pushed_cond_guards[] array is allocated only when
left_expr->maybe_null. And it is used (for row expressions) when
left_expr->element_index(i)->maybe_null.

For left_expr being a multi-column subquery, its maybe_null is
always false when the subquery doesn't use tables (see
Item_singlerow_subselect::fix_length_and_dec()
and subselect_single_select_engine::fix_length_and_dec()),
otherwise it's always true.

But row elements can be NULL regardless, so let's always allocate
pushed_cond_guards for multi-column subqueries, no matter whether
its maybe_null was forced to true or false.

OK to push!

[skip]