Stefan Dösinger stefan@codeweavers.com writes:
@@ -2731,9 +2792,13 @@ IDirectDrawImpl_EnumSurfaces(IDirectDraw7 *iface, desc = surf->surface_desc; IDirectDrawSurface7_AddRef(ICOM_INTERFACE(surf, IDirectDrawSurface7)); if(Callback( ICOM_INTERFACE(surf, IDirectDrawSurface7), &desc, Context) != DDENUMRET_OK)
{
DDOBJ_UNLOCK(This); return DD_OK;
}
It don't think you can call an arbitrary callback function with the lock held.