aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorDan Lake2012-02-03 15:18:48 -0800
committerDan Lake2012-02-03 15:18:48 -0800
commit107cef2b0e176a586ef81e3ada1cc3c1641c5467 (patch)
tree808298090a0fc54fc754579552739e1dc96adf50
parentMerge branch 'master' of ssh://opensimulator.org/var/git/opensim (diff)
downloadopensim-SC_OLD-107cef2b0e176a586ef81e3ada1cc3c1641c5467.zip
opensim-SC_OLD-107cef2b0e176a586ef81e3ada1cc3c1641c5467.tar.gz
opensim-SC_OLD-107cef2b0e176a586ef81e3ada1cc3c1641c5467.tar.bz2
opensim-SC_OLD-107cef2b0e176a586ef81e3ada1cc3c1641c5467.tar.xz
Check for null scene in ScheduleFullUpdate and ScheduleTerseUpdate before triggering events on a potentially null Scene
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectPart.cs11
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)