diff --git a/indra/llmath/llinterp.h b/indra/llmath/llinterp.h
index 36ca2e98655716df965324273568f0cfd80f3b45..88af004170add8c0cf080c2ab37ff6c5e7e9824f 100644
--- a/indra/llmath/llinterp.h
+++ b/indra/llmath/llinterp.h
@@ -54,7 +54,7 @@ template <typename Type>
 class LLInterp
 {
 public:
-	LLInterp();
+        LLInterp();
 	virtual ~LLInterp() {}
 
 	virtual void start();
@@ -151,6 +151,7 @@ class LLInterpFunc : public LLInterp<Type>
 
 template <typename Type>
 LLInterp<Type>::LLInterp()
+: mStartVal(Type()), mEndVal(Type()), mCurVal(Type())
 {
 	mStartTime = 0.f;
 	mEndTime = 1.f;
diff --git a/indra/llprimitive/llprimitive.cpp b/indra/llprimitive/llprimitive.cpp
index 5ad758072c98bdce3827b5b2c71ba969c0c273e5..b75d1b0f678e024a087022b93d54262d0946885d 100644
--- a/indra/llprimitive/llprimitive.cpp
+++ b/indra/llprimitive/llprimitive.cpp
@@ -154,6 +154,7 @@ bool LLPrimitive::cleanupVolumeManager()
 //===============================================================
 LLPrimitive::LLPrimitive()
 :	mTextureList(),
+	mNumTEs(0),
 	mMiscFlags(0)
 {
 	mPrimitiveCode = 0;
diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp
index 79d8f90fec638a8b32c7d69aca9cf304d094330a..de46d89d6f7b075d50a0325b65038770b8da058d 100644
--- a/indra/llui/llfloater.cpp
+++ b/indra/llui/llfloater.cpp
@@ -1916,9 +1916,10 @@ static LLDefaultChildRegistry::Register<LLFloaterView> r("floater_view");
 
 LLFloaterView::LLFloaterView (const Params& p)
 :	LLUICtrl (p),
+
 	mFocusCycleMode(FALSE),
-	mSnapOffsetBottom(0)
-	,mSnapOffsetRight(0)
+	mSnapOffsetBottom(0),
+	mSnapOffsetRight(0)
 {
 }
 
diff --git a/indra/llui/llfloater.h b/indra/llui/llfloater.h
index f70495c0f03bf4d2fe4dcccbee615e1f239d5651..8c9dacbd207c67e1bb6381d23e5acc8fb8c426c6 100644
--- a/indra/llui/llfloater.h
+++ b/indra/llui/llfloater.h
@@ -468,9 +468,6 @@ class LLFloaterView : public LLUICtrl
 	void setSnapOffsetRight(S32 offset) { mSnapOffsetRight = offset; }
 
 private:
-	S32				mColumn;
-	S32				mNextLeft;
-	S32				mNextTop;
 	BOOL			mFocusCycleMode;
 	S32				mSnapOffsetBottom;
 	S32				mSnapOffsetRight;
diff --git a/indra/llui/llmenugl.cpp b/indra/llui/llmenugl.cpp
index ceb1e9820eb279338b0d15674924f5c4efd4a32d..7fa9a880591032c54e794a0afc5556bf876f6651 100644
--- a/indra/llui/llmenugl.cpp
+++ b/indra/llui/llmenugl.cpp
@@ -1651,6 +1651,7 @@ LLMenuGL::LLMenuGL(const LLMenuGL::Params& p)
 	mBackgroundColor( p.bg_color() ),
 	mBgVisible( p.bg_visible ),
 	mDropShadowed( p.drop_shadow ),
+	mHasSelection(false),
 	mHorizontalLayout( p.horizontal_layout ),
 	mScrollable(mHorizontalLayout ? FALSE : p.scrollable), // Scrolling is supported only for vertical layout
 	mMaxScrollableItems(p.max_scrollable_items),
@@ -2813,7 +2814,7 @@ BOOL LLMenuGL::handleHover( S32 x, S32 y, MASK mask )
 					((LLMenuItemGL*)viewp)->setHighlight(TRUE);
 					LLMenuGL::setKeyboardMode(FALSE);
 				}
-				mHasSelection = TRUE;
+				mHasSelection = true;
 			}
 		}
 	}
@@ -2892,7 +2893,7 @@ void LLMenuGL::setVisible(BOOL visible)
 		}
 		else
 		{
-			mHasSelection = FALSE;
+			mHasSelection = true;
 			mFadeTimer.stop();
 		}
 
diff --git a/indra/llui/llmenugl.h b/indra/llui/llmenugl.h
index 61e06f9e5f971ce47da5ff1b7859add610afead4..8441aaadd49ef419d870648691fc01279eaf2b2e 100644
--- a/indra/llui/llmenugl.h
+++ b/indra/llui/llmenugl.h
@@ -546,7 +546,7 @@ class LLMenuGL
 	LLHandle<LLView> mParentMenuItem;
 	LLUIString		mLabel;
 	BOOL mDropShadowed; 	//  Whether to drop shadow 
-	BOOL			mHasSelection;
+	bool			mHasSelection;
 	LLFrameTimer	mFadeTimer;
 	LLTimer			mScrollItemsTimer;
 	BOOL			mTornOff;
diff --git a/indra/llui/llstyle.cpp b/indra/llui/llstyle.cpp
index 71511f69a41307099f4d88c505c98c7b59c11d34..b8f93b6a0eaefb5cac94122f3352517bfec7569c 100644
--- a/indra/llui/llstyle.cpp
+++ b/indra/llui/llstyle.cpp
@@ -49,7 +49,10 @@ LLStyle::Params::Params()
 
 
 LLStyle::LLStyle(const LLStyle::Params& p)
-:	mVisible(p.visible),
+:	mItalic(FALSE),
+	mBold(FALSE),
+	mUnderline(FALSE),
+	mVisible(p.visible),
 	mColor(p.color()),
 	mReadOnlyColor(p.readonly_color()),
 	mFont(p.font()),
