diff --git a/indra/newview/lldrawpoolwater.cpp b/indra/newview/lldrawpoolwater.cpp
index 7f1601e604d39409aa0a939caa79a32454066b00..4dd0d3ec98efe558e931296f411fce8c75646879 100644
--- a/indra/newview/lldrawpoolwater.cpp
+++ b/indra/newview/lldrawpoolwater.cpp
@@ -76,10 +76,10 @@ void LLDrawPoolWater::setTransparentTextures(const LLUUID& transparentTextureId,
     mWaterImagep[1]->addTextureStats(1024.f*1024.f);
 }
 
-void LLDrawPoolWater::setOpaqueTexture()
+void LLDrawPoolWater::setOpaqueTexture(const LLUUID& opaqueTextureId)
 {
     LLSettingsWater::ptr_t pwater = LLEnvironment::instance().getCurrentWater();
-    mOpaqueWaterImagep = LLViewerTextureManager::getFetchedTexture(pwater->GetDefaultOpaqueTextureAssetId());
+    mOpaqueWaterImagep = LLViewerTextureManager::getFetchedTexture(opaqueTextureId);
     mOpaqueWaterImagep->addTextureStats(1024.f*1024.f);
 }
 
diff --git a/indra/newview/lldrawpoolwater.h b/indra/newview/lldrawpoolwater.h
index 3c1587885e52b9ce0eccf5598398560d21442394..f14ac1f6d24f7e906291662e5d260d5902afd889 100644
--- a/indra/newview/lldrawpoolwater.h
+++ b/indra/newview/lldrawpoolwater.h
@@ -83,7 +83,7 @@ class LLDrawPoolWater: public LLFacePool
 	void shade();
 
     void setTransparentTextures(const LLUUID& transparentTextureId, const LLUUID& nextTransparentTextureId);
-    void setOpaqueTexture();
+    void setOpaqueTexture(const LLUUID& opaqueTextureId);
     void setNormalMaps(const LLUUID& normalMapId, const LLUUID& nextNormalMapId);
 
 protected:
diff --git a/indra/newview/llsettingsvo.cpp b/indra/newview/llsettingsvo.cpp
index b16ba65c010173cb73c9ebb7a1e044e4abc8a2c4..583adcb0247ec5216734831a509eda318acea39f 100644
--- a/indra/newview/llsettingsvo.cpp
+++ b/indra/newview/llsettingsvo.cpp
@@ -851,6 +851,7 @@ void LLSettingsVOWater::updateSettings()
     if (pwaterpool)
     {
         pwaterpool->setTransparentTextures(getTransparentTextureID(), getNextTransparentTextureID());
+        pwaterpool->setOpaqueTexture(GetDefaultOpaqueTextureAssetId());
         pwaterpool->setNormalMaps(getNormalMapID(), getNextNormalMapID());
     }
 }