From e0bc069af223e4dd3326eeb84cc2bf2a2a8e2b17 Mon Sep 17 00:00:00 2001
From: Dave Parks <davep@lindenlab.com>
Date: Wed, 12 Dec 2012 14:52:36 -0600
Subject: MAINT-2090 Never enable lighting and shadows by default on OS X

---
 indra/newview/llfeaturemanager.cpp | 4 ++++
 1 file changed, 4 insertions(+)

(limited to 'indra')

diff --git a/indra/newview/llfeaturemanager.cpp b/indra/newview/llfeaturemanager.cpp
index 24a27c5146..7bd21a327e 100644
--- a/indra/newview/llfeaturemanager.cpp
+++ b/indra/newview/llfeaturemanager.cpp
@@ -499,6 +499,10 @@ void LLFeatureManager::parseGPUTable(std::string filename)
 	{
 		LL_WARNS("RenderInit") << "GPU '" << rawRenderer << "' not recognized" << LL_ENDL;
 	}
+
+#if LL_DARWIN // never go over "Mid" settings by default on OS X
+	mGPUClass = llmin(mGPUClass, 2);
+#endif
 }
 
 // responder saves table into file
-- 
cgit v1.2.3


From fd3cbbaa27470de4d8ccbcab608c2a547831d310 Mon Sep 17 00:00:00 2001
From: Dave Parks <davep@lindenlab.com>
Date: Wed, 12 Dec 2012 15:23:50 -0600
Subject: MAINT-2090 Make gcc happy

---
 indra/newview/llfeaturemanager.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

(limited to 'indra')

diff --git a/indra/newview/llfeaturemanager.cpp b/indra/newview/llfeaturemanager.cpp
index 7bd21a327e..17104059f4 100644
--- a/indra/newview/llfeaturemanager.cpp
+++ b/indra/newview/llfeaturemanager.cpp
@@ -501,7 +501,7 @@ void LLFeatureManager::parseGPUTable(std::string filename)
 	}
 
 #if LL_DARWIN // never go over "Mid" settings by default on OS X
-	mGPUClass = llmin(mGPUClass, 2);
+	mGPUClass = llmin(mGPUClass, GPU_CLASS_2);
 #endif
 }
 
-- 
cgit v1.2.3


From ccef9ab2675ad2c2175e0efa431ccad6f312bfb9 Mon Sep 17 00:00:00 2001
From: Dave Parks <davep@lindenlab.com>
Date: Wed, 12 Dec 2012 16:42:06 -0600
Subject: MAINT-2086 Separate GPU class from settings more completely to avoid
 GPU dependent behavior when manually adjusting detail slider.

---
 indra/newview/featuretable.txt       | 136 ++++++++++++++++++++++++++-------
 indra/newview/featuretable_linux.txt | 137 +++++++++++++++++++++++++++-------
 indra/newview/featuretable_mac.txt   | 141 +++++++++++++++++++++++++++--------
 indra/newview/featuretable_xp.txt    | 137 +++++++++++++++++++++++++++-------
 indra/newview/llfeaturemanager.cpp   |  15 +---
 5 files changed, 441 insertions(+), 125 deletions(-)

(limited to 'indra')

diff --git a/indra/newview/featuretable.txt b/indra/newview/featuretable.txt
index e877e15053..4030324ecb 100644
--- a/indra/newview/featuretable.txt
+++ b/indra/newview/featuretable.txt
@@ -97,6 +97,9 @@ RenderUseImpostors			1	1
 RenderVolumeLODFactor		1	1.125
 VertexShaderEnable			1	0
 WindLightUseAtmosShaders	1	0
+RenderDeferred				1	0
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
 WLSkyDetail					1	48
 RenderFSAASamples			1	0
 
@@ -126,13 +129,16 @@ RenderUseImpostors			1	1
 RenderVolumeLODFactor		1	1.125
 VertexShaderEnable			1	1
 WindLightUseAtmosShaders	1	0
+RenderDeferred				1	0
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
 WLSkyDetail					1	48
 RenderFSAASamples			1	0
 
 //
-// Mid Graphics Settings
+// Medium Low Graphics Settings
 //
-list Mid
+list LowMid
 RenderAnisotropic			1	0
 RenderAvatarCloth			1	0
 RenderAvatarLODFactor		1	0.5
@@ -153,11 +159,74 @@ RenderUseImpostors			1	1
 RenderVolumeLODFactor		1	1.125
 VertexShaderEnable			1	1
 WindLightUseAtmosShaders	1	0
+RenderDeferred				1	0
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
 WLSkyDetail					1	48
 RenderFSAASamples			1	0
 
 //
-// High Graphics Settings (purty)
+// Medium Graphics Settings (standard)
+//
+list Mid
+RenderAnisotropic			1	1
+RenderAvatarCloth			1	0
+RenderAvatarLODFactor		1	1.0
+RenderAvatarPhysicsLODFactor 1	1.0
+RenderAvatarVP				1	1
+RenderFarClip				1	128
+RenderFlexTimeFactor		1	1.0
+RenderGlowResolutionPow		1	9
+RenderMaxPartCount			1	4096
+RenderObjectBump			1	1
+RenderLocalLights			1	1
+RenderReflectionDetail		1	0
+RenderTerrainDetail			1	1
+RenderTerrainLODFactor		1	2.0
+RenderTransparentWater		1	1
+RenderTreeLODFactor			1	0.5
+RenderUseImpostors			1	1
+RenderVolumeLODFactor		1	1.125
+VertexShaderEnable			1	1
+WindLightUseAtmosShaders	1	1
+RenderDeferred				1	0
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
+WLSkyDetail					1	48
+RenderFSAASamples			1	2
+
+//
+// Medium High Graphics Settings (deferred enabled)
+//
+list MidHigh
+RenderAnisotropic			1	1
+RenderAvatarCloth			1	0
+RenderAvatarLODFactor		1	1.0
+RenderAvatarPhysicsLODFactor 1	1.0
+RenderAvatarVP				1	1
+RenderFarClip				1	128
+RenderFlexTimeFactor		1	1.0
+RenderGlowResolutionPow		1	9
+RenderMaxPartCount			1	4096
+RenderObjectBump			1	1
+RenderLocalLights			1	1
+RenderReflectionDetail		1	0
+RenderTerrainDetail			1	1
+RenderTerrainLODFactor		1	2.0
+RenderTransparentWater		1	1
+RenderTreeLODFactor			1	0.5
+RenderUseImpostors			1	1
+RenderVolumeLODFactor		1	1.125
+VertexShaderEnable			1	1
+WindLightUseAtmosShaders	1	1
+RenderDeferred				1	1
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
+WLSkyDetail					1	48
+RenderFSAASamples			1	2
+
+//
+// High Graphics Settings (deferred + SSAO)
 //
 list High
 RenderAnisotropic			1	1