diff --git a/indra/llui/lltooltip.cpp b/indra/llui/lltooltip.cpp
index 01c7a81309c43b515684dbab7e159890c4d6b250..173fde8e766b17ab08e2a4c69e2253e70dec6e40 100644
--- a/indra/llui/lltooltip.cpp
+++ b/indra/llui/lltooltip.cpp
@@ -400,7 +400,8 @@ bool LLToolTip::hasClickCallback()
 //
 
 LLToolTipMgr::LLToolTipMgr()
-:	mToolTip(NULL),
+:       mToolTipsBlocked(false),
+	mToolTip(NULL),
 	mNeedsToolTip(false)
 {}
 
diff --git a/indra/llui/lluistring.h b/indra/llui/lluistring.h
index 7ec0fd603a1fd9ccba2f70ee6b7900ecddd8f0bc..32cfc0d9cd708838cd670c1ab4af0f16c1fdca29 100644
--- a/indra/llui/lluistring.h
+++ b/indra/llui/lluistring.h
@@ -64,7 +64,7 @@ class LLUIString
 public:
 	// These methods all perform appropriate argument substitution
 	// and modify mOrig where appropriate
-	LLUIString() {}
+        LLUIString() : mNeedsResult(false), mNeedsWResult(false) {}
 	LLUIString(const std::string& instring, const LLStringUtil::format_map_t& args);
 	LLUIString(const std::string& instring) { assign(instring); }
 
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index 1ef79aeec09c7aecea2078c3ca980be33cddb70c..f3bda19ed1f45174c75737ee421a3dfd170d2323 100644
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -2377,6 +2377,17 @@
       <key>Value</key>
       <integer>0</integer>
     </map>
+    <key>DisableMouseWarp</key>
+    <map>
+      <key>Comment</key>
+      <string>Disable warping of the mouse to the center of the screen during alt-zoom and mouse look. Useful with certain input devices, mouse sharing programs like Synergy, or running under Parallels.</string>
+      <key>Persist</key>
+      <integer>1</integer>
+      <key>Type</key>
+      <string>Boolean</string>
+      <key>Value</key>
+      <integer>0</integer>
+    </map>
     <key>DisableRendering</key>
     <map>
       <key>Comment</key>
diff --git a/indra/newview/llchathistory.cpp b/indra/newview/llchathistory.cpp
index 2cdbd18996cbfe6a1443532b08dfc33be2a2b4b6..f1e7e622b374b1b0225c01ec4ae436a199433960 100644
--- a/indra/newview/llchathistory.cpp
+++ b/indra/newview/llchathistory.cpp
@@ -36,6 +36,7 @@
 
 #include "llimview.h"
 #include "llchathistory.h"
+#include "llcommandhandler.h"
 #include "llpanel.h"
 #include "lluictrlfactory.h"
 #include "llscrollcontainer.h"
@@ -47,8 +48,11 @@
 #include "llfloaterreg.h"
 #include "llmutelist.h"
 #include "llstylemap.h"
+#include "llslurl.h"
 #include "lllayoutstack.h"
 #include "llagent.h"
+#include "llviewerregion.h"
+#include "llworld.h"
 
 #include "llsidetray.h"//for blocked objects panel
 
@@ -56,6 +60,38 @@ static LLDefaultChildRegistry::Register<LLChatHistory> r("chat_history");
 
 const static std::string NEW_LINE(rawstr_to_utf8("\n"));
 
+// support for secondlife:///app/objectim/{UUID}/ SLapps
+class LLObjectIMHandler : public LLCommandHandler
+{
+public:
+	// requests will be throttled from a non-trusted browser
+	LLObjectIMHandler() : LLCommandHandler("objectim", UNTRUSTED_THROTTLE) {}
+
+	bool handle(const LLSD& params, const LLSD& query_map, LLMediaCtrl* web)
+	{
+		if (params.size() < 1)
+		{
+			return false;
+		}
+
+		LLUUID object_id;
+		if (!object_id.set(params[0], FALSE))
+		{
+			return false;
+		}
+
+		LLSD payload;
+		payload["object_id"] = object_id;
+		payload["owner_id"] = query_map["owner"];
+		payload["name"] = query_map["name"];
+		payload["slurl"] = query_map["slurl"];
+		payload["group_owned"] = query_map["groupowned"];
+		LLFloaterReg::showInstance("inspect_remote_object", payload);
+		return true;
+	}
+};
+LLObjectIMHandler gObjectIMHandler;
+
 class LLChatHistoryHeader: public LLPanel
 {
 public:
@@ -465,8 +501,9 @@ void LLChatHistory::clear()
 	mLastFromID = LLUUID::null;
 }
 
