diff --git a/docs/changes.txt b/docs/changes.txt index 6e358363d8..6cfa969ff0 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -643,6 +643,7 @@ wxMSW: - Fix width of the vertical toolbars (Artur Wieczorek). - Fix handling of controls in the vertical toolbars (Artur Wieczorek). - Fix loading of top to bottom BMP files in wxBitmap (Artur Wieczorek). +- Fix resource leak in wxStaticBitmap with RGBA icons (Artur Wieczorek). wxOSX: diff --git a/src/msw/statbmp.cpp b/src/msw/statbmp.cpp index 77e8df1aff..7296920f7b 100644 --- a/src/msw/statbmp.cpp +++ b/src/msw/statbmp.cpp @@ -294,10 +294,10 @@ void wxStaticBitmap::SetImageNoCopy( wxGDIImage* image) m_isIcon ? IMAGE_ICON : IMAGE_BITMAP, (LPARAM)handle); // detect if this is still the handle we passed before or // if the static-control made a copy of the bitmap! - if (m_currentHandle != 0 && oldHandle != (HGDIOBJ) m_currentHandle) + if (oldHandle != 0 && oldHandle != (HGDIOBJ) m_currentHandle) { // the static control made a copy and we are responsible for deleting it - DeleteObject((HGDIOBJ) oldHandle); + ::DeleteObject((HGDIOBJ) oldHandle); } // Save bitmap handle only if it's not a temporary one, otherwise it's