From 43d918b7f3fe5652a20fe55bb09d27746d79a965 Mon Sep 17 00:00:00 2001
From: "Nyx (Neal Orman)" <nyx@lindenlab.com>
Date: Fri, 18 Dec 2009 15:04:21 -0500
Subject: EXT-3123 cannot decline save for newly created wearable

We weren't marking the initially loaded parameters of a
wearable created through the appearance editor as "saved"
so the client thought the wearable was dirty when it wasn't.
Added a call to mark all parameters as saved right before
sending the wearable to the server.

reviewed by Bigpapi
---
 indra/newview/llwearable.h       | 2 +-
 indra/newview/llwearablelist.cpp | 4 ++++
 2 files changed, 5 insertions(+), 1 deletion(-)

(limited to 'indra/newview')

diff --git a/indra/newview/llwearable.h b/indra/newview/llwearable.h
index 82d388ab7e..7a579b248e 100644
--- a/indra/newview/llwearable.h
+++ b/indra/newview/llwearable.h
@@ -127,6 +127,7 @@ public:
 	void 				setClothesColor( S32 te, const LLColor4& new_color, BOOL upload_bake );
 
 	void				revertValues();
+	void				saveValues();
 
 	BOOL				isOnTop() const;
 
@@ -143,7 +144,6 @@ private:
 
 	void 				createLayers(S32 te);
 	void 				createVisualParams();
-	void				saveValues();
 	void				syncImages(te_map_t &src, te_map_t &dst);
 	void				destroyTextures();			
 
diff --git a/indra/newview/llwearablelist.cpp b/indra/newview/llwearablelist.cpp
index bd7619f7e5..5636256856 100644
--- a/indra/newview/llwearablelist.cpp
+++ b/indra/newview/llwearablelist.cpp
@@ -249,9 +249,13 @@ LLWearable* LLWearableList::createNewWearable( EWearableType type )
 	wearable->setParamsToDefaults();
 	wearable->setTexturesToDefaults();
 
+	//mark all values (params & images) as saved
+	wearable->saveValues();
+
 	// Send to the dataserver
 	wearable->saveNewAsset();
 
+
 	return wearable;
 }
 
-- 
cgit v1.2.3