diff --git a/.hgtags b/.hgtags index de9177630696c02d2fa2f1f544226e771ef8a7ac..c5b40e9b9a27755d8ab760c631b0a6523ac19585 100755 --- a/.hgtags +++ b/.hgtags @@ -305,6 +305,9 @@ b1dbb1a83f48f93f6f878cff9e52d2cb635e145c 3.4.0-beta2 7649a3dff5ec22d3727377e5f02efd0f421e4cb5 DRTVWR-201 84fb70dfe3444e75a44fb4bee43e2fc8221cebdd 3.4.0-beta4 de3be913f68813a9bac7d1c671fef96d1159bcd6 DRTVWR-202 +573e863be2f26d3687161def4b9fea9b7038dda8 3.4.0-beta5 34dbbe2b00afe90352d3acf8290eb10ab90d1c8b oz-build-test-tag 6ee71714935ffcd159db3d4f5800c1929aac54e1 DRTVWR-205 7b22c612fc756e0ea63b10b163e81d107f85dbf8 DRTVWR-206 +8c9085066c78ed5f6c9379dc054c82a6fcdb1851 DRTVWR-207 +351eea5f9dc192fc5ddea3b02958de97677a0a12 3.3.4-release3 diff --git a/indra/newview/llviewerobject.cpp b/indra/newview/llviewerobject.cpp index b2e6dc4571ff59bb975d13b155f524b051d0eca0..444bbb27769e6933d473c8676729d7b48411599e 100644 --- a/indra/newview/llviewerobject.cpp +++ b/indra/newview/llviewerobject.cpp @@ -4080,7 +4080,7 @@ S32 LLViewerObject::setTETextureCore(const U8 te, const LLUUID& uuid, LLHost hos return retval; } - +//virtual void LLViewerObject::changeTEImage(S32 index, LLViewerTexture* new_image) { if(index < 0 || index >= getNumTEs()) diff --git a/indra/newview/llviewerobject.h b/indra/newview/llviewerobject.h index 22e0de681e8e4ba1fbf0866dc77679719f6b06bb..277bd1c430bf04a30cabe9b75505ba2345fd75e8 100644 --- a/indra/newview/llviewerobject.h +++ b/indra/newview/llviewerobject.h @@ -322,7 +322,7 @@ class LLViewerObject : public LLPrimitive, public LLRefCount, public LLGLUpdate /*virtual*/ S32 setTEGlow(const U8 te, const F32 glow); /*virtual*/ BOOL setMaterial(const U8 material); virtual void setTEImage(const U8 te, LLViewerTexture *imagep); // Not derived from LLPrimitive - void changeTEImage(S32 index, LLViewerTexture* new_image) ; + virtual void changeTEImage(S32 index, LLViewerTexture* new_image) ; LLViewerTexture *getTEImage(const U8 te) const; void fitFaceTexture(const U8 face); diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp index 9c36cfee5995ec8e047095ac38b4c17a9c0247df..e99898a83c4a3dab4b62d0b7f7f5be785ac2c04a 100644 --- a/indra/newview/llvovolume.cpp +++ b/indra/newview/llvovolume.cpp @@ -1803,6 +1803,18 @@ void LLVOVolume::setNumTEs(const U8 num_tes) return ; } +//virtual +void LLVOVolume::changeTEImage(S32 index, LLViewerTexture* imagep) +{ + BOOL changed = (mTEImages[index] != imagep); + LLViewerObject::changeTEImage(index, imagep); + if (changed) + { + gPipeline.markTextured(mDrawable); + mFaceMappingChanged = TRUE; + } +} + void LLVOVolume::setTEImage(const U8 te, LLViewerTexture *imagep) { BOOL changed = (mTEImages[te] != imagep); diff --git a/indra/newview/llvovolume.h b/indra/newview/llvovolume.h index 0082f2e9914d22c1fcce046c904491a60adda210..5482c80f2b1ad146a72019f1e00ec64649330e52 100644 --- a/indra/newview/llvovolume.h +++ b/indra/newview/llvovolume.h @@ -173,6 +173,7 @@ class LLVOVolume : public LLViewerObject /*virtual*/ void setScale(const LLVector3 &scale, BOOL damped); + /*virtual*/ void changeTEImage(S32 index, LLViewerTexture* new_image) ; /*virtual*/ void setNumTEs(const U8 num_tes); /*virtual*/ void setTEImage(const U8 te, LLViewerTexture *imagep); /*virtual*/ S32 setTETexture(const U8 te, const LLUUID &uuid);