Signed-off-by: Matteo Bruni mbruni@codeweavers.com --- dlls/wined3d/cs.c | 9 +++++++++ 1 file changed, 9 insertions(+)
diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c index cf7debe4256..6cbc9e2e2a6 100644 --- a/dlls/wined3d/cs.c +++ b/dlls/wined3d/cs.c @@ -3421,6 +3421,15 @@ struct wined3d_cs *wined3d_cs_create(struct wined3d_device *device, if (!(cs->data = heap_alloc(cs->data_size))) goto fail;
+ if (wined3d_settings.cs_multithreaded & WINED3D_CSMT_ENABLE) + { + if (!d3d_info->fences) + { + WARN("Disabling CSMT, adapter doesn't support fences.\n"); + wined3d_settings.cs_multithreaded &= ~WINED3D_CSMT_ENABLE; + } + } + if (wined3d_settings.cs_multithreaded & WINED3D_CSMT_ENABLE && !RtlIsCriticalSectionLockedByThread(NtCurrentTeb()->Peb->LoaderLock)) {