mirror of
https://github.com/reactos/reactos.git
synced 2025-02-25 09:50:02 +00:00
NtGdiDdCreateDirectDrawObject
- add missing error checking for GDIOBJ_AllocObj - add missing error checking for GDIOBJ_LockObj svn path=/trunk/; revision=18280
This commit is contained in:
parent
b6c5bedb31
commit
c82718f9a2
1 changed files with 14 additions and 2 deletions
|
@ -50,9 +50,7 @@ HANDLE STDCALL NtGdiDdCreateDirectDrawObject(
|
|||
DC_UnlockDc(pDC);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
|
||||
BOOL success = pDC->DriverFunctions.EnableDirectDraw(
|
||||
pDC->PDev, &callbacks, &surface_callbacks, &palette_callbacks);
|
||||
|
||||
|
@ -64,7 +62,21 @@ HANDLE STDCALL NtGdiDdCreateDirectDrawObject(
|
|||
}
|
||||
|
||||
HANDLE hDirectDraw = GDIOBJ_AllocObj(GDI_OBJECT_TYPE_DIRECTDRAW);
|
||||
if (!hDirectDraw)
|
||||
{
|
||||
/* No more memmory */
|
||||
DC_UnlockDc(pDC);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
PDD_DIRECTDRAW pDirectDraw = GDIOBJ_LockObj(hDirectDraw, GDI_OBJECT_TYPE_DIRECTDRAW);
|
||||
if (!pDirectDraw)
|
||||
{
|
||||
/* invalid handle */
|
||||
DC_UnlockDc(pDC);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
pDirectDraw->Global.dhpdev = pDC->PDev;
|
||||
pDirectDraw->Local.lpGbl = &pDirectDraw->Global;
|
||||
|
|
Loading…
Reference in a new issue