summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2014-11-11 13:52:42 +0100
committerStephan Bergmann <sbergman@redhat.com>2014-11-11 13:52:42 +0100
commit22db613f4ed4ea72a3679b8dd094cbea302e136a (patch)
tree1778be676b81cb86307d89339fb5559dc550b988
parentfeb93d45e872cce23e358527d264693dbbd47607 (diff)
More nEndInvalid/COMPLETE_STRING fixes
...to fix -fsanitize=signed-integer-overflow Change-Id: Ib8dad09f1ed088c51fb417efecf662e76b2e495a
-rw-r--r--sw/source/core/inc/wrong.hxx2
-rw-r--r--sw/source/core/text/wrong.cxx2
2 files changed, 2 insertions, 2 deletions
diff --git a/sw/source/core/inc/wrong.hxx b/sw/source/core/inc/wrong.hxx
index f2a8831156b4..4d31b9a52015 100644
--- a/sw/source/core/inc/wrong.hxx
+++ b/sw/source/core/inc/wrong.hxx
@@ -211,7 +211,7 @@ public:
inline bool InsideInvalid( sal_Int32 nChk ) const
{ return nChk >= nBeginInvalid && nChk <= nEndInvalid; }
void SetInvalid( sal_Int32 nBegin, sal_Int32 nEnd );
- inline void Validate(){ nBeginInvalid = COMPLETE_STRING; }
+ inline void Validate(){ nBeginInvalid = nEndInvalid = COMPLETE_STRING; }
void Invalidate( sal_Int32 nBegin, sal_Int32 nEnd );
bool InvalidateWrong();
bool Fresh( sal_Int32 &rStart, sal_Int32 &rEnd, sal_Int32 nPos,
diff --git a/sw/source/core/text/wrong.cxx b/sw/source/core/text/wrong.cxx
index a9d500fb1c6a..680c6d050275 100644
--- a/sw/source/core/text/wrong.cxx
+++ b/sw/source/core/text/wrong.cxx
@@ -313,7 +313,7 @@ void SwWrongList::Move( sal_Int32 nPos, sal_Int32 nDiff )
{
if( nBeginInvalid > nPos )
nBeginInvalid += nDiff;
- if( nEndInvalid >= nPos )
+ if( nEndInvalid >= nPos && nEndInvalid != COMPLETE_STRING )
nEndInvalid += nDiff;
}
// If the pointer is in the middle of a wrong word,