@@ -180,9 +249,43 @@ RenderUseImpostors			1	1
 RenderVolumeLODFactor		1	1.125
 VertexShaderEnable			1	1
 WindLightUseAtmosShaders	1	1
+RenderDeferred				1	1
+RenderDeferredSSAO			1	1
+RenderShadowDetail			1	0
+WLSkyDetail					1	48
+RenderFSAASamples			1	2
+
+//
+// High Ultra Graphics Settings (deferred + SSAO + shadows)
+//
+list HighUltra
+RenderAnisotropic			1	1
+RenderAvatarCloth			1	0
+RenderAvatarLODFactor		1	1.0
+RenderAvatarPhysicsLODFactor 1	1.0
+RenderAvatarVP				1	1
+RenderFarClip				1	128
+RenderFlexTimeFactor		1	1.0
+RenderGlowResolutionPow		1	9
+RenderMaxPartCount			1	4096
+RenderObjectBump			1	1
+RenderLocalLights			1	1
+RenderReflectionDetail		1	0
+RenderTerrainDetail			1	1
+RenderTerrainLODFactor		1	2.0
+RenderTransparentWater		1	1
+RenderTreeLODFactor			1	0.5
+RenderUseImpostors			1	1
+RenderVolumeLODFactor		1	1.125
+VertexShaderEnable			1	1
+WindLightUseAtmosShaders	1	1
+RenderDeferred				1	1
+RenderDeferredSSAO			1	1
+RenderShadowDetail			1	2
 WLSkyDetail					1	48
 RenderFSAASamples			1	2
 
+
 //
 // Ultra graphics (REALLY PURTY!)
 //
@@ -227,57 +330,36 @@ RenderDeferredSSAO			1	0
 //
 list Class0
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	0
-RenderDeferredSSAO			1	0
 
 //
 // Class 1 Hardware
 //
 list Class1
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	0
-RenderDeferredSSAO			1	0
-
 
 //
 // Class 2 Hardware
 //
 list Class2
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	0
-RenderDeferredSSAO			1	0
-
 
 //
-// Class 3 Hardware (deferred enabled)
+// Class 3 Hardware
 //
 list Class3
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	1
-RenderDeferredSSAO			1	0
 
 //
-// Class 4 Hardware (deferred + SSAO)
+// Class 4 Hardware
 //
 list Class4
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	1
-RenderDeferredSSAO			1	1
 
 //
-// Class 5 Hardware (deferred + SSAO + shadows)
+// Class 5 Hardware
 //
 list Class5
 RenderVBOEnable				1	1
-RenderShadowDetail			1	2
-RenderDeferred				1	1
-RenderDeferredSSAO			1	1
-
 
 //
 // VRAM > 512MB
diff --git a/indra/newview/featuretable_linux.txt b/indra/newview/featuretable_linux.txt
index 5699bd9c8a..6d5284c602 100644
--- a/indra/newview/featuretable_linux.txt
+++ b/indra/newview/featuretable_linux.txt
@@ -94,6 +94,9 @@ RenderUseImpostors			1	1
 RenderVolumeLODFactor		1	0.5
 VertexShaderEnable			1	1
 WindLightUseAtmosShaders	1	0
+RenderDeferred				1	0
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
 WLSkyDetail					1	48
 RenderFSAASamples			1	0
 
@@ -122,13 +125,16 @@ RenderUseImpostors			1	1
 RenderVolumeLODFactor		1	0.5
 VertexShaderEnable			1	0
 WindLightUseAtmosShaders	1	0
+RenderDeferred				1	0
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
 WLSkyDetail					1	48
 RenderFSAASamples			1	0
 
 //
-// Mid Graphics Settings
+// Medium Low Graphics Settings
 //
-list Mid
+list LowMid
 RenderAnisotropic			1	0
 RenderAvatarCloth			1	0
 RenderAvatarLODFactor		1	0.5
@@ -137,9 +143,9 @@ RenderAvatarVP				1	1
 RenderFarClip				1	96
 RenderFlexTimeFactor		1	1.0
 RenderGlowResolutionPow		1	8
-RenderLocalLights			1	1
 RenderMaxPartCount			1	2048
 RenderObjectBump			1	1
+RenderLocalLights			1	1
 RenderReflectionDetail		1	0
 RenderTerrainDetail			1	1
 RenderTerrainLODFactor		1	1.0
@@ -149,11 +155,74 @@ RenderUseImpostors			1	1
 RenderVolumeLODFactor		1	1.125
 VertexShaderEnable			1	1
 WindLightUseAtmosShaders	1	0
+RenderDeferred				1	0
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
 WLSkyDetail					1	48
 RenderFSAASamples			1	0
 
 //
-// High Graphics Settings (purty)
+// Medium Graphics Settings (standard)
+//
+list Mid
+RenderAnisotropic			1	1
+RenderAvatarCloth			1	0
+RenderAvatarLODFactor		1	1.0
+RenderAvatarPhysicsLODFactor 1	1.0
+RenderAvatarVP				1	1
+RenderFarClip				1	128
+RenderFlexTimeFactor		1	1.0
+RenderGlowResolutionPow		1	9
+RenderMaxPartCount			1	4096
+RenderObjectBump			1	1
+RenderLocalLights			1	1
+RenderReflectionDetail		1	0
+RenderTerrainDetail			1	1
+RenderTerrainLODFactor		1	2.0
+RenderTransparentWater		1	1
+RenderTreeLODFactor			1	0.5
+RenderUseImpostors			1	1
+RenderVolumeLODFactor		1	1.125
+VertexShaderEnable			1	1
+WindLightUseAtmosShaders	1	1
+RenderDeferred				1	0
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
+WLSkyDetail					1	48
+RenderFSAASamples			1	2
+
+//
+// Medium High Graphics Settings (deferred enabled)
+//
+list MidHigh
+RenderAnisotropic			1	1
+RenderAvatarCloth			1	0
+RenderAvatarLODFactor		1	1.0
+RenderAvatarPhysicsLODFactor 1	1.0
+RenderAvatarVP				1	1
+RenderFarClip				1	128
+RenderFlexTimeFactor		1	1.0
+RenderGlowResolutionPow		1	9
+RenderMaxPartCount			1	4096
+RenderObjectBump			1	1
+RenderLocalLights			1	1
+RenderReflectionDetail		1	0
+RenderTerrainDetail			1	1
+RenderTerrainLODFactor		1	2.0
+RenderTransparentWater		1	1
+RenderTreeLODFactor			1	0.5
+RenderUseImpostors			1	1
+RenderVolumeLODFactor		1	1.125
+VertexShaderEnable			1	1
+WindLightUseAtmosShaders	1	1
+RenderDeferred				1	1
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
+WLSkyDetail					1	48
+RenderFSAASamples			1	2
+
+//
+// High Graphics Settings (deferred + SSAO)
 //
 list High
 RenderAnisotropic			1	1
