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-07 21:13:48 +0300 |
commit | 40acaafd9c5b224a6e684db3b09f3360e92ed34e (patch) | |
tree | 380ba4f6a1919153853516b86eeadccf177682c3 /indra | |
parent | 3d7de1b39ba23a308900a677b3a368184f5f59a0 (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(); |