mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-22 21:21:32 +00:00
Do not show master's errors if compiling child
If a master document is compiled and has errors, and then a child is compiled without error, the errors from the master compilation were shown. The setup of the relevant code is the following: processingThreadFinished() calls errors(). errors() makes the assumption that if it is called, there must have been an error somewhere. The logic of the setup is the following: processingThreadFinished() knows whether there was an error on the most recent preview/export, although it doesn't know whether the error is from master or child (i.e. does not know whether the user was compiling the child, or whether master-buffer-view was called). Inside error(), if there is no error in the child, it is assumed the error is from master. For the above logic to work, errors() should only be called if there was an error. This commit fixes #11106 and preserves the fix to #7330.
This commit is contained in:
parent
2ecc3b09c6
commit
8d2b121ef5
@ -725,8 +725,11 @@ void GuiView::processingThreadFinished()
|
|||||||
errors("Export");
|
errors("Export");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (status != Buffer::ExportSuccess && status != Buffer::PreviewSuccess &&
|
||||||
|
status != Buffer::ExportCancel) {
|
||||||
errors(d.last_export_format);
|
errors(d.last_export_format);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void GuiView::autoSaveThreadFinished()
|
void GuiView::autoSaveThreadFinished()
|
||||||
|
@ -166,6 +166,9 @@ public:
|
|||||||
/// \name GuiBufferDelegate.
|
/// \name GuiBufferDelegate.
|
||||||
//@{
|
//@{
|
||||||
void resetAutosaveTimers();
|
void resetAutosaveTimers();
|
||||||
|
// shows an error list (possibly master's)
|
||||||
|
// even if from_master is false, might show master's error list.
|
||||||
|
// this function should only be called if there was an error (#11106).
|
||||||
void errors(std::string const &, bool from_master = false);
|
void errors(std::string const &, bool from_master = false);
|
||||||
void structureChanged();
|
void structureChanged();
|
||||||
void updateTocItem(std::string const &, DocIterator const &);
|
void updateTocItem(std::string const &, DocIterator const &);
|
||||||
|
Loading…
Reference in New Issue
Block a user