forked from qt-creator/qt-creator
Clang: Fix recovering on clangbackend crash
The translation unit was updated, but not re-registered.
Handle the editor documents this way:
1. Reset all ClangEditorDocumentProcessors (this will send an
unregister message, but that's not problematic).
2. For the visible editor documents, run their processors so that the
translation units will be re-registered.
3. For the invisible editor documents, mark them dirty. Once the user
makes an invisible document visible again, the processor will run
and also re-register the translation unit.
Change-Id: I23693ac197bd34a183f3a0020eb5372268636599
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
This commit is contained in:
@@ -169,7 +169,9 @@ private:
|
||||
void initializeBackend();
|
||||
void initializeBackendWithCurrentData();
|
||||
void registerCurrentProjectParts();
|
||||
void registerCurrentCppEditorDocuments();
|
||||
void restoreCppEditorDocuments();
|
||||
void resetCppEditorDocumentProcessors();
|
||||
void registerVisibleCppEditorDocumentAndMarkInvisibleDirty();
|
||||
void registerCurrentCodeModelUiHeaders();
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user