diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index 674923e88d86f022db3ac86ff93e616af30805bf..797b866724f94011cd587e32994603be589335a6 100644
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -5241,6 +5241,17 @@
       <key>Value</key>
       <integer>0</integer>
     </map>
+    <key>LastAppearanceTab</key>
+    <map>
+      <key>Comment</key>
+      <string>Last selected tab in appearance floater</string>
+      <key>Persist</key>
+      <integer>1</integer>
+      <key>Type</key>
+      <string>S32</string>
+      <key>Value</key>
+      <integer>0</integer>
+    </map>
     <key>LastMediaSettingsTab</key>
     <map>
       <key>Comment</key>
diff --git a/indra/newview/llpaneloutfitsinventory.cpp b/indra/newview/llpaneloutfitsinventory.cpp
index 3f700496a921ce69e4b6e74a357ca104707298c9..3a35c49007b0a2986b74e8a63786b069604f094d 100644
--- a/indra/newview/llpaneloutfitsinventory.cpp
+++ b/indra/newview/llpaneloutfitsinventory.cpp
@@ -42,6 +42,7 @@
 #include "llpanelwearing.h"
 #include "llsaveoutfitcombobtn.h"
 #include "llsidepanelappearance.h"
+#include "llviewercontrol.h"
 #include "llviewerfoldertype.h"
 
 static const std::string OUTFITS_TAB_NAME = "outfitslist_tab";
@@ -67,6 +68,10 @@ LLPanelOutfitsInventory::LLPanelOutfitsInventory() :
 
 LLPanelOutfitsInventory::~LLPanelOutfitsInventory()
 {
+	if (mAppearanceTabs)
+	{
+		gSavedSettings.setS32("LastAppearanceTab", mAppearanceTabs->getCurrentPanelIndex());
+	}
 }
 
 // virtual
@@ -87,6 +92,9 @@ BOOL LLPanelOutfitsInventory::postBuild()
 	
 	mSaveComboBtn.reset(new LLSaveOutfitComboBtn(this, true));
 
+	if (!mAppearanceTabs->selectTab(gSavedSettings.getS32("LastAppearanceTab")))
+		mAppearanceTabs->selectFirstTab();
+
 	return TRUE;
 }