summaryrefslogtreecommitdiff
path: root/indra/newview/llcommandlineparser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llcommandlineparser.cpp')
-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
{