diff --git a/doc/contributions.txt b/doc/contributions.txt
index 772d7fe3b5e88ac470f0b4f1614c87ed077df141..f7d1ece72fe3896adb0952d7946333a6bf630ec8 100755
--- a/doc/contributions.txt
+++ b/doc/contributions.txt
@@ -1277,7 +1277,6 @@ Sovereign Engineer
     MAINT-6107
     STORM-2107
     MAINT-6218
-    MAINT-2141
 SpacedOut Frye
 	VWR-34
 	VWR-45
diff --git a/indra/newview/llwlparamset.cpp b/indra/newview/llwlparamset.cpp
index 482a2a61e2a6e1aae5f96fbe62f36435637a6d44..066cb9a0ace352fa61aca7f4204323633b77d652 100644
--- a/indra/newview/llwlparamset.cpp
+++ b/indra/newview/llwlparamset.cpp
@@ -288,6 +288,14 @@ void LLWLParamSet::mix(LLWLParamSet& src, LLWLParamSet& dest, F32 weight)
 {
 	// set up the iterators
 
+	// keep cloud positions and coverage the same
+	/// TODO masking will do this later
+	F32 cloudPos1X = (F32) mParamValues["cloud_pos_density1"][0].asReal();
+	F32 cloudPos1Y = (F32) mParamValues["cloud_pos_density1"][1].asReal();
+	F32 cloudPos2X = (F32) mParamValues["cloud_pos_density2"][0].asReal();
+	F32 cloudPos2Y = (F32) mParamValues["cloud_pos_density2"][1].asReal();
+	F32 cloudCover = (F32) mParamValues["cloud_shadow"][0].asReal();
+
 	LLSD srcVal;
 	LLSD destVal;
 
@@ -371,6 +379,15 @@ void LLWLParamSet::mix(LLWLParamSet& src, LLWLParamSet& dest, F32 weight)
 
 	setSunAngle((1 - weight) * srcSunAngle + weight * destSunAngle);
 	setEastAngle((1 - weight) * srcEastAngle + weight * destEastAngle);
+	
+	// now setup the sun properly
+
+	// reset those cloud positions
+	mParamValues["cloud_pos_density1"][0] = cloudPos1X;
+	mParamValues["cloud_pos_density1"][1] = cloudPos1Y;
+	mParamValues["cloud_pos_density2"][0] = cloudPos2X;
+	mParamValues["cloud_pos_density2"][1] = cloudPos2Y;
+	mParamValues["cloud_shadow"][0] = cloudCover;
 }
 
 void LLWLParamSet::updateCloudScrolling(void)