glslang-zig/glslang
Niklas Haas 4302d51868 Don't release global mutex before initialize/finalize is done
Otherwise this can race with other threads for access to the fields it's
supposed to be initializing/finalizing.

For example, imagine another thread is calling ShInitialize() while the
first thread is calling ShFinalize() - the finalize function would
destroy the state at the same time as the initialize function is trying
to initialize it.

Holding on to the global lock for the entire function prevents all of
these failure modes.
2021-11-08 15:00:28 +01:00
..
CInterface GLSLANG_EXPORT for C APIs. 2020-08-10 22:26:41 +02:00
ExtensionHeaders GL_EXT_spirv_intrinsics - Port extensions 2021-10-15 14:13:08 -04:00
GenericCodeGen Non-functional: White space after "//", mostly for copyrights. 2017-01-06 12:34:14 -07:00
HLSL Fix SPIR-V for SampleBias 2021-09-17 17:22:39 -06:00
Include Return new allocator for copied containers 2021-10-25 10:59:27 -06:00
MachineIndependent Don't release global mutex before initialize/finalize is done 2021-11-08 15:00:28 +01:00
OSDependent Initialize global mutex in a thread-safe manner 2021-11-08 14:47:32 +01:00
Public Dont export inline TObjectReflection::getType() 2021-05-08 10:37:37 +02:00
CMakeLists.txt cmake: Remove "conditions" from endif 2021-09-30 11:00:09 -06:00
updateGrammar Revert "Merge pull request #2330 from ShabbyX/optimize_for_angle" 2020-07-13 03:39:08 -06:00