SL-16161 Don't process new plugin messages on shutdown

Some pending messages might try to update non-existing view or cause a pop up, neither should be avaliable by this point, so just don't process them
master
Andrey Kleshchev 2021-10-08 23:56:43 +03:00
parent 404c498795
commit c1943e5efb
1 changed files with 5 additions and 1 deletions

View File

@ -192,6 +192,7 @@ void LLPluginProcessParent::shutdown()
&& state != STATE_ERROR)
{
(*it).second->setState(STATE_GOODBYE);
(*it).second->mOwner = NULL;
}
if (state != STATE_DONE)
{
@ -407,7 +408,10 @@ void LLPluginProcessParent::idle(void)
mMessagePipe->pumpOutput();
// Only do input processing here if this instance isn't in a pollset.
if(!mPolledInput)
// If we are shutting down plugin, owner is null and we can't process
// input, we are here only to send shutdown_plugin message
if(!mPolledInput
&& mState != STATE_GOODBYE)
{
mMessagePipe->pumpInput();
}