
CreateCompatibleBitmap causes resource leak
BoundCheck detected CreateCompatibleBitmap function caused resource
leak, please help! Thanks
void A::Update(*****)
{
CPaintDC dc(this);
CBitmap aBitmap;
CBitmap aSizedBitmap;
Resize(&dc, aBitmap, aSizedBitmap);
aSizedBitmap.Detach();
aSizedBitmap.DeleteObject();
aBitmap.Detach();
Quote:
}
void A::Resize(CDC* pDC, CBitmap& SrcBitmap, CBitmap& DestBitmap)
{
CDC dcMemSrc, dcMemDest;
dcMemSrc.CreateCompatibleDC (pDC);
dcMemDest.CreateCompatibleDC (pDC);
CBitmap* pOldSrcBitmap = dcMemSrc.SelectObject (&SrcBitmap);
dcMemSrc.SetMapMode (pDC->GetMapMode ());
DestBitmap.CreateCompatibleBitmap(pDC, sizeDest.x, sizeDest.y);
CBitmap* pOldDestBitmap = dcMemDest.SelectObject (&DestBitmap);
dcMemDest.SetMapMode (pDC->GetMapMode ());
dcMemDest.StretchBlt(org.x,org.y, sizeDest.x, sizeDest.y,
&dcMemSrc, org.x,org.y, size.x, size.y, SRCCOPY);
dcMemDest.SelectObject (pOldDestBitmap);
dcMemSrc.SelectObject (pOldSrcBitmap);
dcMemSrc.DeleteDC();
dcMemDest.DeleteDC();
Quote:
}