mirror of
https://github.com/FunkyFr3sh/cnc-ddraw.git
synced 2025-03-24 17:49:52 +01:00
redraw when primary palette changed
This commit is contained in:
parent
4138dea0db
commit
f96fd40607
@ -1084,9 +1084,22 @@ HRESULT dds_SetPalette(IDirectDrawSurfaceImpl *This, LPDIRECTDRAWPALETTE lpDDPal
|
|||||||
if (This->palette)
|
if (This->palette)
|
||||||
IDirectDrawPalette_Release(This->palette);
|
IDirectDrawPalette_Release(This->palette);
|
||||||
|
|
||||||
EnterCriticalSection(&g_ddraw->cs);
|
if (This->caps & DDSCAPS_PRIMARYSURFACE)
|
||||||
This->palette = (IDirectDrawPaletteImpl*)lpDDPalette;
|
{
|
||||||
LeaveCriticalSection(&g_ddraw->cs);
|
EnterCriticalSection(&g_ddraw->cs);
|
||||||
|
This->palette = (IDirectDrawPaletteImpl*)lpDDPalette;
|
||||||
|
LeaveCriticalSection(&g_ddraw->cs);
|
||||||
|
|
||||||
|
if (g_ddraw->render.run)
|
||||||
|
{
|
||||||
|
InterlockedExchange(&g_ddraw->render.palette_updated, TRUE);
|
||||||
|
ReleaseSemaphore(g_ddraw->render.sem, 1, NULL);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
This->palette = (IDirectDrawPaletteImpl*)lpDDPalette;
|
||||||
|
}
|
||||||
|
|
||||||
return DD_OK;
|
return DD_OK;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user