From e8cb71a8953a61856e67b3bebc309aa00b00c33a Mon Sep 17 00:00:00 2001 From: baldurk Date: Mon, 1 Aug 2016 22:28:57 +0200 Subject: [PATCH] Add protection for buffer/texture viewer layouts failing to load. --- renderdocui/Windows/BufferViewer.cs | 10 +++++++++- renderdocui/Windows/TextureViewer.cs | 10 +++++++++- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/renderdocui/Windows/BufferViewer.cs b/renderdocui/Windows/BufferViewer.cs index 7ee26dcbf..4d0866d83 100644 --- a/renderdocui/Windows/BufferViewer.cs +++ b/renderdocui/Windows/BufferViewer.cs @@ -2539,7 +2539,15 @@ namespace renderdocui.Windows strm.Flush(); strm.Position = 0; - dockPanel.LoadFromXml(strm, new DeserializeDockContent(GetContentFromPersistString)); + try + { + dockPanel.LoadFromXml(strm, new DeserializeDockContent(GetContentFromPersistString)); + } + catch (System.Exception) + { + // on error, go back to default layout + UI_SetupDocks(MeshView); + } } onloadLayout = ""; diff --git a/renderdocui/Windows/TextureViewer.cs b/renderdocui/Windows/TextureViewer.cs index 575e21e1b..77db5bbd0 100644 --- a/renderdocui/Windows/TextureViewer.cs +++ b/renderdocui/Windows/TextureViewer.cs @@ -613,7 +613,15 @@ namespace renderdocui.Windows strm.Flush(); strm.Position = 0; - dockPanel.LoadFromXml(strm, new DeserializeDockContent(GetContentFromPersistString)); + try + { + dockPanel.LoadFromXml(strm, new DeserializeDockContent(GetContentFromPersistString)); + } + catch (System.Exception) + { + // on error, go back to default layout + UI_SetupDocks(); + } } onloadLayout = "";