@@ -164,9 +233,39 @@ RenderAvatarVP				1	1
 RenderFarClip				1	128
 RenderFlexTimeFactor		1	1.0
 RenderGlowResolutionPow		1	9
+RenderMaxPartCount			1	4096
+RenderObjectBump			1	1
 RenderLocalLights			1	1
+RenderReflectionDetail		1	0
+RenderTerrainDetail			1	1
+RenderTerrainLODFactor		1	2.0
+RenderTransparentWater		1	1
+RenderTreeLODFactor			1	0.5
+RenderUseImpostors			1	1
+RenderVolumeLODFactor		1	1.125
+VertexShaderEnable			1	1
+WindLightUseAtmosShaders	1	1
+RenderDeferred				1	1
+RenderDeferredSSAO			1	1
+RenderShadowDetail			1	0
+WLSkyDetail					1	48
+RenderFSAASamples			1	2
+
+//
+// High Ultra Graphics Settings (deferred + SSAO + shadows)
+//
+list HighUltra
+RenderAnisotropic			1	1
+RenderAvatarCloth			1	0
+RenderAvatarLODFactor		1	1.0
+RenderAvatarPhysicsLODFactor 1	1.0
+RenderAvatarVP				1	1
+RenderFarClip				1	128
+RenderFlexTimeFactor		1	1.0
+RenderGlowResolutionPow		1	9
 RenderMaxPartCount			1	4096
 RenderObjectBump			1	1
+RenderLocalLights			1	1
 RenderReflectionDetail		1	0
 RenderTerrainDetail			1	1
 RenderTerrainLODFactor		1	2.0
@@ -176,6 +275,9 @@ RenderUseImpostors			1	1
 RenderVolumeLODFactor		1	1.125
 VertexShaderEnable			1	1
 WindLightUseAtmosShaders	1	1
+RenderDeferred				1	1
+RenderDeferredSSAO			1	1
+RenderShadowDetail			1	2
 WLSkyDetail					1	48
 RenderFSAASamples			1	2
 
@@ -223,56 +325,37 @@ RenderDeferredSSAO			1	0
 //
 list Class0
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	0
-RenderDeferredSSAO			1	0
 
 //
 // Class 1 Hardware
 //
 list Class1
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	0
-RenderDeferredSSAO			1	0
-
 
 //
 // Class 2 Hardware
 //
 list Class2
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	0
-RenderDeferredSSAO			1	0
-
 
 //
-// Class 3 Hardware (deferred enabled)
+// Class 3 Hardware
 //
 list Class3
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	1
-RenderDeferredSSAO			1	0
 
 //
-// Class 4 Hardware (deferred + SSAO)
+// Class 4 Hardware 
 //
 list Class4
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	1
-RenderDeferredSSAO			1	1
 
 //
-// Class 5 Hardware (deferred + SSAO + shadows)
+// Class 5 Hardware 
 //
 list Class5
 RenderVBOEnable				1	1
-RenderShadowDetail			1	2
-RenderDeferred				1	1
-RenderDeferredSSAO			1	1
+
 //
 // VRAM > 512MB
 //
diff --git a/indra/newview/featuretable_mac.txt b/indra/newview/featuretable_mac.txt
index 3a91f19c58..eb1a4c78a3 100644
--- a/indra/newview/featuretable_mac.txt
+++ b/indra/newview/featuretable_mac.txt
@@ -96,6 +96,9 @@ RenderUseImpostors			1	1
 RenderVolumeLODFactor		1	0.5
 VertexShaderEnable			1	0
 WindLightUseAtmosShaders	1	0
+RenderDeferred				1	0
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
 WLSkyDetail					1	48
 RenderFSAASamples			1	0
 
@@ -124,13 +127,16 @@ RenderUseImpostors			1	1
 RenderVolumeLODFactor		1	0.5
 VertexShaderEnable			1	1
 WindLightUseAtmosShaders	1	0
+RenderDeferred				1	0
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
 WLSkyDetail					1	48
 RenderFSAASamples			1	0
 
 //
-// Mid Graphics Settings
+// Medium Low Graphics Settings
 //
-list Mid
+list LowMid
 RenderAnisotropic			1	0
 RenderAvatarCloth			1	0
 RenderAvatarLODFactor		1	0.5
@@ -139,9 +145,9 @@ RenderAvatarVP				1	1
 RenderFarClip				1	96
 RenderFlexTimeFactor		1	1.0
 RenderGlowResolutionPow		1	8
-RenderLocalLights			1	1
 RenderMaxPartCount			1	2048
 RenderObjectBump			1	1
+RenderLocalLights			1	1
 RenderReflectionDetail		1	0
 RenderTerrainDetail			1	1
 RenderTerrainLODFactor		1	1.0
@@ -151,11 +157,74 @@ RenderUseImpostors			1	1
 RenderVolumeLODFactor		1	1.125
 VertexShaderEnable			1	1
 WindLightUseAtmosShaders	1	0
+RenderDeferred				1	0
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
 WLSkyDetail					1	48
 RenderFSAASamples			1	0
 
 //
