overte-lubosz/tests
Anthony Thibault 442a679108 Make DepenencyManager thread-safe again
Before this PR, there were no locks around the two internal QHash data structures.
Races are rare, due to the fact that the DependencyManager is initialized on the main thread on startup and the fact that a static QWeakPointer was used as an internal cache.
However, there have been reported crashes where the render thread uses DependencyManager::isSet() perhaps while the main thread is adding a late dependency.
DependencyManager::isSet() did not use the static QWeakPointer cache and was more prone to race conditions.

To avoid this and perhaps other data races, mutexes now guard both of the internal QHash data structures.
Also, as an optimization, the most frequent call to DependencyManager::isSet was removed (Profile.cpp).
2019-05-10 14:12:10 -07:00
..
animation made changes requested 2019-04-25 14:42:41 -07:00
audio
baking
gpu
jitter
ktx
mocha
networking
octree
physics
recording
shaders
shared Make DepenencyManager thread-safe again 2019-05-10 14:12:10 -07:00
workload
CMakeLists.txt