diff options
author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2020-07-06 17:31:15 +0000 |
---|---|---|
committer | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2020-07-06 17:31:15 +0000 |
commit | 5cb65ad832af70bdb66292b47a6225a27e0ffd9e (patch) | |
tree | 47019e16cec44493f5f4df3d7d3466df579bbbb1 | |
parent | 4a7cff1ce0d0bfe54bb1f167a01bac13313e4db9 (diff) | |
parent | 52ff68ce5127538e14dd1408bbd9568b397f3485 (diff) |
Merged in SL-13466 and SL-13497
-rw-r--r-- | indra/llplugin/llpluginprocessparent.cpp | 14 | ||||
-rw-r--r-- | indra/newview/llviewermessage.cpp | 7 |
2 files changed, 16 insertions, 5 deletions
diff --git a/indra/llplugin/llpluginprocessparent.cpp b/indra/llplugin/llpluginprocessparent.cpp index eb6cb1b503..7d18bae947 100644 --- a/indra/llplugin/llpluginprocessparent.cpp +++ b/indra/llplugin/llpluginprocessparent.cpp @@ -152,8 +152,18 @@ void LLPluginProcessParent::shutdown() mapInstances_t::iterator it; for (it = sInstances.begin(); it != sInstances.end(); ++it) { - (*it).second->setState(STATE_GOODBYE); - (*it).second->idle(); + EState state = (*it).second->mState; + if (state != STATE_CLEANUP + || state != STATE_EXITING + || state != STATE_DONE + || state != STATE_ERROR) + { + (*it).second->setState(STATE_GOODBYE); + } + if (state != STATE_DONE) + { + (*it).second->idle(); + } } sInstances.clear(); } diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp index e1c44d6be8..f35f64649a 100644 --- a/indra/newview/llviewermessage.cpp +++ b/indra/newview/llviewermessage.cpp @@ -5705,8 +5705,9 @@ void process_script_question(LLMessageSystem *msg, void **user_data) // so we'll reuse the same namespace for both throttle types. std::string throttle_name = owner_name; std::string self_name; - LLAgentUI::buildFullname( self_name ); - if( owner_name == self_name ) + LLAgentUI::buildFullname( self_name ); // does not include ' Resident' + std::string clean_owner_name = LLCacheName::cleanFullName(owner_name); // removes ' Resident' + if( clean_owner_name == self_name ) { throttle_name = taskid.getString(); } @@ -5741,7 +5742,7 @@ void process_script_question(LLMessageSystem *msg, void **user_data) S32 count = 0; LLSD args; args["OBJECTNAME"] = object_name; - args["NAME"] = LLCacheName::cleanFullName(owner_name); + args["NAME"] = clean_owner_name; S32 known_questions = 0; bool has_not_only_debit = questions ^ SCRIPT_PERMISSIONS[SCRIPT_PERMISSION_DEBIT].permbit; // check the received permission flags against each permission |