Author: tkreuzer Date: Sat Mar 3 20:00:51 2012 New Revision: 55970
URL: http://svn.reactos.org/svn/reactos?rev=55970&view=rev Log: [WIN32K] - Fix a memory leak in EngUnloadImage - add an ASSERT
Modified: trunk/reactos/subsystems/win32/win32k/eng/ldevobj.c trunk/reactos/subsystems/win32/win32k/eng/pdevobj.c
Modified: trunk/reactos/subsystems/win32/win32k/eng/ldevobj.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/eng... ============================================================================== --- trunk/reactos/subsystems/win32/win32k/eng/ldevobj.c [iso-8859-1] (original) +++ trunk/reactos/subsystems/win32/win32k/eng/ldevobj.c [iso-8859-1] Sat Mar 3 20:00:51 2012 @@ -98,6 +98,7 @@ { /* Make sure we don't have a driver loaded */ ASSERT(pldev && pldev->pGdiDriverInfo == NULL); + ASSERT(pldev->cRefs == 0);
/* Free the memory */ ExFreePoolWithTag(pldev, GDITAG_LDEV); @@ -472,8 +473,9 @@ if (pldev->pldevNext) pldev->pldevNext->pldevPrev = pldev->pldevPrev;
- /* Unload the image */ + /* Unload the image and free the LDEV */ LDEVOBJ_vUnloadImage(pldev); + LDEVOBJ_vFreeLDEV(pldev); }
/* Unlock loader */
Modified: trunk/reactos/subsystems/win32/win32k/eng/pdevobj.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/eng... ============================================================================== --- trunk/reactos/subsystems/win32/win32k/eng/pdevobj.c [iso-8859-1] (original) +++ trunk/reactos/subsystems/win32/win32k/eng/pdevobj.c [iso-8859-1] Sat Mar 3 20:00:51 2012 @@ -190,7 +190,7 @@ { PGRAPHICS_DEVICE pGraphicsDevice; PDEVMODEW pdmCurrent; - INT i; + ULONG i; DWORD dwFields;
pGraphicsDevice = ppdev->pGraphicsDevice;