From a9d86c8133960635bc8a116f68348bf447a39690 Mon Sep 17 00:00:00 2001
From: Tofu Linden <tofu.linden@lindenlab.com>
Date: Thu, 28 Jan 2010 10:52:15 -0800
Subject: [PATCH] CID-378

Checker: UNINIT_CTOR
Function: LLFloaterJoystick::LLFloaterJoystick(const LLSD &)
File: /indra/newview/llfloaterjoystick.cpp
---
 indra/newview/llfloaterjoystick.cpp | 11 ++++++++---
 indra/newview/llfloaterjoystick.h   |  2 ++
 2 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/indra/newview/llfloaterjoystick.cpp b/indra/newview/llfloaterjoystick.cpp
index 06fe2a84c89..78bc63ac8c4 100644
--- a/indra/newview/llfloaterjoystick.cpp
+++ b/indra/newview/llfloaterjoystick.cpp
@@ -52,6 +52,7 @@ LLFloaterJoystick::LLFloaterJoystick(const LLSD& data)
 {
 	//Called from floater reg: LLUICtrlFactory::getInstance()->buildFloater(this, "floater_joystick.xml");
 
+	initFromSettings();
 }
 
 void LLFloaterJoystick::draw()
@@ -123,10 +124,8 @@ void LLFloaterJoystick::apply()
 {
 }
 
-void LLFloaterJoystick::refresh()
+void LLFloaterJoystick::initFromSettings()
 {
-	LLFloater::refresh();
-
 	mJoystickEnabled = gSavedSettings.getBOOL("JoystickEnabled");
 
 	mJoystickAxis[0] = gSavedSettings.getS32("JoystickAxis0");
@@ -194,6 +193,12 @@ void LLFloaterJoystick::refresh()
 	mFlycamFeathering = gSavedSettings.getF32("FlycamFeathering");
 }
 
+void LLFloaterJoystick::refresh()
+{
+	LLFloater::refresh();
+	initFromSettings();
+}
+
 void LLFloaterJoystick::cancel()
 {
 	gSavedSettings.setBOOL("JoystickEnabled", mJoystickEnabled);
diff --git a/indra/newview/llfloaterjoystick.h b/indra/newview/llfloaterjoystick.h
index f3559c28e9e..7a2f497c69f 100644
--- a/indra/newview/llfloaterjoystick.h
+++ b/indra/newview/llfloaterjoystick.h
@@ -55,6 +55,8 @@ class LLFloaterJoystick : public LLFloater
 
 	LLFloaterJoystick(const LLSD& data);
 	virtual ~LLFloaterJoystick();
+
+	void initFromSettings();
 	
 	static void onCommitJoystickEnabled(LLUICtrl*, void*);
 	static void onClickRestoreSNDefaults(void*);
-- 
GitLab