summaryrefslogtreecommitdiff
path: root/sql/item_windowfunc.h
diff options
context:
space:
mode:
authorAlexander Barkov <bar@mariadb.com>2019-04-02 09:13:16 +0400
committerAlexander Barkov <bar@mariadb.com>2019-04-02 09:13:16 +0400
commit1b4bb3b5bb2df01bd7ce1c8499d9cb79a62201c9 (patch)
treea38c6ea3a8d2c735739cdcc774ba03b32616ecca /sql/item_windowfunc.h
parent884004502134d881af0bcb59f97a838784ab5bbe (diff)
downloadmariadb-git-1b4bb3b5bb2df01bd7ce1c8499d9cb79a62201c9.tar.gz
MDEV-19124 Assertion `0' failed in Item::val_native
Diffstat (limited to 'sql/item_windowfunc.h')
-rw-r--r--sql/item_windowfunc.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/sql/item_windowfunc.h b/sql/item_windowfunc.h
index ea9f0147f83..8c6a661366f 100644
--- a/sql/item_windowfunc.h
+++ b/sql/item_windowfunc.h
@@ -318,6 +318,7 @@ class Item_sum_hybrid_simple : public Item_sum,
my_decimal *val_decimal(my_decimal *);
void reset_field();
String *val_str(String *);
+ bool val_native(THD *thd, Native *to);
bool get_date(THD *thd, MYSQL_TIME *ltime, date_mode_t fuzzydate);
const Type_handler *type_handler() const
{ return Type_handler_hybrid_field_type::type_handler(); }
@@ -1250,6 +1251,15 @@ public:
return res;
}
+ bool val_native(THD *thd, Native *to)
+ {
+ if (force_return_blank)
+ return null_value= true;
+ if (read_value_from_result_field)
+ return val_native_from_field(result_field, to);
+ return val_native_from_item(thd, window_func(), to);
+ }
+
my_decimal* val_decimal(my_decimal* dec)
{
my_decimal *res;