diff options
Diffstat (limited to 'src/Document.cxx')
| -rw-r--r-- | src/Document.cxx | 12 | 
1 files changed, 2 insertions, 10 deletions
| diff --git a/src/Document.cxx b/src/Document.cxx index f9cd654c7..4df512b1d 100644 --- a/src/Document.cxx +++ b/src/Document.cxx @@ -3058,17 +3058,9 @@ Sci::Position Cxx11RegexFindText(const Document *doc, Sci::Position minPos, Sci:  		bool matched = false;  		if (SC_CP_UTF8 == doc->dbcsCodePage) { -			const std::string_view sv(s); -			const size_t lenS = sv.length(); -			std::vector<wchar_t> ws(sv.length() + 1); -#if WCHAR_T_IS_16 -			const size_t outLen = UTF16FromUTF8(sv, &ws[0], lenS); -#else -			const size_t outLen = UTF32FromUTF8(sv, reinterpret_cast<unsigned int *>(&ws[0]), lenS); -#endif -			ws[outLen] = 0; +			const std::wstring ws = WStringFromUTF8(s);  			std::wregex regexp; -			regexp.assign(&ws[0], flagsRe); +			regexp.assign(ws, flagsRe);  			matched = MatchOnLines<UTF8Iterator>(doc, regexp, resr, search);  		} else { | 
