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")      { | 
