diff options
| author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2025-04-04 21:49:23 +0300 | 
|---|---|---|
| committer | Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com> | 2025-04-04 22:43:27 +0300 | 
| commit | 2b475ad027285144bbbe46cbfa6db17744acd15b (patch) | |
| tree | cbb4ebadbca7997246d0cabf4494220e2386cc8a /indra | |
| parent | 68f20d542ebbb999d7bebb05c7e4c08ebafdfd89 (diff) | |
#3878 Crash at LLPipeline::unlinkDrawable
assertInitializedDoError() on shutdown
Diffstat (limited to 'indra')
| -rw-r--r-- | indra/newview/lldrawable.cpp | 10 | 
1 files changed, 9 insertions, 1 deletions
| diff --git a/indra/newview/lldrawable.cpp b/indra/newview/lldrawable.cpp index 4921964b35..9d212cfe8b 100644 --- a/indra/newview/lldrawable.cpp +++ b/indra/newview/lldrawable.cpp @@ -253,7 +253,15 @@ void LLDrawable::cleanupReferences()      std::for_each(mFaces.begin(), mFaces.end(), DeletePointer());      mFaces.clear(); -    gPipeline.unlinkDrawable(this); +    if (gPipeline.mInitialized) +    { +        gPipeline.unlinkDrawable(this); +    } +    else if (getSpatialGroup()) +    { +        // Not supposed to happen? +        getSpatialGroup()->getSpatialPartition()->remove(this, getSpatialGroup()); +    }      removeFromOctree(); | 
