diff --git a/indra/newview/llavatariconctrl.cpp b/indra/newview/llavatariconctrl.cpp
index b89b0d99004d404e493a1be460cc86d08764fc73..746b541f9d2ce76e8d50fad1900197881b5d5d21 100755
--- a/indra/newview/llavatariconctrl.cpp
+++ b/indra/newview/llavatariconctrl.cpp
@@ -247,7 +247,7 @@ void LLAvatarIconCtrl::setValue(const LLSD& value)
 	{
 		LLAvatarPropertiesProcessor* app =
 			LLAvatarPropertiesProcessor::getInstance();
-		if (mAvatarId.notNull() && mAvatarId != value.asUUID())
+		if (mAvatarId.notNull())
 		{
 			app->removeObserver(mAvatarId, this);
 		}
@@ -255,7 +255,6 @@ void LLAvatarIconCtrl::setValue(const LLSD& value)
 		if (mAvatarId != value.asUUID())
 		{
 			mAvatarId = value.asUUID();
-			app->addObserver(mAvatarId, this);
 
 			// *BUG: This will return stale icons if a user changes their
 			// profile picture. However, otherwise we send too many upstream
@@ -271,7 +270,7 @@ void LLAvatarIconCtrl::setValue(const LLSD& value)
 				// People API, rather than sending AvatarPropertyRequest
 				// messages.  People API already hits the user table.
 				LLIconCtrl::setValue(mDefaultIconName);
-				// duplicated requests are filtered later if there are any
+				app->addObserver(mAvatarId, this);
 				app->sendAvatarPropertiesRequest(mAvatarId);
 			}
 		}
diff --git a/indra/newview/llviewertexture.cpp b/indra/newview/llviewertexture.cpp
index 3f6d244af1613b41382942743285cd940ffc5d13..4e2eef39d67d8c20a45b3e165826715e0228c083 100755
--- a/indra/newview/llviewertexture.cpp
+++ b/indra/newview/llviewertexture.cpp
@@ -1480,17 +1480,6 @@ void LLViewerFetchedTexture::processTextureStats()
 		{
 			mDesiredDiscardLevel = 0;
 		}
-		else if (mDontDiscard && (mBoostLevel == LLGLTexture::BOOST_UI || mBoostLevel == LLGLTexture::BOOST_ICON))
-		{
-			if (mFullWidth > MAX_IMAGE_SIZE_DEFAULT || mFullHeight > MAX_IMAGE_SIZE_DEFAULT)
-			{
-				mDesiredDiscardLevel = 1; // MAX_IMAGE_SIZE_DEFAULT = 1024 and max size ever is 2048
-			}
-			else
-			{
-				mDesiredDiscardLevel = 0;
-			}
-		}
 		else if(!mFullWidth || !mFullHeight)
 		{
 			mDesiredDiscardLevel = 	llmin(getMaxDiscardLevel(), (S32)mLoadedCallbackDesiredDiscardLevel);