d3d8: Handle stateblocks in d3d8_device_SetLight().

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Zebediah Figura 2019-11-13 21:47:49 -06:00 committed by Alexandre Julliard
parent 6e119b6c8a
commit 0117ad6039
1 changed files with 3 additions and 1 deletions

View File

@ -1750,7 +1750,9 @@ static HRESULT WINAPI d3d8_device_SetLight(IDirect3DDevice8 *iface, DWORD index,
/* Note: D3DLIGHT8 is compatible with struct wined3d_light. */ /* Note: D3DLIGHT8 is compatible with struct wined3d_light. */
wined3d_mutex_lock(); wined3d_mutex_lock();
hr = wined3d_device_set_light(device->wined3d_device, index, (const struct wined3d_light *)light); hr = wined3d_stateblock_set_light(device->update_state, index, (const struct wined3d_light *)light);
if (SUCCEEDED(hr) && !device->recording)
hr = wined3d_device_set_light(device->wined3d_device, index, (const struct wined3d_light *)light);
wined3d_mutex_unlock(); wined3d_mutex_unlock();
return hr; return hr;