https://git.reactos.org/?p=reactos.git;a=commitdiff;h=21a168e574f8a64a2c47d5392a728ae934314195
commit 21a168e574f8a64a2c47d5392a728ae934314195 Author: Ratin Gao <[email protected]> AuthorDate: Mon Jan 23 01:38:16 2023 +0800 Commit: GitHub <[email protected]> CommitDate: Sun Jan 22 20:38:16 2023 +0300 [ATL] CImage::Load(): Return E_FAIL without ATLASSERT on failure (#4993) Application won't be interrupted by ATLASSERT when image load failure happens, just like it was done in MS ATL. CORE-18589 --- sdk/lib/atl/atlimage.h | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/sdk/lib/atl/atlimage.h b/sdk/lib/atl/atlimage.h index f124c9a1483..f84d8cb5919 100644 --- a/sdk/lib/atl/atlimage.h +++ b/sdk/lib/atl/atlimage.h @@ -382,8 +382,10 @@ public: // create a GpBitmap object from file using namespace Gdiplus; GpBitmap *pBitmap = NULL; - GetCommon().CreateBitmapFromFile(pszNameW, &pBitmap); - ATLASSERT(pBitmap); + if (GetCommon().CreateBitmapFromFile(pszNameW, &pBitmap) != Ok) + { + return E_FAIL; + } // TODO & FIXME: get parameters (m_rgbTransColor etc.) @@ -407,8 +409,10 @@ public: // create GpBitmap from stream using namespace Gdiplus; GpBitmap *pBitmap = NULL; - GetCommon().CreateBitmapFromStream(pStream, &pBitmap); - ATLASSERT(pBitmap); + if (GetCommon().CreateBitmapFromStream(pStream, &pBitmap) != Ok) + { + return E_FAIL; + } // TODO & FIXME: get parameters (m_rgbTransColor etc.)
