overte-HifiExperiments/libraries/baking/src
Anthony Thibault 6c66f5a37b Fix for DependencyManager crash on shutdown on Mac
On Mac, it is possible to crash when shutting down, it is not clear if this is due to
shutting down the app on another thread during logout or something that can happen
during normal shutdown, because it is so difficult to reproduce.

However, from looking at the stack traces it is possible for a [NSApplication terminate:]
event to get processed while Appliction::aboutToQuit() is calling ScriptEngine::waitTillDoneRunning()
This causes AppKit to invoke the static destructors too early.  Which in turn, causes the
DependencyManager destructor to fire while there are still many dependencies running.
Unfortunatly, the order of destruction is not determinstic, causing them to get shutdown
in an incorrect order.

To workaround this, we delay the call to QCoreApplication::processEvents() as late as possible,
in the Application destructor. Theoretically, this will be a safe time for the static destructors
to be invoked, because it is after all of the DependencyManager's dependencies have been
manually destroyed.

However, this is only a speculative fix, because this is so difficult to reproduce.
2019-07-01 17:37:57 -07:00
..
baking Merge pull request #15319 from SamGondelman/materialBaker 2019-04-05 17:08:22 -07:00
Baker.cpp
Baker.h Add FSTBaker, and make ModelBaker output an FST 2019-03-12 15:34:57 -07:00
FBXBaker.cpp really fix texture baking, and turn off irradiance generation during baking 2019-04-23 16:01:31 -07:00
FBXBaker.h really fix texture baking, and turn off irradiance generation during baking 2019-04-23 16:01:31 -07:00
JSBaker.cpp Bypass signals in JSBaker/MaterialBaker when resource is already loaded 2019-03-18 16:49:09 -07:00
JSBaker.h enable js baking from non-local file 2019-03-06 15:34:10 -08:00
JSBakingLoggingCategory.cpp
JSBakingLoggingCategory.h
MaterialBaker.cpp Fix for DependencyManager crash on shutdown on Mac 2019-07-01 17:37:57 -07:00
MaterialBaker.h Merge remote-tracking branch 'upstream/master' into textureUsage 2019-04-25 15:05:27 -07:00
MaterialBakingLoggingCategory.cpp working on material baker 2019-03-06 15:34:11 -08:00
MaterialBakingLoggingCategory.h working on material baker 2019-03-06 15:34:11 -08:00
ModelBaker.cpp bake existing materialMap 2019-04-19 13:01:47 -07:00
ModelBaker.h bake existing materialMap 2019-04-19 13:01:47 -07:00
ModelBakingLoggingCategory.cpp
ModelBakingLoggingCategory.h
OBJBaker.cpp remove all existing material parsing 2019-03-26 17:16:13 -07:00
OBJBaker.h really fix texture baking, and turn off irradiance generation during baking 2019-04-23 16:01:31 -07:00
TextureBaker.cpp really fix texture baking, and turn off irradiance generation during baking 2019-04-23 16:01:31 -07:00
TextureBaker.h really fix texture baking, and turn off irradiance generation during baking 2019-04-23 16:01:31 -07:00