https://bugs.documentfoundation.org/show_bug.cgi?id=171681

Gessel <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
     Ever confirmed|1                           |0
             Status|NEEDINFO                    |UNCONFIRMED

--- Comment #2 from Gessel <[email protected]> ---
WritingTool (v26.7) does not trigger the crash that LanguageTool did: GDB
confirms clean process exit with both documents open under LO 26.2.4.2.

However, the underlying issue in LO's GrammarCheckingIterator::ProcessResult
(gciterator.cxx:426) remains unaddressed. The crash occurs because
ProcessResult calls OUString::subView() at the error position returned by the
proofreader without first validating that position against
nBehindEndOfSentencePosition. LanguageTool was returning nErrorStart values
exceeding the sentence length, but any grammar checker plugin that returns an
out-of-bounds error position will trigger the same unguarded subView call and
crash the process.

A defensive bounds check in ProcessResult — skipping or clamping any error
whose nErrorStart >= nBehindEndOfSentencePosition — would make LO robust
against this class of plugin misbehavior regardless of which grammar checker is
in use.

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to