diff options
author | Xiaohong Bao <bao@lindenlab.com> | 2011-05-18 11:46:55 -0600 |
---|---|---|
committer | Xiaohong Bao <bao@lindenlab.com> | 2011-05-18 11:46:55 -0600 |
commit | ce554304fbc21e8a52b236a56eea70287f002fdd (patch) | |
tree | 7d128240375feb59caf44d2cb5f9f812bb9b2af9 /indra/llmessage | |
parent | 79459bc9ba8cefa67091e65dd676f50c9ddc612d (diff) |
fix for SH-1591: crash at LLVOCacheEntry::~LLVOCacheEntry() line 138
Diffstat (limited to 'indra/llmessage')
-rw-r--r-- | indra/llmessage/lldatapacker.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/indra/llmessage/lldatapacker.h b/indra/llmessage/lldatapacker.h index dd9c4eaa38..b0a638c16e 100644 --- a/indra/llmessage/lldatapacker.h +++ b/indra/llmessage/lldatapacker.h @@ -168,10 +168,15 @@ public: S32 getCurrentSize() const { return (S32)(mCurBufferp - mBufferp); } S32 getBufferSize() const { return mBufferSize; } + const U8* getBuffer() const { return mBufferp; } void reset() { mCurBufferp = mBufferp; mWriteEnabled = (mCurBufferp != NULL); } void freeBuffer() { delete [] mBufferp; mBufferp = mCurBufferp = NULL; mBufferSize = 0; mWriteEnabled = FALSE; } void assignBuffer(U8 *bufferp, S32 size) { + if(mBufferp && mBufferp != bufferp) + { + freeBuffer() ; + } mBufferp = bufferp; mCurBufferp = bufferp; mBufferSize = size; |