From b2627d927f1642bea84b92adfccd9403676e1341 Mon Sep 17 00:00:00 2001 From: Jacek Antonelli Date: Sun, 24 May 2009 02:59:24 -0500 Subject: Second Life viewer sources 1.23.2-RC --- linden/indra/newview/lltexlayer.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'linden/indra/newview/lltexlayer.h') diff --git a/linden/indra/newview/lltexlayer.h b/linden/indra/newview/lltexlayer.h index 18e6d6b..1924d0b 100644 --- a/linden/indra/newview/lltexlayer.h +++ b/linden/indra/newview/lltexlayer.h @@ -534,14 +534,22 @@ public: }; // Used by LLTexLayerSetBuffer for a callback. + +// For DEV-DEV-31590, "Heap corruption and crash after outfit +// changes", added the mLayerSet member. The current +// LLTexLayerSetBuffer can be found by querying mLayerSet->mComposite, +// but we still store the original mLayerSetBuffer here so we can +// detect when an upload is out of date. This prevents a memory +// stomp. See LLTexLayerSetBuffer::onTextureUploadComplete() for usage. class LLBakedUploadData { public: - LLBakedUploadData( LLVOAvatar* avatar, LLTexLayerSetBuffer* layerset_buffer, const LLUUID & id); + LLBakedUploadData( LLVOAvatar* avatar, LLTexLayerSet* layerset, LLTexLayerSetBuffer* layerset_buffer, const LLUUID & id); ~LLBakedUploadData() {} LLUUID mID; LLVOAvatar* mAvatar; // just backlink, don't LLPointer + LLTexLayerSet* mLayerSet; LLTexLayerSetBuffer* mLayerSetBuffer; LLUUID mWearableAssets[WT_COUNT]; U64 mStartTime; // Used to measure time baked texture upload requires -- cgit v1.1