diff --git a/indra/llui/lltextbox.cpp b/indra/llui/lltextbox.cpp
index 11cfa1d2632cf5223f2308d02050b3211b62a16f..d175204e6d598673f46ec0a35bc8a94ae42487e2 100755
--- a/indra/llui/lltextbox.cpp
+++ b/indra/llui/lltextbox.cpp
@@ -59,11 +59,14 @@ BOOL LLTextBox::handleMouseDown(S32 x, S32 y, MASK mask)
 	}
 
 	if (!handled && mClickedCallback)
+	{
+		handled = TRUE;
+	}
+
+	if (handled)
 	{
 		// Route future Mouse messages here preemptively.  (Release on mouse up.)
 		gFocusMgr.setMouseCapture( this );
-
-		handled = TRUE;
 	}
 
 	return handled;
@@ -71,7 +74,7 @@ BOOL LLTextBox::handleMouseDown(S32 x, S32 y, MASK mask)
 
 BOOL LLTextBox::handleMouseUp(S32 x, S32 y, MASK mask)
 {
-	BOOL	handled = FALSE;
+	BOOL	handled = LLTextBase::handleMouseUp(x, y, mask);
 
 	if (getSoundFlags() & MOUSE_UP)
 	{
@@ -93,10 +96,6 @@ BOOL LLTextBox::handleMouseUp(S32 x, S32 y, MASK mask)
 			handled = TRUE;
 		}
 	}
-	else
-	{
-		handled = LLTextBase::handleMouseUp(x, y, mask);
-	}
 
 	return handled;
 }