diff options
author | Melanie | 2009-12-06 00:02:24 +0000 |
---|---|---|
committer | Melanie | 2009-12-06 00:02:24 +0000 |
commit | ceccfe02d0e25c234560b6ef25306b8db4cd9875 (patch) | |
tree | 6f619087a6af3f7a6434696e5990fa91c6872823 /OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |
parent | Cause better packing of ObjectProperties (diff) | |
download | opensim-SC_OLD-ceccfe02d0e25c234560b6ef25306b8db4cd9875.zip opensim-SC_OLD-ceccfe02d0e25c234560b6ef25306b8db4cd9875.tar.gz opensim-SC_OLD-ceccfe02d0e25c234560b6ef25306b8db4cd9875.tar.bz2 opensim-SC_OLD-ceccfe02d0e25c234560b6ef25306b8db4cd9875.tar.xz |
Eliminate multiple updates on link/unlink
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 267928b..e694f15 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -3588,6 +3588,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3588 | { | 3588 | { |
3589 | parentPrim.DelinkFromGroup(part.LocalId, true); | 3589 | parentPrim.DelinkFromGroup(part.LocalId, true); |
3590 | } | 3590 | } |
3591 | parentPrim.HasGroupChanged = true; | ||
3592 | parentPrim.ScheduleGroupForFullUpdate(); | ||
3591 | parentPrim.TriggerScriptChangedEvent(Changed.LINK); | 3593 | parentPrim.TriggerScriptChangedEvent(Changed.LINK); |
3592 | 3594 | ||
3593 | if (parts.Count > 0) | 3595 | if (parts.Count > 0) |
@@ -3599,6 +3601,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3599 | part.UpdateFlag = 0; | 3601 | part.UpdateFlag = 0; |
3600 | newRoot.ParentGroup.LinkToGroup(part.ParentGroup); | 3602 | newRoot.ParentGroup.LinkToGroup(part.ParentGroup); |
3601 | } | 3603 | } |
3604 | newRoot.ParentGroup.HasGroupChanged = true; | ||
3605 | newRoot.ParentGroup.ScheduleGroupForFullUpdate(); | ||
3602 | } | 3606 | } |
3603 | } | 3607 | } |
3604 | else | 3608 | else |
@@ -3607,6 +3611,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3607 | return; | 3611 | return; |
3608 | 3612 | ||
3609 | parentPrim.DelinkFromGroup(childPrim.LocalId, true); | 3613 | parentPrim.DelinkFromGroup(childPrim.LocalId, true); |
3614 | parentPrim.HasGroupChanged = true; | ||
3615 | parentPrim.ScheduleGroupForFullUpdate(); | ||
3610 | parentPrim.TriggerScriptChangedEvent(Changed.LINK); | 3616 | parentPrim.TriggerScriptChangedEvent(Changed.LINK); |
3611 | } | 3617 | } |
3612 | } | 3618 | } |
@@ -3626,6 +3632,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3626 | parentPrim.DelinkFromGroup(part.LocalId, true); | 3632 | parentPrim.DelinkFromGroup(part.LocalId, true); |
3627 | parentPrim.TriggerScriptChangedEvent(Changed.LINK); | 3633 | parentPrim.TriggerScriptChangedEvent(Changed.LINK); |
3628 | } | 3634 | } |
3635 | parentPrim.HasGroupChanged = true; | ||
3636 | parentPrim.ScheduleGroupForFullUpdate(); | ||
3629 | } | 3637 | } |
3630 | 3638 | ||
3631 | public LSL_String llGetLinkKey(int linknum) | 3639 | public LSL_String llGetLinkKey(int linknum) |