Prevent undefined behaviour with thread_safe_gl enabled.
CreateOffscreenContext already calls ClearCurrent. When it is done twice, the global GL mutex is unlocked a second time, and undefined behavour happens. In this particular case, a deadlock occured; unlocking the already unlocked mutex locked it.
This commit is contained in:
parent
205f64eb8b
commit
a442bb50b4
|
@ -59,7 +59,6 @@ X_STATUS GraphicsSystem::Setup(cpu::Processor* processor,
|
||||||
// It's shared with the display context so that we can resolve framebuffers
|
// It's shared with the display context so that we can resolve framebuffers
|
||||||
// from it.
|
// from it.
|
||||||
processor_context = provider()->CreateOffscreenContext();
|
processor_context = provider()->CreateOffscreenContext();
|
||||||
processor_context->ClearCurrent();
|
|
||||||
});
|
});
|
||||||
if (!processor_context) {
|
if (!processor_context) {
|
||||||
xe::FatalError(
|
xe::FatalError(
|
||||||
|
|
Loading…
Reference in New Issue