SLint: remove pcre_free_study (which caused a bug on OSX) 56/17356/2
Calixte DENIZET [Wed, 21 Oct 2015 08:08:47 +0000 (10:08 +0200)]
Change-Id: I6e2882d012271995d04dbd7b5bce7257657dd8b3

scilab/modules/slint/includes/PCREMatcher.hxx
scilab/modules/slint/src/cpp/PCREMatcher.cpp

index 3d455b9..f2072d7 100644 (file)
@@ -26,7 +26,6 @@ class PCREMatcher
 
     const std::wstring pattern;
     pcre * re;
-    pcre_extra * extra;
 
 public:
 
index fdb261a..f611ffe 100644 (file)
@@ -27,18 +27,13 @@ PCREMatcher::PCREMatcher(const std::wstring & _pattern) : pattern(_pattern)
     if (_pattern.empty())
     {
         re = nullptr;
-        extra = nullptr;
     }
     else
     {
         const char * error = nullptr;
         int errorOffset = -1;
         re = pcre_compile(scilab::UTF8::toUTF8(pattern).c_str(), PCRE_UTF8, &error, &errorOffset, nullptr);
-        if (re)
-        {
-            extra = pcre_study(re, 0, &error);
-        }
-        else
+        if (!re)
         {
             if (error)
             {
@@ -58,10 +53,6 @@ PCREMatcher::~PCREMatcher()
     {
         pcre_free(re);
     }
-    if (extra)
-    {
-        pcre_free_study(extra);
-    }
 }
 
 bool PCREMatcher::match(const std::wstring & str, const bool full) const
@@ -84,7 +75,7 @@ bool PCREMatcher::match(const wchar_t * str, const unsigned int len, const bool
     {
         int resVect[3];
         char * _str = wide_string_to_UTF8(str);
-        int result = pcre_exec(re, extra, _str, len, 0, 0, resVect, sizeof(resVect) / sizeof(int));
+        int result = pcre_exec(re, nullptr, _str, len, 0, 0, resVect, sizeof(resVect) / sizeof(int));
         FREE(_str);
         if (full)
         {