-// High Graphics Settings (purty)
+// Medium Graphics Settings (standard)
+//
+list Mid
+RenderAnisotropic			1	1
+RenderAvatarCloth			1	0
+RenderAvatarLODFactor		1	1.0
+RenderAvatarPhysicsLODFactor 1	1.0
+RenderAvatarVP				1	1
+RenderFarClip				1	128
+RenderFlexTimeFactor		1	1.0
+RenderGlowResolutionPow		1	9
+RenderMaxPartCount			1	4096
+RenderObjectBump			1	1
+RenderLocalLights			1	1
+RenderReflectionDetail		1	0
+RenderTerrainDetail			1	1
+RenderTerrainLODFactor		1	2.0
+RenderTransparentWater		1	1
+RenderTreeLODFactor			1	0.5
+RenderUseImpostors			1	1
+RenderVolumeLODFactor		1	1.125
+VertexShaderEnable			1	1
+WindLightUseAtmosShaders	1	1
+RenderDeferred				1	0
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
+WLSkyDetail					1	48
+RenderFSAASamples			1	2
+
+//
+// Medium High Graphics Settings (deferred enabled)
+//
+list MidHigh
+RenderAnisotropic			1	1
+RenderAvatarCloth			1	0
+RenderAvatarLODFactor		1	1.0
+RenderAvatarPhysicsLODFactor 1	1.0
+RenderAvatarVP				1	1
+RenderFarClip				1	128
+RenderFlexTimeFactor		1	1.0
+RenderGlowResolutionPow		1	9
+RenderMaxPartCount			1	4096
+RenderObjectBump			1	1
+RenderLocalLights			1	1
+RenderReflectionDetail		1	0
+RenderTerrainDetail			1	1
+RenderTerrainLODFactor		1	2.0
+RenderTransparentWater		1	1
+RenderTreeLODFactor			1	0.5
+RenderUseImpostors			1	1
+RenderVolumeLODFactor		1	1.125
+VertexShaderEnable			1	1
+WindLightUseAtmosShaders	1	1
+RenderDeferred				1	1
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
+WLSkyDetail					1	48
+RenderFSAASamples			1	2
+
+//
+// High Graphics Settings (deferred + SSAO)
 //
 list High
 RenderAnisotropic			1	1
@@ -166,9 +235,39 @@ RenderAvatarVP				1	1
 RenderFarClip				1	128
 RenderFlexTimeFactor		1	1.0
 RenderGlowResolutionPow		1	9
+RenderMaxPartCount			1	4096
+RenderObjectBump			1	1
 RenderLocalLights			1	1
+RenderReflectionDetail		1	0
+RenderTerrainDetail			1	1
+RenderTerrainLODFactor		1	2.0
+RenderTransparentWater		1	1
+RenderTreeLODFactor			1	0.5
+RenderUseImpostors			1	1
+RenderVolumeLODFactor		1	1.125
+VertexShaderEnable			1	1
+WindLightUseAtmosShaders	1	1
+RenderDeferred				1	1
+RenderDeferredSSAO			1	1
+RenderShadowDetail			1	0
+WLSkyDetail					1	48
+RenderFSAASamples			1	2
+
+//
+// High Ultra Graphics Settings (deferred + SSAO + shadows)
+//
+list HighUltra
+RenderAnisotropic			1	1
+RenderAvatarCloth			1	0
+RenderAvatarLODFactor		1	1.0
+RenderAvatarPhysicsLODFactor 1	1.0
+RenderAvatarVP				1	1
+RenderFarClip				1	128
+RenderFlexTimeFactor		1	1.0
+RenderGlowResolutionPow		1	9
 RenderMaxPartCount			1	4096
 RenderObjectBump			1	1
+RenderLocalLights			1	1
 RenderReflectionDetail		1	0
 RenderTerrainDetail			1	1
 RenderTerrainLODFactor		1	2.0
@@ -178,9 +277,13 @@ RenderUseImpostors			1	1
 RenderVolumeLODFactor		1	1.125
 VertexShaderEnable			1	1
 WindLightUseAtmosShaders	1	1
+RenderDeferred				1	1
+RenderDeferredSSAO			1	1
+RenderShadowDetail			1	2
 WLSkyDetail					1	48
 RenderFSAASamples			1	2
 
+
 //
 // Ultra graphics (REALLY PURTY!)
 //
@@ -216,65 +319,41 @@ RenderFSAASamples			1	2
 //
 list Unknown
 RenderVBOEnable				1	0
-RenderShadowDetail			1	0
-RenderDeferred				1	0
-RenderDeferredSSAO			1	0
 
 //
 // Class 0 Hardware (just old)
 //
 list Class0
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	0
-RenderDeferredSSAO			1	0
 
 //
 // Class 1 Hardware
 //
 list Class1
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	0
-RenderDeferredSSAO			1	0
-
 
 //
 // Class 2 Hardware
 //
 list Class2
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	0
-RenderDeferredSSAO			1	0
-
 
 //
-// Class 3 Hardware (deferred enabled)
+// Class 3 Hardware
 //
 list Class3
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	1
-RenderDeferredSSAO			1	0
-
 //
-// Class 4 Hardware (deferred + SSAO)
+// Class 4 Hardware
 //
 list Class4
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	1
-RenderDeferredSSAO			1	1
 
 //
-// Class 5 Hardware (deferred + SSAO + shadows)
+// Class 5 Hardware
 //
 list Class5
 RenderVBOEnable				1	1
-RenderShadowDetail			1	2
-RenderDeferred				1	1
-RenderDeferredSSAO			1	1
 
 //
 // No Pixel Shaders available
diff --git a/indra/newview/featuretable_xp.txt b/indra/newview/featuretable_xp.txt
index ad16e2533b..68e09d010e 100644
--- a/indra/newview/featuretable_xp.txt
+++ b/indra/newview/featuretable_xp.txt
@@ -96,6 +96,9 @@ RenderUseImpostors			1	1
 RenderVolumeLODFactor		1	0.5
 VertexShaderEnable			1	0
 WindLightUseAtmosShaders	1	0
+RenderDeferred				1	0
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
 WLSkyDetail					1	48
 RenderFSAASamples			1	0
 
@@ -124,13 +127,16 @@ RenderUseImpostors			1	1
 RenderVolumeLODFactor		1	0.5
 VertexShaderEnable			1	1
 WindLightUseAtmosShaders	1	0
+RenderDeferred				1	0
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
 WLSkyDetail					1	48
 RenderFSAASamples			1	0
 
 //
-// Mid Graphics Settings
+// Medium Low Graphics Settings
 //
-list Mid
+list LowMid
 RenderAnisotropic			1	0
 RenderAvatarCloth			1	0
 RenderAvatarLODFactor		1	0.5
@@ -139,9 +145,9 @@ RenderAvatarVP				1	1
 RenderFarClip				1	96
 RenderFlexTimeFactor		1	1.0
 RenderGlowResolutionPow		1	8
-RenderLocalLights			1	1
 RenderMaxPartCount			1	2048
 RenderObjectBump			1	1
