diff options
| author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2021-10-08 23:56:43 +0300 | 
|---|---|---|
| committer | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2021-10-08 23:56:43 +0300 | 
| commit | c1943e5efb18a0786a538237eee4bee8a7330e56 (patch) | |
| tree | 60a32b603eebac15c162de9f826585880771d5f0 | |
| parent | 404c498795c0bbc2ef86a6436f700986e4dbc651 (diff) | |
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
| -rw-r--r-- | indra/llplugin/llpluginprocessparent.cpp | 6 | 
1 files changed, 5 insertions, 1 deletions
| diff --git a/indra/llplugin/llpluginprocessparent.cpp b/indra/llplugin/llpluginprocessparent.cpp index 73327ce2ee..7a704b71f3 100644 --- a/indra/llplugin/llpluginprocessparent.cpp +++ b/indra/llplugin/llpluginprocessparent.cpp @@ -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();  			} | 
