diff --git a/indra/llui/llscrolllistctrl.cpp b/indra/llui/llscrolllistctrl.cpp
index 8acd2ff5bfc7a3d8ab7691462613f2cff4eacff3..dce95ea056250afc319ddad54380278f1341ce7e 100644
--- a/indra/llui/llscrolllistctrl.cpp
+++ b/indra/llui/llscrolllistctrl.cpp
@@ -933,6 +933,7 @@ BOOL LLScrollListCtrl::selectFirstItem()
 // virtual
 BOOL LLScrollListCtrl::selectNthItem( S32 target_index )
 {
+    target_index = llclamp(target_index, 0, (S32)mItemList.size() - 1);
     return selectItemRange(target_index, target_index);
 }