+RenderLocalLights			1	1
 RenderReflectionDetail		1	0
 RenderTerrainDetail			1	1
 RenderTerrainLODFactor		1	1.0
@@ -151,11 +157,74 @@ RenderUseImpostors			1	1
 RenderVolumeLODFactor		1	1.125
 VertexShaderEnable			1	1
 WindLightUseAtmosShaders	1	0
+RenderDeferred				1	0
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
 WLSkyDetail					1	48
 RenderFSAASamples			1	0
 
 //
-// High Graphics Settings (purty)
+// Medium Graphics Settings (standard)
+//
+list Mid
+RenderAnisotropic			1	1
+RenderAvatarCloth			1	0
+RenderAvatarLODFactor		1	1.0
+RenderAvatarPhysicsLODFactor 1	1.0
+RenderAvatarVP				1	1
+RenderFarClip				1	128
+RenderFlexTimeFactor		1	1.0
+RenderGlowResolutionPow		1	9
+RenderMaxPartCount			1	4096
+RenderObjectBump			1	1
+RenderLocalLights			1	1
+RenderReflectionDetail		1	0
+RenderTerrainDetail			1	1
+RenderTerrainLODFactor		1	2.0
+RenderTransparentWater		1	1
+RenderTreeLODFactor			1	0.5
+RenderUseImpostors			1	1
+RenderVolumeLODFactor		1	1.125
+VertexShaderEnable			1	1
+WindLightUseAtmosShaders	1	1
+RenderDeferred				1	0
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
+WLSkyDetail					1	48
+RenderFSAASamples			1	2
+
+//
+// Medium High Graphics Settings (deferred enabled)
+//
+list MidHigh
+RenderAnisotropic			1	1
+RenderAvatarCloth			1	0
+RenderAvatarLODFactor		1	1.0
+RenderAvatarPhysicsLODFactor 1	1.0
+RenderAvatarVP				1	1
+RenderFarClip				1	128
+RenderFlexTimeFactor		1	1.0
+RenderGlowResolutionPow		1	9
+RenderMaxPartCount			1	4096
+RenderObjectBump			1	1
+RenderLocalLights			1	1
+RenderReflectionDetail		1	0
+RenderTerrainDetail			1	1
+RenderTerrainLODFactor		1	2.0
+RenderTransparentWater		1	1
+RenderTreeLODFactor			1	0.5
+RenderUseImpostors			1	1
+RenderVolumeLODFactor		1	1.125
+VertexShaderEnable			1	1
+WindLightUseAtmosShaders	1	1
+RenderDeferred				1	1
+RenderDeferredSSAO			1	0
+RenderShadowDetail			1	0
+WLSkyDetail					1	48
+RenderFSAASamples			1	2
+
+//
+// High Graphics Settings (deferred + SSAO)
 //
 list High
 RenderAnisotropic			1	1
@@ -166,9 +235,39 @@ RenderAvatarVP				1	1
 RenderFarClip				1	128
 RenderFlexTimeFactor		1	1.0
 RenderGlowResolutionPow		1	9
+RenderMaxPartCount			1	4096
+RenderObjectBump			1	1
 RenderLocalLights			1	1
+RenderReflectionDetail		1	0
+RenderTerrainDetail			1	1
+RenderTerrainLODFactor		1	2.0
+RenderTransparentWater		1	1
+RenderTreeLODFactor			1	0.5
+RenderUseImpostors			1	1
+RenderVolumeLODFactor		1	1.125
+VertexShaderEnable			1	1
+WindLightUseAtmosShaders	1	1
+RenderDeferred				1	1
+RenderDeferredSSAO			1	1
+RenderShadowDetail			1	0
+WLSkyDetail					1	48
+RenderFSAASamples			1	2
+
+//
+// High Ultra Graphics Settings (deferred + SSAO + shadows)
+//
+list HighUltra
+RenderAnisotropic			1	1
+RenderAvatarCloth			1	0
+RenderAvatarLODFactor		1	1.0
+RenderAvatarPhysicsLODFactor 1	1.0
+RenderAvatarVP				1	1
+RenderFarClip				1	128
+RenderFlexTimeFactor		1	1.0
+RenderGlowResolutionPow		1	9
 RenderMaxPartCount			1	4096
 RenderObjectBump			1	1
+RenderLocalLights			1	1
 RenderReflectionDetail		1	0
 RenderTerrainDetail			1	1
 RenderTerrainLODFactor		1	2.0
@@ -178,6 +277,9 @@ RenderUseImpostors			1	1
 RenderVolumeLODFactor		1	1.125
 VertexShaderEnable			1	1
 WindLightUseAtmosShaders	1	1
+RenderDeferred				1	1
+RenderDeferredSSAO			1	1
+RenderShadowDetail			1	2
 WLSkyDetail					1	48
 RenderFSAASamples			1	2
 
@@ -216,65 +318,42 @@ RenderFSAASamples			1	2
 //
 list Unknown
 RenderVBOEnable				1	0
-RenderShadowDetail			1	0
-RenderDeferred				1	0
-RenderDeferredSSAO			1	0
 
 //
 // Class 0 Hardware (just old)
 //
 list Class0
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	0
-RenderDeferredSSAO			1	0
 
 //
 // Class 1 Hardware
 //
 list Class1
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	0
-RenderDeferredSSAO			1	0
-
 
 //
 // Class 2 Hardware
 //
 list Class2
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	0
-RenderDeferredSSAO			1	0
-
 
 //
-// Class 3 Hardware (deferred enabled)
+// Class 3 Hardware
 //
 list Class3
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	1
-RenderDeferredSSAO			1	0
 
 //
 // Class 4 Hardware (deferred + SSAO)
 //
 list Class4
 RenderVBOEnable				1	1
-RenderShadowDetail			1	0
-RenderDeferred				1	1
-RenderDeferredSSAO			1	1
 
 //
-// Class 5 Hardware (deferred + SSAO + shadows)
+// Class 5 Hardware
 //
 list Class5
 RenderVBOEnable				1	1
-RenderShadowDetail			1	2
-RenderDeferred				1	1
-RenderDeferredSSAO			1	1
 
 //
 // VRAM > 512MB
diff --git a/indra/newview/llfeaturemanager.cpp b/indra/newview/llfeaturemanager.cpp
index 17104059f4..2b39b771e7 100644
--- a/indra/newview/llfeaturemanager.cpp
+++ b/indra/newview/llfeaturemanager.cpp
@@ -712,34 +712,27 @@ void LLFeatureManager::setGraphicsLevel(S32 level, bool skipFeatures)
 			{ //same as low, but with "Basic Shaders" enabled
 				maskFeatures("Low");
 			}
