Fix resource leak in wxMSW wxStaticBitmap when using RGBA icons.

Release the old handle if it wasn't freed by STM_SETIMAGE itself.

Closes #16068.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@76141 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2014-03-13 16:19:55 +00:00
parent 3ab8839562
commit 44611572b5
2 changed files with 3 additions and 2 deletions

View File

@@ -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