From fdedbaf1036c1170d52d43195d9cc09116bf57a9 Mon Sep 17 00:00:00 2001 From: baldurk Date: Thu, 6 Oct 2016 14:15:37 +0200 Subject: [PATCH] Fix potential crash creating a brush for an empty rect --- .../3rdparty/WinFormsUI/Docking/VS2005DockPaneStrip.cs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/renderdocui/3rdparty/WinFormsUI/Docking/VS2005DockPaneStrip.cs b/renderdocui/3rdparty/WinFormsUI/Docking/VS2005DockPaneStrip.cs index 95e048774..1e05bb692 100644 --- a/renderdocui/3rdparty/WinFormsUI/Docking/VS2005DockPaneStrip.cs +++ b/renderdocui/3rdparty/WinFormsUI/Docking/VS2005DockPaneStrip.cs @@ -1267,7 +1267,8 @@ namespace WeifenLuo.WinFormsUI.Docking Color startColor = DockPane.DockPanel.Skin.DockPaneStripSkin.ToolWindowGradient.ActiveTabGradient.StartColor; Color endColor = DockPane.DockPanel.Skin.DockPaneStripSkin.ToolWindowGradient.ActiveTabGradient.EndColor; LinearGradientMode gradientMode = DockPane.DockPanel.Skin.DockPaneStripSkin.ToolWindowGradient.ActiveTabGradient.LinearGradientMode; - g.FillPath(new LinearGradientBrush(rectTab, startColor, endColor, gradientMode), path); + if(rectTab.Width > 0 || rectTab.Height > 0) + g.FillPath(new LinearGradientBrush(rectTab, startColor, endColor, gradientMode), path); g.DrawPath(PenToolWindowTabBorder, path); Color textColor = DockPane.DockPanel.Skin.DockPaneStripSkin.ToolWindowGradient.ActiveTabGradient.TextColor; @@ -1278,7 +1279,8 @@ namespace WeifenLuo.WinFormsUI.Docking Color startColor = DockPane.DockPanel.Skin.DockPaneStripSkin.ToolWindowGradient.InactiveTabGradient.StartColor; Color endColor = DockPane.DockPanel.Skin.DockPaneStripSkin.ToolWindowGradient.InactiveTabGradient.EndColor; LinearGradientMode gradientMode = DockPane.DockPanel.Skin.DockPaneStripSkin.ToolWindowGradient.InactiveTabGradient.LinearGradientMode; - g.FillPath(new LinearGradientBrush(rectTab, startColor, endColor, gradientMode), path); + if (rectTab.Width > 0 || rectTab.Height > 0) + g.FillPath(new LinearGradientBrush(rectTab, startColor, endColor, gradientMode), path); if (Tabs.IndexOf(DockPane.ActiveContent) != Tabs.IndexOf(tab) + 1) {