Do not free DirectDraw ever, avoids crashing issue on exit with Red Alert, real surface can be freed
This commit is contained in:
parent
c7bda1c01c
commit
b2c1500c70
2 changed files with 2 additions and 3 deletions
2
main.c
2
main.c
|
@ -379,7 +379,7 @@ ULONG __stdcall ddraw_Release(IDirectDrawImpl *This)
|
|||
|
||||
if(This->Ref == 0)
|
||||
{
|
||||
free(This);
|
||||
//free(This);
|
||||
ddraw = NULL;
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -53,13 +53,12 @@ ULONG __stdcall ddraw_surface_Release(IDirectDrawSurfaceImpl *This)
|
|||
}
|
||||
if(This->surface)
|
||||
{
|
||||
//free(This->surface);
|
||||
free(This->surface);
|
||||
}
|
||||
if(This->palette)
|
||||
{
|
||||
IDirectDrawPalette_Release(This->palette);
|
||||
}
|
||||
/* FIXME: crashing on 64bit windows, investigate! */
|
||||
//free(This);
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue