Foundation classes - Leak of WinAPI resources. (#625)

- Replaces raw IWICBitmapFlipRotator pointer with Image_ComPtr smart pointer wrapper
- Updates pointer access patterns to use smart pointer methods (.ChangePtr() and .get())
- Maintains existing functionality while improving resource management
This commit is contained in:
Dmitrii Kulikov
2025-07-18 16:58:59 +01:00
committed by GitHub
parent 0322620c85
commit 45f4afb8c7

View File

@@ -922,13 +922,13 @@ bool Image_AlienPixMap::Load(const Standard_Byte* theData,
aWicSrc = aWicConvertedFrame.get();
}
IWICBitmapFlipRotator* aRotator;
bool isTopDown = true;
if (aWicImgFactory->CreateBitmapFlipRotator(&aRotator) == S_OK
Image_ComPtr<IWICBitmapFlipRotator> aRotator;
bool isTopDown = true;
if (aWicImgFactory->CreateBitmapFlipRotator(&aRotator.ChangePtr()) == S_OK
&& aRotator->Initialize(aWicSrc, WICBitmapTransformFlipVertical) == S_OK)
{
isTopDown = false;
aWicSrc = aRotator;
aWicSrc = aRotator.get();
}
if (aWicSrc->CopyPixels(NULL, (UINT)SizeRowBytes(), (UINT)SizeBytes(), ChangeData()) != S_OK)