mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 03:52:35 +01:00
MDEV-13138 JSON_OBJECT returns null with strings containing backticks.
Condition was fixed.
This commit is contained in:
parent
66a09bd6ab
commit
594c6b37f3
3 changed files with 13 additions and 1 deletions
|
@ -674,3 +674,9 @@ JSON_EXTRACT('{"foo": "bar" foobar foo invalid ', '$.foo')
|
|||
NULL
|
||||
Warnings:
|
||||
Warning 4038 Syntax error in JSON text in argument 1 to function 'json_extract' at position 15
|
||||
SELECT JSON_OBJECT('foo', '`');
|
||||
JSON_OBJECT('foo', '`')
|
||||
{"foo": "`"}
|
||||
SELECT JSON_OBJECT("foo", "bar`bar");
|
||||
JSON_OBJECT("foo", "bar`bar")
|
||||
{"foo": "bar`bar"}
|
||||
|
|
|
@ -322,3 +322,9 @@ select JSON_EXTRACT('{\"input1\":\"\\u00f6\"}', '$.\"input1\"');
|
|||
#
|
||||
select JSON_EXTRACT('{"foo": "bar" foobar foo invalid ', '$.foo');
|
||||
|
||||
#
|
||||
# MDEV-13138 JSON_OBJECT returns null with strings containing backticks.
|
||||
#
|
||||
SELECT JSON_OBJECT('foo', '`');
|
||||
SELECT JSON_OBJECT("foo", "bar`bar");
|
||||
|
||||
|
|
|
@ -1586,7 +1586,7 @@ int json_escape(CHARSET_INFO *str_cs,
|
|||
enum json_esc_char_classes c_class;
|
||||
|
||||
str+= c_len;
|
||||
if (c_chr > 0x60 || (c_class= json_escape_chr_map[c_chr]) == ESC_)
|
||||
if (c_chr >= 0x60 || (c_class= json_escape_chr_map[c_chr]) == ESC_)
|
||||
{
|
||||
if ((c_len= json_cs->cset->wc_mb(json_cs, c_chr, json, json_end)) > 0)
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue