Disable BUFFER_EXPORT and BUFFER_EXPORT_AS while buffer is processed

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).
This commit is contained in:
Juergen Spitzmueller 2018-02-11 09:50:38 +01:00
parent 338dc16d76
commit 1437ae3f9c

View 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;