]> git.lyx.org Git - features.git/commitdiff
Disable BUFFER_EXPORT and BUFFER_EXPORT_AS while buffer is processed
authorJuergen Spitzmueller <spitz@lyx.org>
Sun, 11 Feb 2018 08:50:38 +0000 (09:50 +0100)
committerJuergen Spitzmueller <spitz@lyx.org>
Sun, 11 Feb 2018 08:50:38 +0000 (09:50 +0100)
I am rather irritated we didn't do this already, since synchronous runs
with BUFFER_VIEW or BUFFER_UPDATE leads to all sorts of problems,
including crashes.

Fixes the crash in #8338 (but not the bug itself).

src/frontends/qt4/GuiView.cpp

index 6f5441ceee8306af236d948076e6f1c96489462f..cc5a3df44bed449bcc156a68b9790b7036e92a84 100644 (file)
@@ -1913,8 +1913,22 @@ bool GuiView::getStatus(FuncRequest const & cmd, FuncStatus & flag)
                enable = doc_buffer && doc_buffer->notifiesExternalModification();
                break;
 
-       case LFUN_BUFFER_WRITE_AS:
+       case LFUN_BUFFER_EXPORT: {
+               if (!doc_buffer || d.processing_thread_watcher_.isRunning()) {
+                       enable = false;
+                       break;
+               }
+               return doc_buffer->getStatus(cmd, flag);
+               break;
+       }
+
        case LFUN_BUFFER_EXPORT_AS:
+               if (!doc_buffer || d.processing_thread_watcher_.isRunning()) {
+                       enable = false;
+                       break;
+               }
+               // fall through
+       case LFUN_BUFFER_WRITE_AS:
                enable = doc_buffer != 0;
                break;