]> git.lyx.org Git - lyx.git/blobdiff - src/BufferView.cpp
Routines for calculating numerical labels for BibTeX citations.
[lyx.git] / src / BufferView.cpp
index bf2d220b56ff45b4de6049a13a1311757e653b53..2a00deff7d07aafb67d8d4e1eb812c51182db60f 100644 (file)
@@ -1744,9 +1744,10 @@ bool BufferView::dispatch(FuncRequest const & cmd)
                FuncRequest const fr = lyxaction.lookupFunc(commandstr);
 
                // an arbitrary number to limit number of iterations
-               const int max_iter = 1000;
+               const int max_iter = 10000;
                int iterations = 0;
                Cursor & cur = d->cursor_;
+               Cursor const savecur = cur;
                cur.reset();
                if (!cur.nextInset())
                        cur.forwardInset();
@@ -1771,7 +1772,8 @@ bool BufferView::dispatch(FuncRequest const & cmd)
                        cur.forwardInset();
                }
                cur.endUndoGroup();
-               cur.reset();
+               cur = savecur;
+               cur.fixIfBroken();
                processUpdateFlags(Update::Force);
 
                if (iterations >= max_iter)