diff options
author | Christian Goetze <cg@lindenlab.com> | 2009-07-01 00:22:05 +0000 |
---|---|---|
committer | Christian Goetze <cg@lindenlab.com> | 2009-07-01 00:22:05 +0000 |
commit | e588d1f28419745ee1e1ee98dc1852e0364a4088 (patch) | |
tree | 8a3546576e0d5a8f0cf32cca68d0913f1061d523 /indra/llprimitive | |
parent | 5f4c09fa1f4b09126e1a16e78044c64e97828530 (diff) |
svn merge -r125825:125901 svn+ssh://svn.lindenlab.com/svn/user/cg/qar-1654
QAR-1654 merge completed.
Diffstat (limited to 'indra/llprimitive')
-rw-r--r-- | indra/llprimitive/llprimtexturelist.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/indra/llprimitive/llprimtexturelist.cpp b/indra/llprimitive/llprimtexturelist.cpp index c9632ebdad..c1dde32993 100644 --- a/indra/llprimitive/llprimtexturelist.cpp +++ b/indra/llprimitive/llprimtexturelist.cpp @@ -386,8 +386,18 @@ void LLPrimTextureList::setSize(S32 new_size) mEntryList.resize(new_size); for (S32 index = current_size; index < new_size; ++index) { - LLTextureEntry* new_entry = LLPrimTextureList::newTextureEntry(); - mEntryList[index] = new_entry; + if (current_size > 0 + && mEntryList[current_size - 1]) + { + // copy the last valid entry for the new one + mEntryList[index] = mEntryList[current_size - 1]->newCopy(); + } + else + { + // no valid enries to copy, so we new one up + LLTextureEntry* new_entry = LLPrimTextureList::newTextureEntry(); + mEntryList[index] = new_entry; + } } } else if (new_size < current_size) |