diff options
author | Dan Lake | 2012-02-03 15:18:48 -0800 |
---|---|---|
committer | Dan Lake | 2012-02-03 15:18:48 -0800 |
commit | 107cef2b0e176a586ef81e3ada1cc3c1641c5467 (patch) | |
tree | 808298090a0fc54fc754579552739e1dc96adf50 /OpenSim/Region/Framework/Scenes | |
parent | Merge branch 'master' of ssh://opensimulator.org/var/git/opensim (diff) | |
download | opensim-SC-107cef2b0e176a586ef81e3ada1cc3c1641c5467.zip opensim-SC-107cef2b0e176a586ef81e3ada1cc3c1641c5467.tar.gz opensim-SC-107cef2b0e176a586ef81e3ada1cc3c1641c5467.tar.bz2 opensim-SC-107cef2b0e176a586ef81e3ada1cc3c1641c5467.tar.xz |
Check for null scene in ScheduleFullUpdate and ScheduleTerseUpdate before triggering events on a potentially null Scene
Diffstat (limited to 'OpenSim/Region/Framework/Scenes')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs index 9b660b6..0e899ca 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | |||
@@ -2729,8 +2729,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
2729 | if (ParentGroup == null) | 2729 | if (ParentGroup == null) |
2730 | return; | 2730 | return; |
2731 | 2731 | ||
2732 | ParentGroup.Scene.EventManager.TriggerSceneObjectPartUpdated(this); | ||
2733 | |||
2734 | ParentGroup.QueueForUpdateCheck(); | 2732 | ParentGroup.QueueForUpdateCheck(); |
2735 | 2733 | ||
2736 | int timeNow = Util.UnixTimeSinceEpoch(); | 2734 | int timeNow = Util.UnixTimeSinceEpoch(); |
@@ -2752,6 +2750,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
2752 | // m_log.DebugFormat( | 2750 | // m_log.DebugFormat( |
2753 | // "[SCENE OBJECT PART]: Scheduling full update for {0}, {1} at {2}", | 2751 | // "[SCENE OBJECT PART]: Scheduling full update for {0}, {1} at {2}", |
2754 | // UUID, Name, TimeStampFull); | 2752 | // UUID, Name, TimeStampFull); |
2753 | |||
2754 | if (ParentGroup.Scene != null) | ||
2755 | ParentGroup.Scene.EventManager.TriggerSceneObjectPartUpdated(this); | ||
2755 | } | 2756 | } |
2756 | 2757 | ||
2757 | /// <summary> | 2758 | /// <summary> |
@@ -2763,13 +2764,12 @@ namespace OpenSim.Region.Framework.Scenes | |||
2763 | if (ParentGroup == null) | 2764 | if (ParentGroup == null) |
2764 | return; | 2765 | return; |
2765 | 2766 | ||
2766 | ParentGroup.Scene.EventManager.TriggerSceneObjectPartUpdated(this); | ||
2767 | |||
2768 | // This was pulled from SceneViewer. Attachments always receive full updates. | 2767 | // This was pulled from SceneViewer. Attachments always receive full updates. |
2769 | // I could not verify if this is a requirement but this maintains existing behavior | 2768 | // I could not verify if this is a requirement but this maintains existing behavior |
2770 | if (ParentGroup.IsAttachment) | 2769 | if (ParentGroup.IsAttachment) |
2771 | { | 2770 | { |
2772 | ScheduleFullUpdate(); | 2771 | ScheduleFullUpdate(); |
2772 | return; | ||
2773 | } | 2773 | } |
2774 | 2774 | ||
2775 | if (UpdateFlag == UpdateRequired.NONE) | 2775 | if (UpdateFlag == UpdateRequired.NONE) |
@@ -2784,6 +2784,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
2784 | // "[SCENE OBJECT PART]: Scheduling terse update for {0}, {1} at {2}", | 2784 | // "[SCENE OBJECT PART]: Scheduling terse update for {0}, {1} at {2}", |
2785 | // UUID, Name, TimeStampTerse); | 2785 | // UUID, Name, TimeStampTerse); |
2786 | } | 2786 | } |
2787 | |||
2788 | if (ParentGroup.Scene != null) | ||
2789 | ParentGroup.Scene.EventManager.TriggerSceneObjectPartUpdated(this); | ||
2787 | } | 2790 | } |
2788 | 2791 | ||
2789 | public void ScriptSetPhysicsStatus(bool UsePhysics) | 2792 | public void ScriptSetPhysicsStatus(bool UsePhysics) |