diff options
author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2020-09-22 22:51:33 +0300 |
---|---|---|
committer | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2020-09-22 22:51:33 +0300 |
commit | 730af5d4888653ce2ccb4bae6dd3919619d58a30 (patch) | |
tree | b9b5f7f7b9bfdca690c317dc8c90a23f0a2dd1bf /indra/newview/llface.h | |
parent | bdedfb3755d54a6b4468a5251c9ddeae2b092d37 (diff) | |
parent | 60ed688026269568a9eef67437dc780f88c92871 (diff) |
Merged master (DRTVWR-503) into DRTVWR-482
Diffstat (limited to 'indra/newview/llface.h')
-rw-r--r-- | indra/newview/llface.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/indra/newview/llface.h b/indra/newview/llface.h index c74d4e3fa8..3611539ff8 100644 --- a/indra/newview/llface.h +++ b/indra/newview/llface.h @@ -52,6 +52,7 @@ class LLDrawInfo; const F32 MIN_ALPHA_SIZE = 1024.f; const F32 MIN_TEX_ANIM_SIZE = 512.f; +const U8 FACE_DO_NOT_BATCH_TEXTURES = 255; class LLFace : public LLTrace::MemTrackableNonVirtual<LLFace, 16> { @@ -279,8 +280,13 @@ private: LLXformMatrix* mXform; LLPointer<LLViewerTexture> mTexture[LLRender::NUM_TEXTURE_CHANNELS]; - - LLPointer<LLDrawable> mDrawablep; + + // mDrawablep is not supposed to be null, don't use LLPointer because + // mDrawablep owns LLFace and LLPointer is a good way to either cause a + // memory leak or a 'delete each other' situation if something deletes + // drawable wrongly. + LLDrawable* mDrawablep; + // LLViewerObject technically owns drawable, but also it should be strictly managed LLPointer<LLViewerObject> mVObjp; S32 mTEOffset; |