diff options
author | Rider Linden <rider@lindenlab.com> | 2018-10-02 00:12:47 +0000 |
---|---|---|
committer | Rider Linden <rider@lindenlab.com> | 2018-10-02 00:12:47 +0000 |
commit | c6b4b81bf2ceac0d5152c15ba86af09bb4dca183 (patch) | |
tree | c129cb4009e9990495e4651a5417a14b4e658676 /indra/newview/llvosky.cpp | |
parent | fdfb60ecb10a35efdc378ae507e1c65114a987a3 (diff) | |
parent | b4d6611ea7e5f3dfe01e7c7f7dae9c5b2c2347b8 (diff) |
Merged in graham_linden/viewer-eep-graham (pull request #123)
SL-9775
Diffstat (limited to 'indra/newview/llvosky.cpp')
-rw-r--r-- | indra/newview/llvosky.cpp | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/indra/newview/llvosky.cpp b/indra/newview/llvosky.cpp index c6267d50ff..a42239ec87 100644 --- a/indra/newview/llvosky.cpp +++ b/indra/newview/llvosky.cpp @@ -874,8 +874,22 @@ void LLVOSky::setSunTextures(const LLUUID& sun_texture, const LLUUID& sun_textur { mSunTexturep[0]->setAddressMode(LLTexUnit::TAM_CLAMP); } + + LLViewerTexture* current_tex0 = mFace[FACE_SUN]->getTexture(LLRender::DIFFUSE_MAP); + LLViewerTexture* current_tex1 = mFace[FACE_SUN]->getTexture(LLRender::ALTERNATE_DIFFUSE_MAP); + + if (current_tex0 && (mSunTexturep[0] != current_tex0) && current_tex0->isViewerMediaTexture()) + { + static_cast<LLViewerMediaTexture*>(current_tex0)->removeMediaFromFace(mFace[FACE_SUN]); + } + + if (current_tex1 && (mSunTexturep[1] != current_tex1) && current_tex1->isViewerMediaTexture()) + { + static_cast<LLViewerMediaTexture*>(current_tex1)->removeMediaFromFace(mFace[FACE_SUN]); + } + mFace[FACE_SUN]->setTexture(LLRender::DIFFUSE_MAP, mSunTexturep[0]); - + if (mSunTexturep[1]) { mSunTexturep[1]->setAddressMode(LLTexUnit::TAM_CLAMP); |