diff options
| author | Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com> | 2026-08-27 19:33:52 +0300 |
|---|---|---|
| committer | Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com> | 2026-08-27 22:19:28 +0300 |
| commit | 6ebc8dc69f6a972d0b83057beaf352d9b6b1a72b (patch) | |
| tree | ccb6c3c36fa8fdae9854a32f39086e8ade9efced /indra/newview/llcommandlineparser.cpp | |
| parent | 6be70b2f3c125113f683981e9146399a60da1dc6 (diff) | |
#1841 Fix leap command
--leap is mapped to --set LeapCommand
Diffstat (limited to 'indra/newview/llcommandlineparser.cpp')
| -rw-r--r-- | indra/newview/llcommandlineparser.cpp | 9 |
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 { |
