[Libreoffice-commits] core.git: i18npool/source
Caolán McNamara
caolanm at redhat.com
Sat Dec 30 16:23:07 UTC 2017
i18npool/source/search/textsearch.cxx | 8 ++++++++
i18npool/source/search/textsearch.hxx | 1 +
2 files changed, 9 insertions(+)
New commits:
commit 07a2d583ae5d7b6f983c4401eef92a052b15af02
Author: Caolán McNamara <caolanm at redhat.com>
Date: Wed Dec 13 11:52:39 2017 +0000
crash in sc, make TextSearch thread safe
with tdf95460-1.odt
Change-Id: Ic4e643b8e6ae6235fb79ed458f891afd4a4b73fc
Reviewed-on: https://gerrit.libreoffice.org/46380
Reviewed-by: Eike Rathke <erack at redhat.com>
Tested-by: Jenkins <ci at libreoffice.org>
diff --git a/i18npool/source/search/textsearch.cxx b/i18npool/source/search/textsearch.cxx
index 67eded1643ab..6f51d3b2cbf0 100644
--- a/i18npool/source/search/textsearch.cxx
+++ b/i18npool/source/search/textsearch.cxx
@@ -133,6 +133,8 @@ TextSearch::~TextSearch()
void TextSearch::setOptions2( const SearchOptions2& rOptions )
{
+ osl::MutexGuard g(m_aMutex);
+
aSrchPara = rOptions;
delete pRegexMatcher;
@@ -263,6 +265,8 @@ void TextSearch::setOptions2( const SearchOptions2& rOptions )
void TextSearch::setOptions( const SearchOptions& rOptions )
{
+ osl::MutexGuard g(m_aMutex);
+
sal_Int16 nAlgorithmType2;
switch (rOptions.algorithmType)
{
@@ -313,6 +317,8 @@ bool TextSearch::isCellStart(const OUString& searchStr, sal_Int32 nPos)
SearchResult TextSearch::searchForward( const OUString& searchStr, sal_Int32 startPos, sal_Int32 endPos )
{
+ osl::MutexGuard g(m_aMutex);
+
SearchResult sres;
OUString in_str(searchStr);
@@ -428,6 +434,8 @@ SearchResult TextSearch::searchForward( const OUString& searchStr, sal_Int32 sta
SearchResult TextSearch::searchBackward( const OUString& searchStr, sal_Int32 startPos, sal_Int32 endPos )
{
+ osl::MutexGuard g(m_aMutex);
+
SearchResult sres;
OUString in_str(searchStr);
diff --git a/i18npool/source/search/textsearch.hxx b/i18npool/source/search/textsearch.hxx
index 6f9c3d189cf4..05c158d302a1 100644
--- a/i18npool/source/search/textsearch.hxx
+++ b/i18npool/source/search/textsearch.hxx
@@ -43,6 +43,7 @@ class TextSearch: public cppu::WeakImplHelper
css::lang::XServiceInfo
>
{
+ osl::Mutex m_aMutex;
css::uno::Reference < css::uno::XComponentContext > m_xContext;
css::util::SearchOptions2 aSrchPara;
More information about the Libreoffice-commits
mailing list