From cd488b12f06ee89a55b6a43c4a6fdf80babf2333 Mon Sep 17 00:00:00 2001 From: Jerome St-Louis Date: Wed, 7 Aug 2013 10:29:47 -0400 Subject: [PATCH] ecere/gui: Fixed null pointer crashes --- ecere/src/gui/controls/Label.ec | 4 ++-- ecere/src/gui/controls/Menu.ec | 9 ++++++--- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/ecere/src/gui/controls/Label.ec b/ecere/src/gui/controls/Label.ec index 490bd92..cf1ac39 100644 --- a/ecere/src/gui/controls/Label.ec +++ b/ecere/src/gui/controls/Label.ec @@ -142,8 +142,8 @@ private: { int tw = 0; char * caption = labeledWindow.caption; - - surface.TextExtent(caption, strlen(caption), &tw, null); + if(caption) + surface.TextExtent(caption, strlen(caption), &tw, null); GroupBevel(surface, true, 1,7, clientSize.w - 2, clientSize.h - 8, tw); GroupBevel(surface, false, 0,6, clientSize.w, clientSize.h - 6, tw); } diff --git a/ecere/src/gui/controls/Menu.ec b/ecere/src/gui/controls/Menu.ec index 9463854..d8304c2 100644 --- a/ecere/src/gui/controls/Menu.ec +++ b/ecere/src/gui/controls/Menu.ec @@ -179,9 +179,12 @@ public: bitmaps[0] = value; bitmaps[1] = value ? (value.alphaBlend ? value : { fileName = value.fileName, monochrome = true }) : null; bitmaps[2] = value ? { fileName = value.fileName, grayed = true } : null; - incref bitmaps[0]; - incref bitmaps[1]; - incref bitmaps[2]; + if(value) + { + incref bitmaps[0]; + incref bitmaps[1]; + incref bitmaps[2]; + } } get { return bitmaps[0]; } }; -- 1.8.3.1