forked from qt-creator/qt-creator
CompilerExplorer: Fix crash on undo
We need to store the source text document so that when the editor is remove and the user triggers undo/read, the pointer is still valid. Change-Id: I571906db1c4424455172a42d72351cd9ba1e7c03 Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
@@ -209,14 +209,17 @@ SourceEditorWidget::SourceEditorWidget(const std::shared_ptr<SourceSettings> &se
|
||||
|
||||
connect(m_codeEditor, &CodeEditorWidget::gotFocus, this, &SourceEditorWidget::gotFocus);
|
||||
|
||||
TextDocumentPtr document = TextDocumentPtr(new SourceTextDocument(m_sourceSettings, undoStack));
|
||||
auto sourceTextDocument = settings->sourceTextDocument();
|
||||
if (!sourceTextDocument)
|
||||
sourceTextDocument = TextDocumentPtr(new SourceTextDocument(m_sourceSettings, undoStack));
|
||||
settings->setSourceTextDocument(sourceTextDocument);
|
||||
|
||||
connect(document.get(),
|
||||
connect(sourceTextDocument.get(),
|
||||
&SourceTextDocument::changed,
|
||||
this,
|
||||
&SourceEditorWidget::sourceCodeChanged);
|
||||
|
||||
m_codeEditor->setTextDocument(document);
|
||||
m_codeEditor->setTextDocument(sourceTextDocument);
|
||||
m_codeEditor->updateHighlighter();
|
||||
|
||||
auto addCompilerButton = new QToolButton;
|
||||
|
||||
Reference in New Issue
Block a user