-void LLChatHistory::appendMessage(const LLChat& chat, const bool use_plain_text_chat_history, const LLStyle::Params& input_append_params)
+void LLChatHistory::appendMessage(const LLChat& chat, const LLSD &args, const LLStyle::Params& input_append_params)
 {
+	bool use_plain_text_chat_history = args["use_plain_text_chat_history"].asBoolean();
 	if (!mEditor->scrolledToEnd() && chat.mFromID != gAgent.getID() && !chat.mFromName.empty())
 	{
 		mUnreadChatSources.insert(chat.mFromName);
@@ -532,7 +569,28 @@ void LLChatHistory::appendMessage(const LLChat& chat, const bool use_plain_text_
 		if (utf8str_trim(chat.mFromName).size() != 0)
 		{
 			// Don't hotlink any messages from the system (e.g. "Second Life:"), so just add those in plain text.
-			if ( chat.mFromName != SYSTEM_FROM && chat.mFromID.notNull() )
+			if ( chat.mSourceType == CHAT_SOURCE_OBJECT )
+			{
+				// for object IMs, create a secondlife:///app/objectim SLapp
+				std::string url = LLSLURL::buildCommand("objectim", chat.mFromID, "");
+				url += "?name=" + chat.mFromName;
+				url += "&owner=" + args["owner_id"].asString();
+
+				LLViewerRegion *region = LLWorld::getInstance()->getRegionFromPosAgent(chat.mPosAgent);
+				if (region)
+				{
+					S32 x, y, z;
+					LLSLURL::globalPosToXYZ(LLVector3d(chat.mPosAgent), x, y, z);
+					url += "&slurl=" + region->getName() + llformat("/%d/%d/%d", x, y, z);
+				}
+
+				// set the link for the object name to be the objectim SLapp
+				LLStyle::Params link_params(style_params);
+				link_params.color.control = "HTMLLinkColor";
+				link_params.link_href = url;
+				mEditor->appendText(chat.mFromName + delimiter, false, link_params);
+			}
+			else if ( chat.mFromName != SYSTEM_FROM && chat.mFromID.notNull() )
 			{
 				LLStyle::Params link_params(style_params);
 				link_params.fillFrom(LLStyleMap::instance().lookupAgent(chat.mFromID));
diff --git a/indra/newview/llchathistory.h b/indra/newview/llchathistory.h
index c2c60e60cf9fd64b8e07fec0c97c013574dbde16..32600bb71d0daa767dc145f665d5bb4e56e2e629 100644
--- a/indra/newview/llchathistory.h
+++ b/indra/newview/llchathistory.h
@@ -113,11 +113,14 @@ class LLChatHistory : public LLUICtrl
 		 * Appends a widget message.
 		 * If last user appended message, concurs with current user,
 		 * separator is added before the message, otherwise header is added.
+		 * The args LLSD contains:
+		 * - use_plain_text_chat_history (bool) - whether to add message as plain text.
+		 * - owner_id (LLUUID) - the owner ID for object chat
 		 * @param chat - base chat message.
-		 * @param use_plain_text_chat_history  - whether to add message as plain text.
+		 * @param args - additional arguments
 		 * @param input_append_params - font style.
 		 */
-		void appendMessage(const LLChat& chat, const bool use_plain_text_chat_history = false, const LLStyle::Params& input_append_params = LLStyle::Params());
+		void appendMessage(const LLChat& chat, const LLSD &args = LLSD(), const LLStyle::Params& input_append_params = LLStyle::Params());
 		/*virtual*/ void clear();
 		/*virtual*/ void reshape(S32 width, S32 height, BOOL called_from_parent = TRUE);
 
diff --git a/indra/newview/llcompilequeue.cpp b/indra/newview/llcompilequeue.cpp
index 5c05a541204800bdb98c951fc04c46b6db01a7f7..a96981a1083e3544ac9d2282c67b4116e4e45548 100644
--- a/indra/newview/llcompilequeue.cpp
+++ b/indra/newview/llcompilequeue.cpp
@@ -92,7 +92,8 @@ struct LLScriptQueueData
 // Default constructor
 LLFloaterScriptQueue::LLFloaterScriptQueue(const LLSD& key) :
 	LLFloater(key),
-	mDone(FALSE)
+	mDone(false),
+	mMono(false)
 {
 	//Called from floater reg: LLUICtrlFactory::getInstance()->buildFloater(this,"floater_script_queue.xml", FALSE);
 }
@@ -216,7 +217,7 @@ BOOL LLFloaterScriptQueue::nextObject()
 	} while((mObjectIDs.count() > 0) && !successful_start);
 	if(isDone() && !mDone)
 	{
-		mDone = TRUE;
+		mDone = true;
 		getChild<LLScrollListCtrl>("queue output")->setCommentText(getString("Done"));
 		childSetEnabled("close",TRUE);
 	}
diff --git a/indra/newview/llcompilequeue.h b/indra/newview/llcompilequeue.h
index 063d573239300be7b3c11fd94665ec7be8ba36aa..2d061f5d8a2e96b66dbaf11beff65dd61d029464 100644
--- a/indra/newview/llcompilequeue.h
+++ b/indra/newview/llcompilequeue.h
@@ -104,10 +104,10 @@ class LLFloaterScriptQueue : public LLFloater, public LLVOInventoryListener
 	// Object Queue
 	LLDynamicArray<LLUUID> mObjectIDs;
 	LLUUID mCurrentObjectID;
-	BOOL mDone;
+	bool mDone;
 
 	std::string mStartString;
-	BOOL mMono;
+	bool mMono;
 };
 
 //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
diff --git a/indra/newview/lleventnotifier.cpp b/indra/newview/lleventnotifier.cpp
index edfb9dc864fb78f9e1ee81d40a82dcca42cad211..f096ba604fc9d271d7355a8c0c6f42868750e5c0 100644
--- a/indra/newview/lleventnotifier.cpp
+++ b/indra/newview/lleventnotifier.cpp
@@ -174,6 +174,7 @@ void LLEventNotifier::remove(const U32 event_id)
 
 LLEventNotification::LLEventNotification() :
 	mEventID(0),
+	mEventDate(0),
 	mEventName("")
 {
 }
diff --git a/indra/newview/llfloateranimpreview.h b/indra/newview/llfloateranimpreview.h
index dd2c0b809ae2f1ef3fe22906d3cf7156658eb7f6..3ee1f419ab26d983bdcd84bb065b4a9c03450a22 100644
--- a/indra/newview/llfloateranimpreview.h
+++ b/indra/newview/llfloateranimpreview.h
@@ -127,7 +127,6 @@ class LLFloaterAnimPreview : public LLFloaterNameDesc
 	LLRectf				mPreviewImageRect;
 	LLAssetID			mMotionID;
 	LLTransactionID		mTransactionID;
-	BOOL				mEnabled;
 	LLAnimPauseRequest	mPauseRequest;
 
 	std::map<std::string, LLUUID>	mIDList;
diff --git a/indra/newview/llfloaterhardwaresettings.cpp b/indra/newview/llfloaterhardwaresettings.cpp
index 31b494b590d0c1581a4c4cbf233b694d64f9677a..b2564eb2b65ea39d640915537454f4ee9ae30d5e 100644
--- a/indra/newview/llfloaterhardwaresettings.cpp
+++ b/indra/newview/llfloaterhardwaresettings.cpp
@@ -50,7 +50,17 @@
 #include "llsliderctrl.h"
 
 LLFloaterHardwareSettings::LLFloaterHardwareSettings(const LLSD& key)
-  : LLFloater(key)
+	: LLFloater(key),
+
+	  // these should be set on imminent refresh() call,
+	  // but init them anyway
+	  mUseVBO(0),
+	  mUseAniso(0),
+	  mFSAASamples(0),
+	  mGamma(0.0),
+	  mVideoCardMem(0),
+	  mFogRatio(0.0),
+	  mProbeHardwareOnStartup(FALSE)
 {
 	//LLUICtrlFactory::getInstance()->buildFloater(this, "floater_hardware_settings.xml");
 }
diff --git a/indra/newview/llfloaterjoystick.cpp b/indra/newview/llfloaterjoystick.cpp
index 06fe2a84c8908d05000d928aa5196373540589b8..78bc63ac8c47fe827dc3fe2668cb42f16fdfa5b4 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 f3559c28e9e3e1914046000c7ef6b45687997409..7a2f497c69ff515c898b7b64a38b81dfda43c08a 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*);
diff --git a/indra/newview/llfloatersnapshot.cpp b/indra/newview/llfloatersnapshot.cpp
index afb58c940740afbd5ccd3c3342bb9c0bd3781c5d..94c7ff6f947cf304f36915adfc2fef7d61b460ad 100644
--- a/indra/newview/llfloatersnapshot.cpp
+++ b/indra/newview/llfloatersnapshot.cpp
@@ -1028,7 +1028,8 @@ class LLFloaterSnapshot::Impl
 public:
 	Impl()
 	:	mAvatarPauseHandles(),
-		mLastToolset(NULL)
+		mLastToolset(NULL),
+		mAspectRatioCheckOff(false)
 	{
 	}
 	~Impl()
@@ -1079,7 +1080,7 @@ class LLFloaterSnapshot::Impl
 
 	LLToolset*	mLastToolset;
 	LLHandle<LLView> mPreviewHandle;
-	BOOL mAspectRatioCheckOff ;
+	bool mAspectRatioCheckOff ;
 };
 
 // static
@@ -1606,7 +1607,7 @@ void LLFloaterSnapshot::Impl::checkAspectRatio(LLFloaterSnapshot *view, S32 inde
 	
 	if(0 == index) //current window size
 	{
-		view->impl.mAspectRatioCheckOff = TRUE ;
+		view->impl.mAspectRatioCheckOff = true ;
 		view->childSetEnabled("keep_aspect_check", FALSE) ;
 
 		if(previewp)
@@ -1616,7 +1617,7 @@ void LLFloaterSnapshot::Impl::checkAspectRatio(LLFloaterSnapshot *view, S32 inde
 	}
 	else if(-1 == index) //custom
 	{
-		view->impl.mAspectRatioCheckOff = FALSE ;
+		view->impl.mAspectRatioCheckOff = false ;
 		//if(LLSnapshotLivePreview::SNAPSHOT_TEXTURE != gSavedSettings.getS32("LastSnapshotType"))
 		{
 			view->childSetEnabled("keep_aspect_check", TRUE) ;
@@ -1629,7 +1630,7 @@ void LLFloaterSnapshot::Impl::checkAspectRatio(LLFloaterSnapshot *view, S32 inde
 	}
 	else
 	{
-		view->impl.mAspectRatioCheckOff = TRUE ;
+		view->impl.mAspectRatioCheckOff = true ;
 		view->childSetEnabled("keep_aspect_check", FALSE) ;
 
 		if(previewp)
diff --git a/indra/newview/llimview.cpp b/indra/newview/llimview.cpp
index 675f73d43e59c798efa9b898d99d9ebc9e22a5be..80d277893470d2309f5e7bfb054a29d46456d6a8 100644
--- a/indra/newview/llimview.cpp
+++ b/indra/newview/llimview.cpp
@@ -1461,9 +1461,11 @@ void LLCallDialogManager::onVoiceChannelStateChanged(const LLVoiceChannel::EStat
 //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 // Class LLCallDialog
 //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-LLCallDialog::LLCallDialog(const LLSD& payload) :
-LLDockableFloater(NULL, false, payload),
-mPayload(payload)
+LLCallDialog::LLCallDialog(const LLSD& payload)
+	: LLDockableFloater(NULL, false, payload),
+
+	  mPayload(payload),
+	  mLifetime(DEFAULT_LIFETIME)
 {
 }
 
diff --git a/indra/newview/llinspectremoteobject.cpp b/indra/newview/llinspectremoteobject.cpp
index e4d2eec242bf8bd846498aee5379b449b66a7335..898f1cd9acd7e3380d6c98d16fe8773cab67c89a 100644
--- a/indra/newview/llinspectremoteobject.cpp
+++ b/indra/newview/llinspectremoteobject.cpp
@@ -31,17 +31,16 @@
 
 #include "llviewerprecompiledheaders.h"
 
+#include "llfloaterreg.h"
 #include "llinspectremoteobject.h"
 #include "llinspect.h"
-#include "llslurl.h"
 #include "llmutelist.h"
-#include "llurlaction.h"
 #include "llpanelblockedlist.h"
-#include "llfloaterreg.h"
+#include "llslurl.h"
+#include "lltrans.h"
 #include "llui.h"
 #include "lluictrl.h"
-
-class LLViewerObject;
+#include "llurlaction.h"
 
 //////////////////////////////////////////////////////////////////////////////
 // LLInspectRemoteObject
@@ -183,11 +182,25 @@ void LLInspectRemoteObject::update()
 			owner = LLSLURL::buildCommand("agent", mOwnerID, "about");
 		}
 	}
+	else
+	{
+		owner = LLTrans::getString("Unknown");
+	}
 	getChild<LLUICtrl>("object_owner")->setValue(owner);
 
 	// display the object's SLurl - click it to teleport
-	std::string url = "secondlife:///app/teleport/" + mSLurl;
+	std::string url;
+	if (! mSLurl.empty())
+	{
+		std::string url = "secondlife:///app/teleport/" + mSLurl;
+	}
 	getChild<LLUICtrl>("object_slurl")->setValue(url);
+
+	// disable the Map button if we don't have a SLurl
+	getChild<LLUICtrl>("map_btn")->setEnabled(! mSLurl.empty());
+
+	// disable the Block button if we don't have the owner ID
+	getChild<LLUICtrl>("block_btn")->setEnabled(! mOwnerID.isNull());
 }
 
 //////////////////////////////////////////////////////////////////////////////
diff --git a/indra/newview/llinventorymodel.cpp b/indra/newview/llinventorymodel.cpp
index 9e96bbc55f4b23ecf53cd64574ccb1dddcaf4cb5..bdf1ebddac2bc9d155498b820921a24148781bf6 100644
--- a/indra/newview/llinventorymodel.cpp
+++ b/indra/newview/llinventorymodel.cpp
@@ -225,7 +225,7 @@ namespace LMSortPrefix
 
 			// mark item completed to avoid error while copying and updating server
 			inv_item->setComplete(TRUE);
-			LLPointer<LLViewerInventoryItem> new_item = new LLViewerInventoryItem(inv_item);
+			LLPointer<LLViewerInventoryItem> new_item = new LLViewerInventoryItem(inv_item.get());
 			new_item->rename(display_name);
 			gInventory.updateItem(new_item);
 			new_item->updateServer(FALSE);
diff --git a/indra/newview/lllocationhistory.cpp b/indra/newview/lllocationhistory.cpp
index 47139758e59eeb60b0df31578fdefb6affc2cc4c..df93930d33a87744807f2a3fab29035cfcbc5315 100644
--- a/indra/newview/lllocationhistory.cpp
+++ b/indra/newview/lllocationhistory.cpp
@@ -62,7 +62,7 @@ void LLLocationHistory::addItem(const LLLocationHistoryItem& item) {
 	{
 		mItems.erase(mItems.begin(), mItems.end()-max_items);
 	}
-	llassert((S32) mItems.size() <= max_items);
+	llassert((S32)mItems.size() <= max_items);
 }
 
 /*
diff --git a/indra/newview/llmanipscale.cpp b/indra/newview/llmanipscale.cpp
index 84a5eb7352be56a0cc3b16e0cefeb23f3a27c64b..ee3ffa2450af3b951bd364418ab68dc892f6fdbd 100644
--- a/indra/newview/llmanipscale.cpp
+++ b/indra/newview/llmanipscale.cpp
@@ -180,6 +180,7 @@ LLManipScale::LLManipScale( LLToolComposite* composite )
 	mScaleSnapUnit2(1.f),
 	mSnapRegimeOffset(0.f),
 	mSnapGuideLength(0.f),
+	mInSnapRegime(FALSE),
 	mScaleSnapValue(0.f)
 { 
 	mManipulatorScales = new F32[NUM_MANIPULATORS];
diff --git a/indra/newview/llmaniptranslate.cpp b/indra/newview/llmaniptranslate.cpp
index 5f30ab4e0150b04ad54fdb77c2387be21703b0c7..52fe31fbbac33768280f90f01624000aa8fd7eca 100644
--- a/indra/newview/llmaniptranslate.cpp
+++ b/indra/newview/llmaniptranslate.cpp
@@ -123,9 +123,13 @@ LLManipTranslate::LLManipTranslate( LLToolComposite* composite )
 	mAxisArrowLength(50),
 	mConeSize(0),
 	mArrowLengthMeters(0.f),
+	mGridSizeMeters(1.f),
 	mPlaneManipOffsetMeters(0.f),
 	mUpdateTimer(),
 	mSnapOffsetMeters(0.f),
+	mSubdivisions(10.f),
+	mInSnapRegime(FALSE),
+	mSnapped(FALSE),
 	mArrowScales(1.f, 1.f, 1.f),
 	mPlaneScales(1.f, 1.f, 1.f),
 	mPlaneManipPositions(1.f, 1.f, 1.f, 1.f)
diff --git a/indra/newview/llnearbychat.cpp b/indra/newview/llnearbychat.cpp
index 0a8d020b4fffeaf92defc9c40f19a7cb0be7ad3b..90482eb74d4005086a1b9876a4aa73b006041701 100644
--- a/indra/newview/llnearbychat.cpp
+++ b/indra/newview/llnearbychat.cpp
@@ -153,7 +153,7 @@ std::string appendTime()
 }
 
 
-void	LLNearbyChat::addMessage(const LLChat& chat,bool archive)
+void	LLNearbyChat::addMessage(const LLChat& chat,bool archive,const LLSD &args)
 {
 	if (chat.mChatType == CHAT_TYPE_DEBUG_MSG)
 	{
@@ -184,7 +184,9 @@ void	LLNearbyChat::addMessage(const LLChat& chat,bool archive)
 	if (!chat.mMuted)
 	{
 		tmp_chat.mFromName = chat.mFromName;
-		mChatHistory->appendMessage(chat, use_plain_text_chat_history);
+		LLSD chat_args = args;
+		chat_args["use_plain_text_chat_history"] = use_plain_text_chat_history;
+		mChatHistory->appendMessage(chat, chat_args);
 	}
 
 	if(archive)
diff --git a/indra/newview/llnearbychat.h b/indra/newview/llnearbychat.h
index 938b77df7ac8c15500c6cbbadab2a8001bdd809b..5fb8ade19e77e93f949836caabc9bbd696c2a13c 100644
--- a/indra/newview/llnearbychat.h
+++ b/indra/newview/llnearbychat.h
@@ -47,7 +47,7 @@ class LLNearbyChat: public LLDockableFloater
 	~LLNearbyChat();
 
 	BOOL	postBuild			();
-	void	addMessage			(const LLChat& message,bool archive = true);	
+	void	addMessage			(const LLChat& message,bool archive = true, const LLSD &args = LLSD());	
 	void	onNearbyChatContextMenuItemClicked(const LLSD& userdata);
 	bool	onNearbyChatCheckContextMenuItem(const LLSD& userdata);
 
diff --git a/indra/newview/llnearbychathandler.cpp b/indra/newview/llnearbychathandler.cpp
index a1a9d84c14be807ed7d6543ed267cbcd6906d653..c08ca30babec38c30f5b5f395249ecd0b095c939 100644
--- a/indra/newview/llnearbychathandler.cpp
+++ b/indra/newview/llnearbychathandler.cpp
@@ -319,7 +319,7 @@ void LLNearbyChatHandler::initChannel()
 
 
 
-void LLNearbyChatHandler::processChat(const LLChat& chat_msg)
+void LLNearbyChatHandler::processChat(const LLChat& chat_msg, const LLSD &args)
 {
 	if(chat_msg.mMuted == TRUE)
 		return;
@@ -337,7 +337,7 @@ void LLNearbyChatHandler::processChat(const LLChat& chat_msg)
 		//if(tmp_chat.mFromName.empty() && tmp_chat.mFromID!= LLUUID::null)
 		//	tmp_chat.mFromName = tmp_chat.mFromID.asString();
 	}
-	nearby_chat->addMessage(chat_msg);
+	nearby_chat->addMessage(chat_msg, true, args);
 	if(nearby_chat->getVisible())
 		return;//no need in toast if chat is visible
 
diff --git a/indra/newview/llnearbychathandler.h b/indra/newview/llnearbychathandler.h
index fb2abac6a4761d7d45635e568beffd951b8bf024..01a6de56103e735b7a7c901113733b5b28d13955 100644
--- a/indra/newview/llnearbychathandler.h
+++ b/indra/newview/llnearbychathandler.h
@@ -45,7 +45,7 @@ class LLNearbyChatHandler : public LLChatHandler
 	virtual ~LLNearbyChatHandler();
 
 
-	virtual void processChat(const LLChat& chat_msg);
+	virtual void processChat(const LLChat& chat_msg, const LLSD &args);
 
 protected:
 	virtual void onDeleteToast(LLToast* toast);
diff --git a/indra/newview/llnotificationhandler.h b/indra/newview/llnotificationhandler.h
index 0fb438bfe98804e1f047fbe4f2dec3d3410f563f..e57674d31c781a843f6ea92e2c14821ce3cf3d27 100644
--- a/indra/newview/llnotificationhandler.h
+++ b/indra/newview/llnotificationhandler.h
@@ -135,7 +135,7 @@ class LLChatHandler : public LLEventHandler
 public:
 	virtual ~LLChatHandler() {};
 
-	virtual void processChat(const LLChat& chat_msg)=0;
+	virtual void processChat(const LLChat& chat_msg, const LLSD &args)=0;
 };
 
 /**
diff --git a/indra/newview/llnotificationmanager.cpp b/indra/newview/llnotificationmanager.cpp
index 66bc217d1586323f8263f7379b782fd8300e7661..4401bb953f9568e66a38fd18549bf02571fbea03 100644
--- a/indra/newview/llnotificationmanager.cpp
+++ b/indra/newview/llnotificationmanager.cpp
@@ -107,16 +107,17 @@ bool LLNotificationManager::onNotification(const LLSD& notify)
 }
 
 //--------------------------------------------------------------------------
-void LLNotificationManager::onChat(const LLChat& msg,ENotificationType type)
+void LLNotificationManager::onChat(const LLChat& msg, const LLSD &args)
 {
-	switch(type)
+	// check ENotificationType argument
+	switch(args["type"].asInteger())
 	{
 	case NT_NEARBYCHAT:
 		{
 			LLNearbyChatHandler* handle = dynamic_cast<LLNearbyChatHandler*>(mNotifyHandlers["nearbychat"].get());
 
 			if(handle)
-				handle->processChat(msg);
+				handle->processChat(msg, args);
 		}
 		break;
 	default: 	//no need to handle all enum types
diff --git a/indra/newview/llnotificationmanager.h b/indra/newview/llnotificationmanager.h
index 072fc6f24c3dbe9a0e77715060afaeb29ab19605..575aa69c4d3ae013592d4f9c35d6070f32302ca9 100644
--- a/indra/newview/llnotificationmanager.h
+++ b/indra/newview/llnotificationmanager.h
@@ -66,7 +66,7 @@ class LLNotificationManager : public LLSingleton<LLNotificationManager>
 	bool onNotification(const LLSD& notification);
 
 	// this method reacts on chat notifications and calls an appropriate handler
-	void onChat(const LLChat& msg,ENotificationType type);
+	void onChat(const LLChat& msg, const LLSD &args);
 
 	// get a handler for a certain type of notification
 	LLEventHandler* getHandlerForNotification(std::string notification_type);
diff --git a/indra/newview/llselectmgr.cpp b/indra/newview/llselectmgr.cpp
index 6f76715e732d3871cfc3bb3ccf65ac3a03288c46..bf08756051047d57650a132eb00791e4ca523ea2 100644
--- a/indra/newview/llselectmgr.cpp
+++ b/indra/newview/llselectmgr.cpp
@@ -218,7 +218,8 @@ LLSelectMgr::LLSelectMgr()
 	mHoverObjects = new LLObjectSelection();
 	mHighlightedObjects = new LLObjectSelection();
 
-
+	mForceSelection = FALSE;
+	mShowSelection = FALSE;
 }
 
 
diff --git a/indra/newview/lltoastalertpanel.cpp b/indra/newview/lltoastalertpanel.cpp
index c3ccb9380b0b9b9af158313f699bf147e87209a6..da31bb3e73cd8237a9aee37524ba3aceb30343bb 100644
--- a/indra/newview/lltoastalertpanel.cpp
+++ b/indra/newview/lltoastalertpanel.cpp
@@ -170,6 +170,7 @@ LLToastAlertPanel::LLToastAlertPanel( LLNotificationPtr notification, bool modal
 	params.tab_stop(false);
 	params.wrap(true);
 	params.follows.flags(FOLLOWS_LEFT | FOLLOWS_TOP);
+	params.allow_html(false);
 
 	LLTextBox * msg_box = LLUICtrlFactory::create<LLTextBox> (params);
 	// Compute max allowable height for the dialog text, so we can allocate
diff --git a/indra/newview/lltoolgrab.cpp b/indra/newview/lltoolgrab.cpp
index 26dbe6a489066456d7b89d33121deb6227f8c25b..d837a334f17c0c44692f4abc74d933a89710087b 100644
--- a/indra/newview/lltoolgrab.cpp
+++ b/indra/newview/lltoolgrab.cpp
@@ -78,9 +78,15 @@ LLToolGrab::LLToolGrab( LLToolComposite* composite )
 :	LLTool( std::string("Grab"), composite ),
 	mMode( GRAB_INACTIVE ),
 	mVerticalDragging( FALSE ),
+	mHitLand(FALSE),
+	mLastMouseX(0),
+	mLastMouseY(0),
+	mAccumDeltaX(0),
+	mAccumDeltaY(0),	
 	mHasMoved( FALSE ),
 	mOutsideSlop(FALSE),
 	mDeselectedThisClick(FALSE),
+	mLastFace(0),
 	mSpinGrabbing( FALSE ),
 	mSpinRotation(),
 	mHideBuildHighlight(FALSE)
diff --git a/indra/newview/llviewerjoint.cpp b/indra/newview/llviewerjoint.cpp
index c425d95ff807f728745196885c91bfb30491b523..95f05b5f5f9c634052701b7fce45d5ef0b166dbe 100644
--- a/indra/newview/llviewerjoint.cpp
+++ b/indra/newview/llviewerjoint.cpp
@@ -59,14 +59,9 @@ BOOL					LLViewerJoint::sDisableLOD = FALSE;
 // Class Constructor
 //-----------------------------------------------------------------------------
 LLViewerJoint::LLViewerJoint()
+	:       LLJoint()
 {
-	mUpdateXform = TRUE;
-	mValid = FALSE;
-	mComponents = SC_JOINT | SC_BONE | SC_AXES;
-	mMinPixelArea = DEFAULT_LOD;
-	mPickName = PN_DEFAULT;
-	mVisible = TRUE;
-	mMeshID = 0;
+	init();
 }
 
 
@@ -74,13 +69,21 @@ LLViewerJoint::LLViewerJoint()
 // LLViewerJoint()
 // Class Constructor
 //-----------------------------------------------------------------------------
-LLViewerJoint::LLViewerJoint(const std::string &name, LLJoint *parent) :
-	LLJoint(name, parent)
+LLViewerJoint::LLViewerJoint(const std::string &name, LLJoint *parent)
+	:	LLJoint(name, parent)
+{
+	init();
+}
+
+
+void LLViewerJoint::init()
 {
 	mValid = FALSE;
 	mComponents = SC_JOINT | SC_BONE | SC_AXES;
 	mMinPixelArea = DEFAULT_LOD;
 	mPickName = PN_DEFAULT;
+	mVisible = TRUE;
+	mMeshID = 0;
 }
 
 
diff --git a/indra/newview/llviewerjoint.h b/indra/newview/llviewerjoint.h
index 08c4ec36fdedd3a90e5b59b8e9df377dbd584096..0d3092a0447e6fe976866bc4462452803b063060 100644
--- a/indra/newview/llviewerjoint.h
+++ b/indra/newview/llviewerjoint.h
@@ -142,6 +142,8 @@ class LLViewerJoint :
 	void setMeshID( S32 id ) {mMeshID = id;}
 
 protected:
+	void init();
+
 	BOOL		mValid;
 	U32			mComponents;
 	F32			mMinPixelArea;
diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp
index 25206a5f52f29fc9efb00ae429637db28d884846..55b0d6fa8bd5006d0b75f514b9d3db8a1e47cefa 100644
--- a/indra/newview/llviewermessage.cpp
+++ b/indra/newview/llviewermessage.cpp
@@ -2213,7 +2213,7 @@ void process_improved_im(LLMessageSystem *msg, void **user_data)
 			payload["SESSION_NAME"] = session_name;
 			if (from_group)
 			{
-				payload["groupowned"] = "true";
+				payload["group_owned"] = "true";
 			}
 			LLNotificationsUtil::add("ServerObjectMessage", substitutions, payload);
 		}
@@ -2515,7 +2515,7 @@ void process_chat_from_simulator(LLMessageSystem *msg, void **user_data)
 	
 	// Object owner for objects
 	msg->getUUID("ChatData", "OwnerID", owner_id);
-	
+
 	msg->getU8Fast(_PREHASH_ChatData, _PREHASH_SourceType, source_temp);
 	chat.mSourceType = (EChatSourceType)source_temp;
 
@@ -2544,7 +2544,7 @@ void process_chat_from_simulator(LLMessageSystem *msg, void **user_data)
 	if (chatter)
 	{
 		chat.mPosAgent = chatter->getPositionAgent();
-		
+
 		// Make swirly things only for talking objects. (not script debug messages, though)
 		if (chat.mSourceType == CHAT_SOURCE_OBJECT 
 			&& chat.mChatType != CHAT_TYPE_DEBUG_MSG)
@@ -2689,8 +2689,13 @@ void process_chat_from_simulator(LLMessageSystem *msg, void **user_data)
 
 		chat.mMuted = is_muted && !is_linden;
 
-		LLNotificationsUI::LLNotificationManager::instance().onChat(
-					chat, LLNotificationsUI::NT_NEARBYCHAT);
+		// pass owner_id to chat so that we can display the remote
+		// object inspect for an object that is chatting with you
+		LLSD args;
+		args["type"] = LLNotificationsUI::NT_NEARBYCHAT;
+		args["owner_id"] = owner_id;
+
+		LLNotificationsUI::LLNotificationManager::instance().onChat(chat, args);
 	}
 }
 
diff --git a/indra/newview/llviewermessage.h b/indra/newview/llviewermessage.h
index 8404d6fde026b097b038ebcbd87077c76142e0a7..1415c16090e932610a589f38e84bc55b5b8c7cd7 100644
--- a/indra/newview/llviewermessage.h
+++ b/indra/newview/llviewermessage.h
@@ -205,7 +205,9 @@ void open_inventory_offer(const std::vector<LLUUID>& items, const std::string& f
 
 struct LLOfferInfo
 {
-	LLOfferInfo() {};
+        LLOfferInfo()
+	:	mFromGroup(FALSE), mFromObject(FALSE),
+		mIM(IM_NOTHING_SPECIAL), mType(LLAssetType::AT_NONE) {};
 	LLOfferInfo(const LLSD& sd);
 
 	void forceResponse(InventoryOfferResponse response);
diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp
index c70b830782245f7a362f76560aba8c4008769b62..cd6b9e2c502772279bd41a92beb2ad75e026785a 100644
--- a/indra/newview/llviewerwindow.cpp
+++ b/indra/newview/llviewerwindow.cpp
@@ -2262,15 +2262,18 @@ void LLViewerWindow::handleScrollWheel(S32 clicks)
 
 void LLViewerWindow::moveCursorToCenter()
 {
-	S32 x = getWorldViewWidthScaled() / 2;
-	S32 y = getWorldViewHeightScaled() / 2;
+	if (! gSavedSettings.getBOOL("DisableMouseWarp"))
+	{
+		S32 x = getWorldViewWidthScaled() / 2;
+		S32 y = getWorldViewHeightScaled() / 2;
 	
-	//on a forced move, all deltas get zeroed out to prevent jumping
-	mCurrentMousePoint.set(x,y);
-	mLastMousePoint.set(x,y);
-	mCurrentMouseDelta.set(0,0);	
+		//on a forced move, all deltas get zeroed out to prevent jumping
+		mCurrentMousePoint.set(x,y);
+		mLastMousePoint.set(x,y);
+		mCurrentMouseDelta.set(0,0);	
 
-	LLUI::setMousePositionScreen(x, y);	
+		LLUI::setMousePositionScreen(x, y);	
+	}
 }
 
 
diff --git a/indra/newview/llvoiceclient.cpp b/indra/newview/llvoiceclient.cpp
index 02a2d8c8cfe60d243fbd1e54f1ac0e999e7bdd9f..560c2ab469e3d5b9c2de04c091f62a9d5d6de564 100644
--- a/indra/newview/llvoiceclient.cpp
+++ b/indra/newview/llvoiceclient.cpp
@@ -294,8 +294,14 @@ void LLVivoxProtocolParser::reset()
 	ignoringTags = false;
 	accumulateText = false;
 	energy = 0.f;
+	hasText = false;
+	hasAudio = false;
+	hasVideo = false;
+	terminated = false;
 	ignoreDepth = 0;
 	isChannel = false;
+	incoming = false;
+	enabled = false;
 	isEvent = false;
 	isLocallyMuted = false;
 	isModeratorMuted = false;
@@ -6406,6 +6412,7 @@ void LLVoiceClient::filePlaybackSetMode(bool vox, float speed)
 }
 
 LLVoiceClient::sessionState::sessionState() :
+	mErrorStatusCode(0),
 	mMediaStreamState(streamStateUnknown),
 	mTextStreamState(streamStateUnknown),
 	mCreateInProgress(false),
diff --git a/indra/newview/llvosky.cpp b/indra/newview/llvosky.cpp
index 5ff8f0d267d1aa89f17deda2bc8a800202f6fc33..0550ed770bffc68266fad4a5d992461545292c24 100644
--- a/indra/newview/llvosky.cpp
+++ b/indra/newview/llvosky.cpp
@@ -343,7 +343,6 @@ LLVOSky::LLVOSky(const LLUUID &id, const LLPCode pcode, LLViewerRegion *regionp)
 	cloud_pos_density1 = LLColor3();
 	cloud_pos_density2 = LLColor3();
 
-
 	mInitialized = FALSE;
 	mbCanSelect = FALSE;
 	mUpdateTimer.reset();
@@ -385,6 +384,10 @@ LLVOSky::LLVOSky(const LLUUID &id, const LLPCode pcode, LLViewerRegion *regionp)
 	mBloomTexturep->setAddressMode(LLTexUnit::TAM_CLAMP);
 
 	mHeavenlyBodyUpdated = FALSE ;
+
+	mDrawRefl = 0;
+	mHazeConcentration = 0.f;
+	mInterpVal = 0.f;
 }
 
 
@@ -1072,10 +1075,10 @@ BOOL LLVOSky::updateSky()
 		++next_frame;
 		next_frame = next_frame % cycle_frame_no;
 
-		sInterpVal = (!mInitialized) ? 1 : (F32)next_frame / cycle_frame_no;
+		mInterpVal = (!mInitialized) ? 1 : (F32)next_frame / cycle_frame_no;
 		// sInterpVal = (F32)next_frame / cycle_frame_no;
-		LLSkyTex::setInterpVal( sInterpVal );
-		LLHeavenBody::setInterpVal( sInterpVal );
+		LLSkyTex::setInterpVal( mInterpVal );
+		LLHeavenBody::setInterpVal( mInterpVal );
 		calcAtmospherics();
 
 		if (mForceUpdate || total_no_tiles == frame)
diff --git a/indra/newview/llvosky.h b/indra/newview/llvosky.h
index ef74324e58d8ded0a5bbefd183179be912c9d428..8366909755454f8bbdb9da3f4d82c529041c578f 100644
--- a/indra/newview/llvosky.h
+++ b/indra/newview/llvosky.h
@@ -613,7 +613,7 @@ class LLVOSky : public LLStaticViewerObject
 	LLColor3			mLastTotalAmbient;
 	F32					mAmbientScale;
 	LLColor3			mNightColorShift;
-	F32					sInterpVal;
+	F32					mInterpVal;
 
 	LLColor4			mFogColor;
 	LLColor4			mGLFogCol;
@@ -636,8 +636,8 @@ class LLVOSky : public LLStaticViewerObject
 public:
 	//by bao
 	//fake vertex buffer updating
-	//to guaranttee at least updating one VBO buffer every frame
-	//to walk around the bug caused by ATI card --> DEV-3855
+	//to guarantee at least updating one VBO buffer every frame
+	//to work around the bug caused by ATI card --> DEV-3855
 	//
 	void createDummyVertexBuffer() ;
 	void updateDummyVertexBuffer() ;
diff --git a/indra/newview/skins/default/xui/en/notifications.xml b/indra/newview/skins/default/xui/en/notifications.xml
index 41f4621d665d1e03b705288d63cbd352b6f1435a..fc535205f1f048663c41ffb2f1ffacbb30a99b72 100644
--- a/indra/newview/skins/default/xui/en/notifications.xml
+++ b/indra/newview/skins/default/xui/en/notifications.xml
@@ -3851,7 +3851,7 @@ Are you sure you want to quit?
    type="alertmodal">
 Use this tool to report violations of the [http://secondlife.com/corporate/tos.php Terms of Service] and [http://secondlife.com/corporate/cs.php Community Standards].
 
-All reported abuses are investigated and resolved. You can view the resolution by reading the [http://secondlife.com/support/incidentreport.php Incident Report].
+All reported abuses are investigated and resolved.
    <unique/>
   </notification>
 
diff --git a/indra/newview/skins/default/xui/en/panel_pick_info.xml b/indra/newview/skins/default/xui/en/panel_pick_info.xml
index 65ccd10cf02788b90bbd881c606a4f52e05e2156..748998872209cc36544667a1d2ebab3313e623d4 100644
--- a/indra/newview/skins/default/xui/en/panel_pick_info.xml
+++ b/indra/newview/skins/default/xui/en/panel_pick_info.xml
@@ -88,6 +88,7 @@
          follows="all"
          height="100"
          width="280"
+         allow_html="true"	
          hide_scrollbar="false"
          layout="topleft"
          left="10"