]> git.lyx.org Git - features.git/commitdiff
Unify handling in dispatchVC.
authorPavel Sanda <sanda@lyx.org>
Sat, 15 Feb 2020 19:55:14 +0000 (20:55 +0100)
committerJean-Marc Lasgouttes <lasgouttes@lyx.org>
Thu, 18 Jun 2020 13:48:52 +0000 (15:48 +0200)
All these check could be actually dropped, because unless dispatchVC
is called directly, getstatus would already handle it.

src/frontends/qt/GuiView.cpp

index eec1b7ae6eeed1081b8f666e8dc435e25070fa58..29f97e72a112e6fda2ba09a0ef13746f39fd627d 100644 (file)
@@ -3518,8 +3518,7 @@ void GuiView::dispatchVC(FuncRequest const & cmd, DispatchResult & dr)
                break;
 
        case LFUN_VC_LOCKING_TOGGLE:
-               LASSERT(buffer, return);
-               if (!ensureBufferClean(buffer) || buffer->hasReadonlyFlag())
+               if (!buffer || !ensureBufferClean(buffer) || buffer->hasReadonlyFlag())
                        break;
                if (buffer->lyxvc().inUse()) {
                        string res = buffer->lyxvc().lockingToggle();
@@ -3534,7 +3533,8 @@ void GuiView::dispatchVC(FuncRequest const & cmd, DispatchResult & dr)
                break;
 
        case LFUN_VC_REVERT:
-               LASSERT(buffer, return);
+               if (!buffer)
+                       break;
                if (buffer->lyxvc().revert()) {
                        reloadBuffer(*buffer);
                        dr.clearMessageUpdate();
@@ -3542,6 +3542,8 @@ void GuiView::dispatchVC(FuncRequest const & cmd, DispatchResult & dr)
                break;
 
        case LFUN_VC_UNDO_LAST:
+               if (!buffer)
+                       break;
                LASSERT(buffer, return);
                buffer->lyxvc().undoLast();
                reloadBuffer(*buffer);
@@ -3549,7 +3551,8 @@ void GuiView::dispatchVC(FuncRequest const & cmd, DispatchResult & dr)
                break;
 
        case LFUN_VC_REPO_UPDATE:
-               LASSERT(buffer, return);
+               if (!buffer)
+                       break;
                if (ensureBufferClean(buffer)) {
                        dr.setMessage(buffer->lyxvc().repoUpdate());
                        checkExternallyModifiedBuffers();
@@ -3603,10 +3606,11 @@ void GuiView::dispatchVC(FuncRequest const & cmd, DispatchResult & dr)
                        lyx::dispatch(FuncRequest(LFUN_DIALOG_SHOW, "comparehistory"));
                        break;
                }
+               if (!buffer)
+                       break;
 
                string rev1 = cmd.getArg(0);
                string f1, f2;
-               LATTEST(buffer)
 
                // f1
                if (!buffer->lyxvc().prepareFileRevision(rev1, f1))