diff --git a/indra/newview/rlvhelper.cpp b/indra/newview/rlvhelper.cpp
index 212871bbe83a054a0e8145d503dc361e9220a6ed..e6d548753a44b99eb391950d6411d5b709aac964 100644
--- a/indra/newview/rlvhelper.cpp
+++ b/indra/newview/rlvhelper.cpp
@@ -704,6 +704,10 @@ bool RlvBehaviourModifier::convertOptionValue(const std::string& optionValue, co
 	{
 		return false;
 	}
+	catch (const std::out_of_range&)
+	{
+		return false;
+	}
 }
 
 // ============================================================================
@@ -811,6 +815,10 @@ bool RlvCommandOptionHelper::parseOption<int>(const std::string& strOption, int&
 	{
 		return false;
 	}
+	catch (const std::out_of_range&)
+	{
+		return false;
+	}
 	return true;
 }
 
@@ -831,6 +839,10 @@ bool RlvCommandOptionHelper::parseOption<bool>(const std::string& strOption, boo
 		ss >> std::boolalpha >> fOption;
 		return !ss.fail();
 	}
+	catch (const std::out_of_range&)
+	{
+		return false;
+	}
 }
 
 template<>
@@ -844,6 +856,10 @@ bool RlvCommandOptionHelper::parseOption<float>(const std::string& strOption, fl
 	{
 		return false;
 	}
+	catch (const std::out_of_range&)
+	{
+		return false;
+	}
 	return true;
 }