commit c5301a6495b108df5b307da39dad5be65926f76b
Author: Scott Kostyshak <[email protected]>
Date:   Fri Dec 28 10:40:38 2018 -0500

    Fix assertion when checking if change in selection
    
    The check for the iterator being in the same paragraph as the end of
    selection was incorrect, because paragraphs in different cells could
    have the same pit. We now additionally condition on having the same
    idx.
    
    This commit amends d1279875 (and thus 23de5e5e).
    
    For discussion, see:
    
      
https://www.mail-archive.com/search?l=mid&q=a5afd0c01a0eb9a84fd4d050d15eb23016d6f38a.camel%40lyx.org
    
    Thanks to Jürgen.
---
 src/Text3.cpp |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/src/Text3.cpp b/src/Text3.cpp
index 7b8f2f9..8507f74 100644
--- a/src/Text3.cpp
+++ b/src/Text3.cpp
@@ -3233,7 +3233,8 @@ bool Text::getStatus(Cursor & cur, FuncRequest const & 
cmd,
                        for (DocIterator it = cur.selectionBegin(); ; 
it.forwardPar()) {
                                pos_type const beg = it.pos();
                                pos_type end;
-                               bool const in_last_par = (it.pit() == 
cur.selectionEnd().pit());
+                               bool const in_last_par = (it.pit() == 
cur.selectionEnd().pit() &&
+                                                         it.idx() == 
cur.selectionEnd().idx());
                                if (in_last_par)
                                        end = cur.selectionEnd().pos();
                                else

Reply via email to