From 2ce8b2c37aaebacdce250d6758d93ce7f9a992f0 Mon Sep 17 00:00:00 2001 From: Michael Stahl Date: Sun, 31 Aug 2014 22:06:15 +0200 Subject: editeng: avoid autocorrect crash MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Happened for me with nFndPos = 30 and nEndPos = 20, and a rTxt that probably contained "->" twice. Change-Id: I534c60a5904249e25fdefe45639b4512e6f138c5 Reviewed-on: https://gerrit.libreoffice.org/11344 Reviewed-by: Németh László Tested-by: Michael Stahl --- editeng/source/misc/svxacorr.cxx | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'editeng') diff --git a/editeng/source/misc/svxacorr.cxx b/editeng/source/misc/svxacorr.cxx index 04e079be92a7..f22cb42d871f 100644 --- a/editeng/source/misc/svxacorr.cxx +++ b/editeng/source/misc/svxacorr.cxx @@ -2833,6 +2833,10 @@ const SvxAutocorrWord* SvxAutocorrWordList::WordMatches(const SvxAutocorrWord *p ; if (bWasWordDelim) nFndPos++; } + if (nEndPos + extra_repl <= nFndPos) + { + return 0; + } // store matching pattern and its replacement as a new list item, eg. "i18ns" -> "internationalizations" OUString aShort = rTxt.copy(nFndPos, nEndPos - nFndPos + extra_repl); -- cgit