From d79c8ea96fad32c212b51dc6985d61337ea94055 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Fri, 17 Sep 2004 22:09:23 +0000 Subject: [PATCH] do not call CopyIcon() in CloneRefData(), HICON is going to be overwritten or invalidated anyhow git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29183 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/msw/icon.cpp | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/src/msw/icon.cpp b/src/msw/icon.cpp index 564a07d875..2fbdb94996 100644 --- a/src/msw/icon.cpp +++ b/src/msw/icon.cpp @@ -109,16 +109,12 @@ wxObjectRefData *wxIcon::CloneRefData(const wxObjectRefData *dataOrig) const if ( !data ) return NULL; - wxIcon *self = wx_const_cast(wxIcon *, this); - self->UnRef(); - self->m_refData = new wxIconRefData(*data); - - if ( data->m_hIcon ) - { - ::CopyIcon(HICON(data->m_hIcon)); - } - - return m_refData; + // we don't have to copy m_hIcon because we're only called from SetHICON() + // which overwrites m_hIcon anyhow currently + // + // and if we're called from SetWidth/Height/Depth(), it doesn't make sense + // to copy it neither as the handle would be inconsistent with the new size + return new wxIconRefData(*data); } void wxIcon::CopyFromBitmap(const wxBitmap& bmp) -- 2.49.0