-			maskFeatures("Class0");
 			break;
 		case 1:
-			maskFeatures("Mid");
-			maskFeatures("Class1");
+			maskFeatures("LowMid");
 			break;
 		case 2:
-			maskFeatures("High");
-			maskFeatures("Class2");
+			maskFeatures("Mid");
 			break;
 		case 3:
-			maskFeatures("High");
-			maskFeatures("Class3");
+			maskFeatures("MidHigh");
 			break;
 		case 4:
 			maskFeatures("High");
-			maskFeatures("Class4");
 			break;
 		case 5:
-			maskFeatures("High");
-			maskFeatures("Class5");
+			maskFeatures("HighUltra");
 			break;
 		case 6:
 			maskFeatures("Ultra");
 			break;
 		default:
 			maskFeatures("Low");
-			maskFeatures("Class0");
 			break;
 	}
 
-- 
cgit v1.2.3


From 87b248958cee6476a21c18911cd7c14bb270763e Mon Sep 17 00:00:00 2001
From: Dave Parks <davep@lindenlab.com>
Date: Wed, 12 Dec 2012 17:17:56 -0600
Subject: MAINT-2090 Bump featuretable version to reset mac graphics to default

---
 indra/newview/featuretable_mac.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

(limited to 'indra')

diff --git a/indra/newview/featuretable_mac.txt b/indra/newview/featuretable_mac.txt
index eb1a4c78a3..1c0d45c11b 100644
--- a/indra/newview/featuretable_mac.txt
+++ b/indra/newview/featuretable_mac.txt
@@ -1,4 +1,4 @@
-version 34
+version 35
 // The version number above should be implemented IF AND ONLY IF some
 // change has been made that is sufficiently important to justify
 // resetting the graphics preferences of all users to the recommended
-- 
cgit v1.2.3


From 81ba7e031e522e38fca760861a710f7527edecdd Mon Sep 17 00:00:00 2001
From: Dave Parks <davep@lindenlab.com>
Date: Wed, 5 Dec 2012 18:27:13 -0600
Subject: MAINT-1760 Fix for opaque water glowing when wearing certain rigged
 attachments.

---
 indra/newview/lldrawpoolavatar.cpp | 2 ++
 1 file changed, 2 insertions(+)

(limited to 'indra')

diff --git a/indra/newview/lldrawpoolavatar.cpp b/indra/newview/lldrawpoolavatar.cpp
index 730ad1a364..0e15f474c9 100644
--- a/indra/newview/lldrawpoolavatar.cpp
+++ b/indra/newview/lldrawpoolavatar.cpp
@@ -1630,6 +1630,7 @@ void LLDrawPoolAvatar::renderRiggedAlpha(LLVOAvatar* avatar)
 						LLRender::BF_ONE_MINUS_SOURCE_ALPHA);
 
 		renderRigged(avatar, RIGGED_ALPHA);
+		gGL.setColorMask(true, false);
 	}
 }
 
@@ -1646,6 +1647,7 @@ void LLDrawPoolAvatar::renderRiggedFullbrightAlpha(LLVOAvatar* avatar)
 						LLRender::BF_ONE_MINUS_SOURCE_ALPHA);
 
 		renderRigged(avatar, RIGGED_FULLBRIGHT_ALPHA);
+		gGL.setColorMask(true, false);
 	}
 }
 
-- 
cgit v1.2.3


From 9db74ae962ad0c8864f8b236bed0bb503b0e96e1 Mon Sep 17 00:00:00 2001
From: Dave Parks <davep@lindenlab.com>
Date: Tue, 9 Oct 2012 18:27:42 -0500
Subject: MAINT-1138 Fix for crash when picking rigged attachments.

---
 indra/newview/llvovolume.cpp | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

(limited to 'indra')

diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp
index 5d1c335078..538911e9b8 100644
--- a/indra/newview/llvovolume.cpp
+++ b/indra/newview/llvovolume.cpp
@@ -1483,7 +1483,7 @@ BOOL LLVOVolume::genBBoxes(BOOL force_global)
 
 	updateRadius();
 	mDrawable->movePartition();
-			
+				
 	return res;
 }
 
@@ -3583,7 +3583,6 @@ BOOL LLVOVolume::lineSegmentIntersect(const LLVector3& start, const LLVector3& e
 		if (LLFloater::isVisible(gFloaterTools) && getAvatar()->isSelf())
 		{
 			updateRiggedVolume();
-			genBBoxes(FALSE);
 			volume = mRiggedVolume;
 			transform = false;
 		}
-- 
cgit v1.2.3


From 2fd843c11884ea7543544d5f33bc7030655b7382 Mon Sep 17 00:00:00 2001
From: Dave Parks <davep@lindenlab.com>
Date: Wed, 17 Oct 2012 15:33:01 -0500
Subject: MAINT-873 Fix for inability to upload meshes on some systems.

---
 indra/newview/llmeshrepository.cpp | 33 ++++++++++++++++++++++++++++-----
 indra/newview/llmeshrepository.h   |  3 +++
 2 files changed, 31 insertions(+), 5 deletions(-)

(limited to 'indra')

diff --git a/indra/newview/llmeshrepository.cpp b/indra/newview/llmeshrepository.cpp
index ba0a590910..92ac435f08 100755
--- a/indra/newview/llmeshrepository.cpp
+++ b/indra/newview/llmeshrepository.cpp
@@ -361,7 +361,20 @@ public:
 		mModelData(model_data),
 		mObserverHandle(observer_handle)
 	{
+		if (mThread)
+		{
+			mThread->startRequest();
+		}
+	}
+
+	~LLWholeModelFeeResponder()
+	{
+		if (mThread)
+		{
+			mThread->stopRequest();
+		}
 	}
+
 	virtual void completed(U32 status,
 						   const std::string& reason,
 						   const LLSD& content)
@@ -372,7 +385,6 @@ public:
 			cc = llsd_from_file("fake_upload_error.xml");
 		}
 			
-		mThread->mPendingUploads--;
 		dump_llsd_to_file(cc,make_dump_name("whole_model_fee_response_",dump_num));
 
 		LLWholeModelFeeObserver* observer = mObserverHandle.get();
