diff options
author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2025-04-23 18:09:11 +0300 |
---|---|---|
committer | Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com> | 2025-04-23 20:06:52 +0300 |
commit | 205b2282c7417d56433540fb4ee5df195545f9d2 (patch) | |
tree | 48f3a86da7e085a140f370832cb752b43a33278e | |
parent | b30283e5ef164ed84ad47d7d6f52ebc1c6c7d558 (diff) |
#3920 LLPanel::getString crash
Make sure new floater can launch wihtout a key.
It isn't supposed to be launched wihtout a key, but there are some ways
to do that intentionally.
-rw-r--r-- | indra/newview/llfloaternewfeaturenotification.cpp | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/indra/newview/llfloaternewfeaturenotification.cpp b/indra/newview/llfloaternewfeaturenotification.cpp index 369727ff1e..1badcdd3d9 100644 --- a/indra/newview/llfloaternewfeaturenotification.cpp +++ b/indra/newview/llfloaternewfeaturenotification.cpp @@ -43,12 +43,28 @@ bool LLFloaterNewFeatureNotification::postBuild() setCanDrag(false); getChild<LLButton>("close_btn")->setCommitCallback(boost::bind(&LLFloaterNewFeatureNotification::onCloseBtn, this)); - const std::string title_txt = "title_txt"; - const std::string dsc_txt = "description_txt"; - std::string feature = "_" + getKey().asString(); + if (getKey().isString()) + { + const std::string title_txt = "title_txt"; + const std::string dsc_txt = "description_txt"; - getChild<LLUICtrl>(title_txt)->setValue(getString(title_txt + feature)); - getChild<LLUICtrl>(dsc_txt)->setValue(getString(dsc_txt + feature)); + std::string feature = "_" + getKey().asString(); + if (hasString(title_txt + feature)) + { + getChild<LLUICtrl>(title_txt)->setValue(getString(title_txt + feature)); + getChild<LLUICtrl>(dsc_txt)->setValue(getString(dsc_txt + feature)); + } + else + { + // Show blank + LL_WARNS() << "Feature \"" << getKey().asString() << "\" not found for feature notification" << LL_ENDL; + } + } + else + { + // Show blank + LL_WARNS() << "Feature notification without a feature" << LL_ENDL; + } if (getKey().asString() == "gltf") { |