diff --git a/indra/llprimitive/llmodelloader.cpp b/indra/llprimitive/llmodelloader.cpp index 5171621007445bdcd06b136dcfa6fd3188991b50..3dd165215475e54eefc16e9b1db70d0560a5f5f0 100644 --- a/indra/llprimitive/llmodelloader.cpp +++ b/indra/llprimitive/llmodelloader.cpp @@ -25,6 +25,8 @@ */ #include "llmodelloader.h" + +#include "llapp.h" #include "llsdserialize.h" #include "lljoint.h" #include "llcallbacklist.h" @@ -363,7 +365,10 @@ bool LLModelLoader::isAlive(LLModelLoader* loader) void LLModelLoader::loadModelCallback() { - mLoadCallback(mScene,mModelList,mLod, mOpaqueData); + if (!LLApp::isExiting()) + { + mLoadCallback(mScene, mModelList, mLod, mOpaqueData); + } while (!isStopped()) { //wait until this thread is stopped before deleting self