diff options
Diffstat (limited to 'sql')
-rw-r--r-- | sql/item_cmpfunc.h | 1 | ||||
-rw-r--r-- | sql/json_schema.cc | 6 |
2 files changed, 5 insertions, 2 deletions
diff --git a/sql/item_cmpfunc.h b/sql/item_cmpfunc.h index 7f808580470..d34bad95a57 100644 --- a/sql/item_cmpfunc.h +++ b/sql/item_cmpfunc.h @@ -3051,6 +3051,7 @@ public: bool is_const() const { return m_is_const; } void set_const(bool arg) { m_is_const= arg; } CHARSET_INFO * library_charset() const { return m_library_charset; } + void unset_flag(int flag) { m_library_flags&= ~flag; } }; diff --git a/sql/json_schema.cc b/sql/json_schema.cc index 2279bb59f9a..cdfe91a206d 100644 --- a/sql/json_schema.cc +++ b/sql/json_schema.cc @@ -20,7 +20,7 @@ #include <m_string.h> #include "json_schema.h" #include "json_schema_helper.h" - +#include "pcre2.h" static HASH all_keywords_hash; static Json_schema_keyword *create_json_schema_keyword(THD *thd) @@ -917,6 +917,7 @@ bool Json_schema_pattern::handle_keyword(THD *thd, json_engine_t *je, str= (Item_string*)current_thd->make_string_literal((const char*)"", 0, repertoire); re.init(je->s.cs, 0); + re.unset_flag(PCRE2_CASELESS); return false; } @@ -2219,7 +2220,7 @@ bool Json_schema_pattern_properties::handle_keyword(THD *thd, return true; } - str= (Item_string*)current_thd->make_string_literal((const char*)"", + str= (Item_string*)thd->make_string_literal((const char*)"", 0, my_charset_repertoire(je->s.cs)); @@ -2250,6 +2251,7 @@ bool Json_schema_pattern_properties::handle_keyword(THD *thd, (size_t)(k_end-k_start), repertoire); curr_pattern_to_property->re.init(je->s.cs, 0); + curr_pattern_to_property->re.unset_flag(PCRE2_CASELESS); curr_pattern_to_property->curr_schema= new (thd->mem_root) List<Json_schema_keyword>; |