/********************************************************************** * MFDRV_DeleteDC */ static BOOL MFDRV_DeleteDC( PHYSDEV dev ) { METAFILEDRV_PDEVICE *physDev = (METAFILEDRV_PDEVICE *)dev; DWORD index; HeapFree( GetProcessHeap(), 0, physDev->mh ); for(index = 0; index < physDev->handles_size; index++) if(physDev->handles[index]) GDI_hdc_not_using_object(physDev->handles[index], dev->hdc); HeapFree( GetProcessHeap(), 0, physDev->handles ); HeapFree( GetProcessHeap(), 0, physDev ); return TRUE; }
/********************************************************************** * EMFDRV_DeleteDC */ static BOOL EMFDRV_DeleteDC( DC *dc ) { EMFDRV_PDEVICE *physDev = (EMFDRV_PDEVICE *)dc->physDev; UINT index; if (physDev->emh) HeapFree( GetProcessHeap(), 0, physDev->emh ); for(index = 0; index < physDev->handles_size; index++) if(physDev->handles[index]) GDI_hdc_not_using_object(physDev->handles[index], physDev->hdc); HeapFree( GetProcessHeap(), 0, physDev->handles ); HeapFree( GetProcessHeap(), 0, physDev ); dc->physDev = NULL; free_dc_ptr( dc ); return TRUE; }