From: Juergen Spitzmueller Date: Sat, 22 Mar 2014 11:09:18 +0000 (+0100) Subject: Fix assertion when ChkTeX hit math. X-Git-Tag: 2.1.1~90^2~16 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=1cc81b1c9cfc6eff58275faab4dde2f454d6f774;p=features.git Fix assertion when ChkTeX hit math. The problem here was that we used texted-only methods (via paragraph()), which triggered the assertion as soon as we were inside math. Fixes: #8798 --- diff --git a/src/BufferView.cpp b/src/BufferView.cpp index 1398a110d5..25ebde3f7e 100644 --- a/src/BufferView.cpp +++ b/src/BufferView.cpp @@ -62,6 +62,8 @@ #include "insets/InsetRef.h" #include "insets/InsetText.h" +#include "mathed/MathData.h" + #include "frontends/alert.h" #include "frontends/Application.h" #include "frontends/Delegates.h" @@ -2498,7 +2500,8 @@ void BufferView::putSelectionAt(DocIterator const & cur, bool BufferView::selectIfEmpty(DocIterator & cur) { - if (!cur.paragraph().empty()) + if ((cur.inTexted() && !cur.paragraph().empty()) + || cur.inMathed() && !cur.cell().empty()) return false; pit_type const beg_pit = cur.pit(); diff --git a/src/frontends/qt4/GuiErrorList.cpp b/src/frontends/qt4/GuiErrorList.cpp index 9924d649a1..1ab919880f 100644 --- a/src/frontends/qt4/GuiErrorList.cpp +++ b/src/frontends/qt4/GuiErrorList.cpp @@ -188,7 +188,7 @@ bool GuiErrorList::goTo(int item) return false; } // if pos_end is 0, this means it is end-of-paragraph - pos_type const s = dit.paragraph().size(); + pos_type const s = dit.lastpos(); pos_type const end = err.pos_end ? min(err.pos_end, s) : s; pos_type const start = min(err.pos_start, end); pos_type const range = end == start ? s - start : end - start;