From 46dee0d1848e24e39fc236e78a438efa22356f8d Mon Sep 17 00:00:00 2001
From: Alexander Barkov <bar@mariadb.org>
Date: Mon, 5 Dec 2016 16:50:12 +0400
Subject: MDEV-10717 Assertion `!null_value' failed in virtual bool
 Item::send(Protocol*, String*)

The problem was that null_value was not set to "false" on a well-formed row.
If an ill-formed row was followed by a well-forned row, null_value remained
"true" in the call of Item::send() for the well-formed row.
---
 sql/item.cc | 1 +
 1 file changed, 1 insertion(+)

(limited to 'sql')

diff --git a/sql/item.cc b/sql/item.cc
index 3448b236640..ede1df6aa9b 100644
--- a/sql/item.cc
+++ b/sql/item.cc
@@ -5743,6 +5743,7 @@ String *Item::check_well_formed_result(String *str, bool send_error)
   uint wlen= cs->cset->well_formed_len(cs,
                                        str->ptr(), str->ptr() + str->length(),
                                        str->length(), &well_formed_error);
+  null_value= false;
   if (wlen < str->length())
   {
     THD *thd= current_thd;
-- 
cgit v1.2.1