From 8c93750b00ab5d006c74cc44c76783c9fa2e3225 Mon Sep 17 00:00:00 2001 From: baldurk Date: Mon, 9 Jul 2018 15:18:24 +0100 Subject: [PATCH] Fix crash if texture tabs were open when restoring state. --- qrenderdoc/Windows/TextureViewer.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/qrenderdoc/Windows/TextureViewer.cpp b/qrenderdoc/Windows/TextureViewer.cpp index e6f58f671..5ec63b933 100644 --- a/qrenderdoc/Windows/TextureViewer.cpp +++ b/qrenderdoc/Windows/TextureViewer.cpp @@ -1649,6 +1649,9 @@ void TextureViewer::textureTab_Changed(int index) { ToolWindowManagerArea *textureTabs = ui->dockarea->areaOf(ui->renderContainer); + if(!textureTabs) + return; + QWidget *w = textureTabs->widget(index); if(w) @@ -2804,6 +2807,12 @@ void TextureViewer::setPersistData(const QVariant &persistData) m_TexDisplay.backgroundColor = checker ? FloatVector() : FloatVector(backCol.redF(), backCol.greenF(), backCol.blueF(), 1.0f); + ToolWindowManagerArea *textureTabs = ui->dockarea->areaOf(ui->renderContainer); + while(textureTabs->count() > 1) + textureTabs->removeTab(1); + + m_LockedTabs.clear(); + updateBackgroundColors(); ui->dockarea->restoreState(state);