]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/generic/icon.h
fixing overrelease and out-of-bounds write, fixes #13725
[wxWidgets.git] / include / wx / generic / icon.h
index b73d919c9c071e8882425825026c247f84886a5f..3a1f5072acd160792bd4029dee145fa42bf1cbf9 100644 (file)
 // wxIcon
 //-----------------------------------------------------------------------------
 
-#ifndef wxICON_DEFAULT_BITMAP_TYPE
-#define wxICON_DEFAULT_BITMAP_TYPE wxBITMAP_TYPE_XPM
-#endif
-
 class WXDLLIMPEXP_CORE wxIcon: public wxBitmap
 {
 public:
@@ -35,7 +31,7 @@ public:
     // For compatibility with wxMSW where desired size is sometimes required to
     // distinguish between multiple icons in a resource.
     wxIcon( const wxString& filename,
-            wxBitmapType type = wxICON_DEFAULT_BITMAP_TYPE,
+            wxBitmapType type = wxICON_DEFAULT_TYPE,
             int WXUNUSED(desiredWidth)=-1, int WXUNUSED(desiredHeight)=-1 ) :
         wxBitmap(filename, type)
     {
@@ -46,6 +42,15 @@ public:
     {
     }
 
+    bool LoadFile(const wxString& name, wxBitmapType flags,
+                  int WXUNUSED(desiredWidth), int WXUNUSED(desiredHeight))
+        { return wxBitmap::LoadFile(name, flags); }
+
+    // unhide the base class version
+    virtual bool LoadFile(const wxString& name,
+                          wxBitmapType flags = wxICON_DEFAULT_TYPE)
+        { return wxBitmap::LoadFile(name, flags); }
+
     // create from bitmap (which should have a mask unless it's monochrome):
     // there shouldn't be any implicit bitmap -> icon conversion (i.e. no
     // ctors, assignment operators...), but it's ok to have such function