diff --git a/src/msw/artmsw.cpp b/src/msw/artmsw.cpp index 9d8935f49c..cb5a31884b 100644 --- a/src/msw/artmsw.cpp +++ b/src/msw/artmsw.cpp @@ -197,7 +197,20 @@ wxBitmap wxWindowsArtProvider::CreateBitmap(const wxArtID& id, ::DestroyIcon(sii.hIcon); if ( bitmap.IsOk() ) + { + const wxSize + sizeNeeded = size.IsFullySpecified() + ? size + : wxArtProvider::GetNativeSizeHint(client); + + if ( sizeNeeded.IsFullySpecified() && + bitmap.GetSize() != sizeNeeded ) + { + wxArtProvider::RescaleBitmap(bitmap, sizeNeeded); + } + return bitmap; + } } } #endif // wxHAS_SHGetStockIconInfo