@@ -415,7 +427,20 @@ public:
 		mModelData(model_data),
 		mObserverHandle(observer_handle)
 	{
+		if (mThread)
+		{
+			mThread->startRequest();
+		}
+	}
+
+	~LLWholeModelUploadResponder()
+	{
+		if (mThread)
+		{
+			mThread->stopRequest();
+		}
 	}
+
 	virtual void completed(U32 status,
 						   const std::string& reason,
 						   const LLSD& content)
@@ -426,7 +451,6 @@ public:
 			cc = llsd_from_file("fake_upload_error.xml");
 		}
 
-		mThread->mPendingUploads--;
 		dump_llsd_to_file(cc,make_dump_name("whole_model_upload_response_",dump_num));
 		
 		LLWholeModelUploadObserver* observer = mObserverHandle.get();
@@ -1622,7 +1646,7 @@ void LLMeshUploadThread::doWholeModelUpload()
 			mCurlRequest->process();
 			//sleep for 10ms to prevent eating a whole core
 			apr_sleep(10000);
-		} while (!LLAppViewer::isQuitting() && mCurlRequest->getQueued() > 0);
+		} while (!LLAppViewer::isQuitting() && mPendingUploads > 0);
 	}
 
 	delete mCurlRequest;
@@ -1644,7 +1668,6 @@ void LLMeshUploadThread::requestWholeModelFee()
 	wholeModelToLLSD(model_data,false);
 	dump_llsd_to_file(model_data,make_dump_name("whole_model_fee_request_",dump_num));
 
-	mPendingUploads++;
 	LLCurlRequest::headers_t headers;
 
 	{
@@ -1661,7 +1684,7 @@ void LLMeshUploadThread::requestWholeModelFee()
 		mCurlRequest->process();
 		//sleep for 10ms to prevent eating a whole core
 		apr_sleep(10000);
-	} while (!LLApp::isQuitting() && mCurlRequest->getQueued() > 0);
+	} while (!LLApp::isQuitting() && mPendingUploads > 0);
 
 	delete mCurlRequest;
 	mCurlRequest = NULL;
diff --git a/indra/newview/llmeshrepository.h b/indra/newview/llmeshrepository.h
index da81bb057b..6e301c26a2 100644
--- a/indra/newview/llmeshrepository.h
+++ b/indra/newview/llmeshrepository.h
@@ -405,6 +405,9 @@ public:
 					   LLHandle<LLWholeModelFeeObserver> fee_observer= (LLHandle<LLWholeModelFeeObserver>()), LLHandle<LLWholeModelUploadObserver> upload_observer = (LLHandle<LLWholeModelUploadObserver>()));
 	~LLMeshUploadThread();
 
+	void startRequest() { ++mPendingUploads; }
+	void stopRequest() { --mPendingUploads; }
+
 	bool finished() { return mFinished; }
 	virtual void run();
 	void preStart();
-- 
cgit v1.2.3


From 66fee67397d17f03ac5492a903735e2e6eef9f1f Mon Sep 17 00:00:00 2001
From: Oz Linden <oz@lindenlab.com>
Date: Wed, 12 Dec 2012 09:22:14 -0500
Subject: MAINT-2051: Implement replacement of an existing autoreplace list

---
 indra/newview/llautoreplace.cpp                | 40 ++++++++++++++++++++++++++
 indra/newview/llautoreplace.h                  |  3 ++
 indra/newview/llfloaterautoreplacesettings.cpp | 17 +++++++++--
 3 files changed, 57 insertions(+), 3 deletions(-)

(limited to 'indra')

diff --git a/indra/newview/llautoreplace.cpp b/indra/newview/llautoreplace.cpp
index 0f1ce2bcd0..d71cf290d6 100644
--- a/indra/newview/llautoreplace.cpp
+++ b/indra/newview/llautoreplace.cpp
@@ -536,6 +536,46 @@ LLAutoReplaceSettings::AddListResult LLAutoReplaceSettings::addList(const LLSD&
 	return result;
 }
 
