mirror of
https://github.com/opensim/opensim.git
synced 2026-08-07 01:35:46 +08:00
* Stop nulling SOG.m_rootPart and parts on object deletion
* This renders RootPart == null checks useless - the replacement is to check SOG.IsDeleted. However, in many cases this will not be necessary since updates to deleted parts will not be sent to the client * This should remove any remaining race conditions where an object is deleted while another thread is yet to obtain the root part to perform some operation * Doing this is probably a necessary prerequisite to moving to a model without a separate SOG and SOP * Unfortunately it's not possible to eliminate all RootPart == null checks since in some contexts it is currently used to check whether an object was created successfully
This commit is contained in:
@@ -126,7 +126,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
"[SCENE]: Sending deleted object to user's inventory, {0} item(s) remaining.", left);
|
||||
|
||||
x = m_inventoryDeletes.Dequeue();
|
||||
if (x.objectGroup.RootPart != null)
|
||||
if (!x.objectGroup.IsDeleted)
|
||||
{
|
||||
try
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user