ecere/gui: Fixed null pointer crashes
authorJerome St-Louis <jerome@ecere.com>
Wed, 7 Aug 2013 14:29:47 +0000 (10:29 -0400)
committerJerome St-Louis <jerome@ecere.com>
Wed, 7 Aug 2013 14:29:47 +0000 (10:29 -0400)
ecere/src/gui/controls/Label.ec
ecere/src/gui/controls/Menu.ec

index 490bd92..cf1ac39 100644 (file)
@@ -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);
          }
index 9463854..d8304c2 100644 (file)
@@ -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]; }
    };