IDirectDrawImpl* This = (IDirectDrawImpl*)iface;
ULONG ref=0;
-
+
if (iface!=NULL)
{
- ref = InterlockedIncrement((PLONG)&This->mDDrawGlobal.dwRefCnt);
- }
+ ref = InterlockedIncrement(&This->ref);
+ }
return ref;
}
if (iface!=NULL)
{
- ref = InterlockedDecrement((PLONG)&This->mDDrawGlobal.dwRefCnt);
+ ref = InterlockedDecrement(&This->ref);
+ DX_WINDBG_trace_res((INT)This->mDDrawGlobal.dwRefCnt,(INT)ref,(INT)0);
+
if (ref == 0)
{
// set resoltion back to the one in registry
ChangeDisplaySettings(NULL, 0);
}
-
Hal_DirectDraw_Release(iface);
- //Hel_DirectDraw_Release(iface);
-
- RtlZeroMemory(&This->mDDrawGlobal, sizeof(DDRAWI_DIRECTDRAW_GBL));
- //RtlZeroMemory(This, sizeof(IDirectDrawImpl));
-
+ //Hel_DirectDraw_Release(iface);
if (This!=NULL)
- {
-
- // HeapFree(GetProcessHeap(), 0, This);
+ {
+ HeapFree(GetProcessHeap(), 0, This);
}
}
}