summaryrefslogtreecommitdiff
path: root/indra/llplugin
diff options
context:
space:
mode:
authorLoren Shih <seraph@lindenlab.com>2010-01-07 16:20:27 -0500
committerLoren Shih <seraph@lindenlab.com>2010-01-07 16:20:27 -0500
commit6abd41831a4cae5d757aa44675731d1fd48d64b1 (patch)
tree6fc9de74e865a8337823b317a87b7c132bca0c7a /indra/llplugin
parentbb04795eeb222e5396e24e79ac1f77b155bd4622 (diff)
parent6b8ed2ae6f92d6f9559cbc86699b9ca3197f2e81 (diff)
automated merge viewer2.0->viewer2.0
Diffstat (limited to 'indra/llplugin')
-rw-r--r--indra/llplugin/llpluginprocesschild.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/indra/llplugin/llpluginprocesschild.cpp b/indra/llplugin/llpluginprocesschild.cpp
index ccf6dab942..07fc82c770 100644
--- a/indra/llplugin/llpluginprocesschild.cpp
+++ b/indra/llplugin/llpluginprocesschild.cpp
@@ -54,8 +54,14 @@ LLPluginProcessChild::~LLPluginProcessChild()
if(mInstance != NULL)
{
sendMessageToPlugin(LLPluginMessage("base", "cleanup"));
- delete mInstance;
- mInstance = NULL;
+
+ // IMPORTANT: under some (unknown) circumstances the apr_dso_unload() triggered when mInstance is deleted
+ // appears to fail and lock up which means that a given instance of the slplugin process never exits.
+ // This is bad, especially when users try to update their version of SL - it fails because the slplugin
+ // process as well as a bunch of plugin specific files are locked and cannot be overwritten.
+ exit( 0 );
+ //delete mInstance;
+ //mInstance = NULL;
}
}