summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrey Kleshchev <117672381+akleshchev@users.noreply.github.com>2026-08-27 19:33:52 +0300
committerAndrey Kleshchev <117672381+akleshchev@users.noreply.github.com>2026-08-27 22:19:28 +0300
commit6ebc8dc69f6a972d0b83057beaf352d9b6b1a72b (patch)
treeccb6c3c36fa8fdae9854a32f39086e8ade9efced
parent6be70b2f3c125113f683981e9146399a60da1dc6 (diff)
#1841 Fix leap command
--leap is mapped to --set LeapCommand
-rw-r--r--indra/newview/llcommandlineparser.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/indra/newview/llcommandlineparser.cpp b/indra/newview/llcommandlineparser.cpp
index 7e7d528199..7e1f85aff1 100644
--- a/indra/newview/llcommandlineparser.cpp
+++ b/indra/newview/llcommandlineparser.cpp
@@ -614,7 +614,14 @@ void setControlValueCB(const LLCommandLineParser::token_vector_t& value,
else if (ctrl->isType(TYPE_LLSD))
{
// Command-line LLSD should support a notation format string
- ctrl->setValueFromNotation(onevalue(option, value), false);
+ // Note that LeapCommand is an TYPE_LLSD, but generaly is not a notation string,
+ // so keep a fallback to saving value directly.
+ // To preserve pre-setValueFromNotation, everything has a fallback.
+ std::string strvalue = onevalue(option, value);
+ if (!ctrl->setValueFromNotation(strvalue, false))
+ {
+ ctrl->setValue(LLSD::String(strvalue), false);
+ }
}
else
{