diff --git a/indra/llui/lltextbase.cpp b/indra/llui/lltextbase.cpp
index b48a32a622ff77745f37ecf8998a2a245bf8f861..30bf938591efa90f182895db5e05717ffee6a979 100644
--- a/indra/llui/lltextbase.cpp
+++ b/indra/llui/lltextbase.cpp
@@ -1037,6 +1037,7 @@ BOOL LLTextBase::handleMouseDown(S32 x, S32 y, MASK mask)
 				line_start = it->mDocIndexStart;
 			}
 			line_end = it->mDocIndexEnd;
+			line_end = llclamp(line_end, 0, getLength());
 		}
 
 		if (line_start == -1)