- Fix error handling in NtGdiPathToRegion

svn path=/trunk/; revision=64190
This commit is contained in:
Jérôme Gardou 2014-09-18 13:27:02 +00:00
parent 631f96a8a3
commit 0d048c3e47

View file

@ -2716,19 +2716,20 @@ NtGdiPathToRegion(HDC hDC)
{ {
PATH_UnlockPath(pPath); PATH_UnlockPath(pPath);
DC_UnlockDc(pDc); DC_UnlockDc(pDc);
return NULL;
} }
hrgnRval = Rgn->BaseObject.hHmgr; hrgnRval = Rgn->BaseObject.hHmgr;
/* FIXME: Should we empty the path even if conversion failed? */ /* FIXME: Should we empty the path even if conversion failed? */
if (PATH_PathToRegion(pPath, pdcattr->jFillMode, Rgn)) if (PATH_PathToRegion(pPath, pdcattr->jFillMode, Rgn))
{ {
PATH_EmptyPath(pPath); PATH_EmptyPath(pPath);
RGNOBJAPI_Unlock(Rgn);
} }
else else
{ {
GreDeleteObject(hrgnRval); REGION_Delete(Rgn);
hrgnRval = NULL; hrgnRval = NULL;
} }
RGNOBJAPI_Unlock(Rgn);
} }
PATH_UnlockPath(pPath); PATH_UnlockPath(pPath);