summaryrefslogtreecommitdiff
path: root/sql/item_cmpfunc.h
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2017-05-19 08:53:58 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2017-05-19 12:29:37 +0300
commit13a350ac29eeb43153c7bca65b73b5dfa9f8ffb5 (patch)
treeb13da72226623745f0607609e2bb3dcaac4a11c6 /sql/item_cmpfunc.h
parentd0eb4ee96b32caec1d6bba6dc376016b2bf2ac0f (diff)
parent54bb04f7efc1d0842b3d8befb670f5d9f05cb211 (diff)
downloadmariadb-git-13a350ac29eeb43153c7bca65b73b5dfa9f8ffb5.tar.gz
Merge 10.0 into 10.1
Diffstat (limited to 'sql/item_cmpfunc.h')
-rw-r--r--sql/item_cmpfunc.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/sql/item_cmpfunc.h b/sql/item_cmpfunc.h
index 4015255e7ad..964a174f330 100644
--- a/sql/item_cmpfunc.h
+++ b/sql/item_cmpfunc.h
@@ -1892,6 +1892,7 @@ public:
class Regexp_processor_pcre
{
pcre *m_pcre;
+ pcre_extra m_pcre_extra;
bool m_conversion_is_needed;
bool m_is_const;
int m_library_flags;
@@ -1916,8 +1917,12 @@ public:
m_data_charset(&my_charset_utf8_general_ci),
m_library_charset(&my_charset_utf8_general_ci),
m_subpatterns_needed(0)
- {}
+ {
+ m_pcre_extra.flags= PCRE_EXTRA_MATCH_LIMIT_RECURSION;
+ m_pcre_extra.match_limit_recursion= 100L;
+ }
int default_regex_flags();
+ void set_recursion_limit(THD *);
void init(CHARSET_INFO *data_charset, int extra_flags, uint nsubpatterns_arg)
{
m_library_flags= default_regex_flags() | extra_flags |