Defer sending of CHANGED_OWNER to make it work on rezzed objects and
attachments in addition to objects sold in placeslimupdates
parent
af0ffb2a5a
commit
45301d8a49
|
@ -122,6 +122,8 @@ namespace OpenSim.Framework
|
|||
private int _type = 0;
|
||||
private UUID _oldID;
|
||||
|
||||
private bool _ownerChanged = false;
|
||||
|
||||
public UUID AssetID {
|
||||
get {
|
||||
return _assetID;
|
||||
|
@ -320,6 +322,15 @@ namespace OpenSim.Framework
|
|||
}
|
||||
}
|
||||
|
||||
public bool OwnerChanged {
|
||||
get {
|
||||
return _ownerChanged;
|
||||
}
|
||||
set {
|
||||
_ownerChanged = value;
|
||||
}
|
||||
}
|
||||
|
||||
// See ICloneable
|
||||
|
||||
#region ICloneable Members
|
||||
|
|
|
@ -955,10 +955,9 @@ namespace OpenSim.Region.Framework.Scenes
|
|||
item.CurrentPermissions &= item.NextPermissions;
|
||||
item.BasePermissions &= item.NextPermissions;
|
||||
item.EveryonePermissions &= item.NextPermissions;
|
||||
item.OwnerChanged = true;
|
||||
}
|
||||
}
|
||||
|
||||
m_part.TriggerScriptChangedEvent(Changed.OWNER);
|
||||
}
|
||||
|
||||
public void ApplyGodPermissions(uint perms)
|
||||
|
@ -1042,7 +1041,6 @@ namespace OpenSim.Region.Framework.Scenes
|
|||
if (engines == null)
|
||||
return;
|
||||
|
||||
|
||||
lock (m_items)
|
||||
{
|
||||
foreach (TaskInventoryItem item in m_items.Values)
|
||||
|
@ -1052,7 +1050,10 @@ namespace OpenSim.Region.Framework.Scenes
|
|||
foreach (IScriptModule engine in engines)
|
||||
{
|
||||
if (engine != null)
|
||||
{
|
||||
engine.PostScriptEvent(item.ItemID, "changed", new Object[] { Changed.OWNER });
|
||||
engine.ResumeScript(item.ItemID);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue