summaryrefslogtreecommitdiff
path: root/sql/item_jsonfunc.cc
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2022-08-22 12:34:42 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2022-08-22 12:34:42 +0300
commit36d173e523ca5e844310798c40d695c4db604dbc (patch)
tree1cf06301c5010e791fd2b0627aa3ac5cb3a78073 /sql/item_jsonfunc.cc
parent6005f3c548d312f48b575961889194a0a4767ae1 (diff)
parentfd0cd4801a00c61adb5ab6cbefcf360467a02f20 (diff)
downloadmariadb-git-36d173e523ca5e844310798c40d695c4db604dbc.tar.gz
Merge 10.3 into 10.4
Diffstat (limited to 'sql/item_jsonfunc.cc')
-rw-r--r--sql/item_jsonfunc.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/sql/item_jsonfunc.cc b/sql/item_jsonfunc.cc
index 299a1626d64..7e37fc7d096 100644
--- a/sql/item_jsonfunc.cc
+++ b/sql/item_jsonfunc.cc
@@ -613,6 +613,12 @@ continue_search:
if (json_read_value(&je))
goto err_return;
+ if (je.value_type == JSON_VALUE_NULL)
+ {
+ null_value= 1;
+ return NULL;
+ }
+
if (unlikely(check_and_get_value(&je, str, &error)))
{
if (error)
@@ -1104,7 +1110,6 @@ my_decimal *Item_func_json_extract::val_decimal(my_decimal *to)
case JSON_VALUE_ARRAY:
case JSON_VALUE_FALSE:
case JSON_VALUE_UNINITALIZED:
- // TODO: fix: NULL should be NULL
case JSON_VALUE_NULL:
int2my_decimal(E_DEC_FATAL_ERROR, 0, false/*unsigned_flag*/, to);
return to;