aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorNeil Hodgson <nyamatongwe@gmail.com>2018-05-16 11:43:01 +1000
committerNeil Hodgson <nyamatongwe@gmail.com>2018-05-16 11:43:01 +1000
commit1172094322af0d3dfc03ff813b15ade18633c421 (patch)
tree0e432342125d2470d4c82e171715eed78ff6322c
parent8e7274be250aa1b92f9d7b11fa3ae27dec7e2a2f (diff)
downloadscintilla-mirror-1172094322af0d3dfc03ff813b15ade18633c421.tar.gz
Backport: Fix regex crash reported with libstdc++ on macOS that occurs
when the regex has a locale imbued. Backport of changeset 6953:85ff33e92309.
-rw-r--r--doc/ScintillaHistory.html3
-rw-r--r--src/Document.cxx7
2 files changed, 3 insertions, 7 deletions
diff --git a/doc/ScintillaHistory.html b/doc/ScintillaHistory.html
index fdb31fc25..2d6fdd34a 100644
--- a/doc/ScintillaHistory.html
+++ b/doc/ScintillaHistory.html
@@ -579,6 +579,9 @@
changing case of text, case-insensitive searching, and retrieving text as UTF-8.
</li>
<li>
+ Regular expression crash fixed on macOS when linking to libstdc++.
+ </li>
+ <li>
On Win32, a new file, ScintillaDLL.cxx, provides
the DllMain function required for a stand-alone Scintilla DLL. Build and project files should include this
file when producing a DLL and omit it when producing a static library or linking Scintilla statically.
diff --git a/src/Document.cxx b/src/Document.cxx
index 65ddba8e0..54656ab03 100644
--- a/src/Document.cxx
+++ b/src/Document.cxx
@@ -2951,13 +2951,6 @@ Sci::Position Cxx11RegexFindText(const Document *doc, Sci::Position minPos, Sci:
#endif
ws[outLen] = 0;
std::wregex regexp;
-#if defined(__APPLE__)
- // Using a UTF-8 locale doesn't change to Unicode over a byte buffer so '.'
- // is one byte not one character.
- // However, on OS X this makes wregex act as Unicode
- std::locale localeU("en_US.UTF-8");
- regexp.imbue(localeU);
-#endif
regexp.assign(&ws[0], flagsRe);
matched = MatchOnLines<UTF8Iterator>(doc, regexp, resr, search);