+LLAutoReplaceSettings::AddListResult LLAutoReplaceSettings::replaceList(const LLSD& newList)
+{
+	AddListResult result = AddListInvalidList;
+	if ( listIsValid( newList ) )
+	{
+		std::string listName = newList[AUTOREPLACE_LIST_NAME].asString();
+		bool listFound = false;
+		S32 search_index;
+		LLSD targetList;
+		// The following is working around the fact that LLSD arrays containing maps also seem to have undefined entries... see LLSD-30
+		for ( search_index = 0, targetList = mLists[0];
+			  !listFound && search_index < mLists.size();
+			  search_index += 1, targetList = mLists[search_index]
+			 )
+		{
+			if ( targetList.isMap() )
+			{
+				if ( listNameMatches( targetList, listName) )
+				{
+					LL_DEBUGS("AutoReplace")<<"list to replace found at "<<search_index<<LL_ENDL;
+					mLists.erase(search_index);
+					mLists.insert(search_index, newList);
+					listFound = true;
+					result = AddListOk;
+				}
+			}
+		}
+		
+		if ( ! listFound )
+		{
+			LL_WARNS("AutoReplace") << "attempt to replace unconfigured list" << LL_ENDL;
+		}
+	}
+	else
+	{
+		LL_WARNS("AutoReplace") << "attempt to add invalid list" << LL_ENDL;
+	}
+	return result;
+}
+
 bool LLAutoReplaceSettings::removeReplacementList(std::string listName)
 {
 	bool found = false;
diff --git a/indra/newview/llautoreplace.h b/indra/newview/llautoreplace.h
index 30b1fd2c65..f720cc4eda 100644
--- a/indra/newview/llautoreplace.h
+++ b/indra/newview/llautoreplace.h
@@ -67,6 +67,9 @@ class LLAutoReplaceSettings
 	/// Inserts a new list at the end of the priority order
 	AddListResult addList(const LLSD& newList);
 
+	/// Inserts a list in place of an existing list of the same name
+	AddListResult replaceList(const LLSD& newList);
+
 	/// Removes the named list, @returns false if not found
 	bool removeReplacementList(std::string listName);
 
diff --git a/indra/newview/llfloaterautoreplacesettings.cpp b/indra/newview/llfloaterautoreplacesettings.cpp
index 7d1bcba978..5dcdded744 100644
--- a/indra/newview/llfloaterautoreplacesettings.cpp
+++ b/indra/newview/llfloaterautoreplacesettings.cpp
@@ -478,14 +478,25 @@ bool LLFloaterAutoReplaceSettings::callbackNewListName(const LLSD& notification,
 bool LLFloaterAutoReplaceSettings::callbackListNameConflict(const LLSD& notification, const LLSD& response)
 {
 	LLSD newList = notification["payload"]["list"];
-
+	std::string listName = LLAutoReplaceSettings::getListName(newList);
+	
 	S32 option = LLNotificationsUtil::getSelectedOption(notification, response);
 	switch ( option )
 	{
 	case 0:
 		// Replace current list
-		LL_INFOS("AutoReplace")<<"option 'replace current list' selected"<<LL_ENDL;
-		
+		if ( LLAutoReplaceSettings::AddListOk == mSettings.replaceList(newList) )
+		{
+			LL_INFOS("AutoReplace") << "replaced list '"<<listName<<"'"<<LL_ENDL;
+			mSelectedListName = listName;
+			updateListNames();
+			updateListNamesControls();
+			updateReplacementsList();
+		}
+		else
+		{
+			LL_WARNS("AutoReplace")<<"failed to replace list '"<<listName<<"'"<<LL_ENDL;
+		}
 		break;
 
 	case 1:
-- 
cgit v1.2.3


From 773c4abc8159cbff9ff0347a25baa56657f73cc2 Mon Sep 17 00:00:00 2001
From: Oz Linden <oz@lindenlab.com>
Date: Wed, 12 Dec 2012 10:53:13 -0500
Subject: MAINT-2082: fix deletion of an autoreplace list

---
 indra/newview/llfloaterautoreplacesettings.cpp | 29 +++++++++++++++++++-------
 1 file changed, 21 insertions(+), 8 deletions(-)

(limited to 'indra')

diff --git a/indra/newview/llfloaterautoreplacesettings.cpp b/indra/newview/llfloaterautoreplacesettings.cpp
index 5dcdded744..6e56e929df 100644
--- a/indra/newview/llfloaterautoreplacesettings.cpp
+++ b/indra/newview/llfloaterautoreplacesettings.cpp
@@ -514,14 +514,27 @@ bool LLFloaterAutoReplaceSettings::callbackListNameConflict(const LLSD& notifica
 
 void LLFloaterAutoReplaceSettings::onDeleteList()
 {
-	std::string listName= mListNames->getFirstSelected()->getColumn(0)->getValue().asString();
-	mSettings.removeReplacementList(listName); // remove from the copy of settings
-	mReplacementsList->deleteSelectedItems();   // remove from the scrolling list
-
-	mSelectedListName.clear();
-	updateListNames();
-	updateListNamesControls();
-	updateReplacementsList();
+	std::string listName = mListNames->getSelectedValue().asString();
+	if ( ! listName.empty() )
+	{
+		if ( mSettings.removeReplacementList(listName) )
+		{
+			LL_INFOS("AutoReplace")<<"deleted list '"<<listName<<"'"<<LL_ENDL;
+			mReplacementsList->deleteSelectedItems();   // remove from the scrolling list
+			mSelectedListName.clear();
+			updateListNames();
+			updateListNamesControls();
+			updateReplacementsList();
+		}
+		else
+		{
+			LL_WARNS("AutoReplace")<<"failed to delete list '"<<listName<<"'"<<LL_ENDL;
+		}
+	}
+	else
+	{
+		LL_DEBUGS("AutoReplace")<<"no list selected for delete"<<LL_ENDL;
+	}
 }
 
 void LLFloaterAutoReplaceSettings::onExportList()
-- 
cgit v1.2.3


From 70c6b0859578dfb04d8e53656a60f242240b9cbe Mon Sep 17 00:00:00 2001
From: Kelly Washington <kelly@lindenlab.com>
Date: Thu, 13 Dec 2012 08:44:22 -0800
Subject: MAINT-1995 Names of banned and allowed residents are not shown in
 Access tab of the About Land dialog Code by Richard, reviewed by merov and
 kelly

---
 indra/llui/llscrolllistctrl.cpp | 9 +++++++++
 1 file changed, 9 insertions(+)

(limited to 'indra')

diff --git a/indra/llui/llscrolllistctrl.cpp b/indra/llui/llscrolllistctrl.cpp
index 3e0653e9a4..5b0894b064 100644
--- a/indra/llui/llscrolllistctrl.cpp
+++ b/indra/llui/llscrolllistctrl.cpp
@@ -580,6 +580,15 @@ BOOL LLScrollListCtrl::addItem( LLScrollListItem* item, EAddPosition pos, BOOL r
 			addColumn(col_params);
 		}
 
+		S32 num_cols = item->getNumColumns();
+		S32 i = 0;
+		for (LLScrollListCell* cell = item->getColumn(i); i < num_cols; cell = item->getColumn(++i))
+		{
+			if (i >= (S32)mColumnsIndexed.size()) break;
+
+			cell->setWidth(mColumnsIndexed[i]->getWidth());
+		}
+
 		updateLineHeightInsert(item);
 
 		updateLayout();
-- 
cgit v1.2.3


From 00ebeaba581c5ed1686458502091ac8a30c75237 Mon Sep 17 00:00:00 2001
From: Kelly Washington <kelly@lindenlab.com>
Date: Thu, 13 Dec 2012 11:14:16 -0800
Subject: Fix line endings.

---
 indra/llui/llscrolllistctrl.cpp | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

(limited to 'indra')

diff --git a/indra/llui/llscrolllistctrl.cpp b/indra/llui/llscrolllistctrl.cpp
index 5b0894b064..d332aa933e 100644
--- a/indra/llui/llscrolllistctrl.cpp
+++ b/indra/llui/llscrolllistctrl.cpp
@@ -580,13 +580,13 @@ BOOL LLScrollListCtrl::addItem( LLScrollListItem* item, EAddPosition pos, BOOL r
 			addColumn(col_params);
 		}
 
-		S32 num_cols = item->getNumColumns();
-		S32 i = 0;
-		for (LLScrollListCell* cell = item->getColumn(i); i < num_cols; cell = item->getColumn(++i))
-		{
-			if (i >= (S32)mColumnsIndexed.size()) break;
-
-			cell->setWidth(mColumnsIndexed[i]->getWidth());
+		S32 num_cols = item->getNumColumns();
+		S32 i = 0;
+		for (LLScrollListCell* cell = item->getColumn(i); i < num_cols; cell = item->getColumn(++i))
+		{
+			if (i >= (S32)mColumnsIndexed.size()) break;
+
+			cell->setWidth(mColumnsIndexed[i]->getWidth());
 		}
 
 		updateLineHeightInsert(item);
-- 
cgit v1.2.3