aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorTeravus Ovares2008-02-22 21:18:08 +0000
committerTeravus Ovares2008-02-22 21:18:08 +0000
commit9b675a6888f3c68dacf8cd3b7310a955c1f3dbaf (patch)
tree6ab39fbdad1f04de5316afb5b80dda6f8b37a366
parent* Downgrade texture exception to a warning. (diff)
downloadopensim-SC-9b675a6888f3c68dacf8cd3b7310a955c1f3dbaf.zip
opensim-SC-9b675a6888f3c68dacf8cd3b7310a955c1f3dbaf.tar.gz
opensim-SC-9b675a6888f3c68dacf8cd3b7310a955c1f3dbaf.tar.bz2
opensim-SC-9b675a6888f3c68dacf8cd3b7310a955c1f3dbaf.tar.xz
* Converted the last of the events to the private delegate instance method to avoid race conditions.
-rw-r--r--OpenSim/Framework/RegionCommsListener.cs72
-rw-r--r--OpenSim/Region/ClientStack/ClientView.cs6
-rw-r--r--OpenSim/Region/Communications/Local/LocalLoginService.cs7
-rw-r--r--OpenSim/Region/Communications/OGS1/OGS1InterSimComms.cs43
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs50
5 files changed, 116 insertions, 62 deletions
diff --git a/OpenSim/Framework/RegionCommsListener.cs b/OpenSim/Framework/RegionCommsListener.cs
index 41577c6..35e2f26 100644
--- a/OpenSim/Framework/RegionCommsListener.cs
+++ b/OpenSim/Framework/RegionCommsListener.cs
@@ -45,8 +45,18 @@ namespace OpenSim.Framework
45 public event CloseAgentConnection OnCloseAgentConnection; 45 public event CloseAgentConnection OnCloseAgentConnection;
46 public event RegionUp OnRegionUp; 46 public event RegionUp OnRegionUp;
47 public event ChildAgentUpdate OnChildAgentUpdate; 47 public event ChildAgentUpdate OnChildAgentUpdate;
48
49 48
49 private ExpectUserDelegate handler001 = null; // OnExpectUser
50 private ExpectPrimDelegate handler002 = null; // OnExpectPrim;
51 private GenericCall2 handler003 = null; // OnExpectChildAgent;
52 private AgentCrossing handler004 = null; // OnAvatarCrossingIntoRegion;
53 private PrimCrossing handler005 = null; // OnPrimCrossingIntoRegion;
54 private UpdateNeighbours handler006 = null; // OnNeighboursUpdate;
55 private AcknowledgeAgentCross handler007 = null; // OnAcknowledgeAgentCrossed;
56 private AcknowledgePrimCross handler008 = null; // OnAcknowledgePrimCrossed;
57 private CloseAgentConnection handler009 = null; // OnCloseAgentConnection;
58 private RegionUp handler010 = null; // OnRegionUp;
59 private ChildAgentUpdate handler011 = null; // OnChildAgentUpdate;
50 60
51 public string debugRegionName = String.Empty; 61 public string debugRegionName = String.Empty;
52 62
@@ -58,9 +68,10 @@ namespace OpenSim.Framework
58 /// <returns></returns> 68 /// <returns></returns>
59 public virtual bool TriggerExpectUser(ulong regionHandle, AgentCircuitData agent) 69 public virtual bool TriggerExpectUser(ulong regionHandle, AgentCircuitData agent)
60 { 70 {
61 if (OnExpectUser != null) 71 handler001 = OnExpectUser;
72 if (handler001 != null)
62 { 73 {
63 OnExpectUser(regionHandle, agent); 74 handler001(regionHandle, agent);
64 return true; 75 return true;
65 } 76 }
66 77
@@ -70,9 +81,10 @@ namespace OpenSim.Framework
70 81
71 public virtual bool TriggerExpectPrim(ulong regionHandle, LLUUID primID, string objData) 82 public virtual bool TriggerExpectPrim(ulong regionHandle, LLUUID primID, string objData)
72 { 83 {
73 if (OnExpectPrim != null) 84 handler002 = OnExpectPrim;
85 if (handler002 != null)
74 { 86 {
75 OnExpectPrim(regionHandle, primID, objData); 87 handler002(regionHandle, primID, objData);
76 return true; 88 return true;
77 } 89 }
78 return false; 90 return false;
@@ -80,9 +92,10 @@ namespace OpenSim.Framework
80 92
81 public virtual bool TriggerRegionUp(RegionInfo region) 93 public virtual bool TriggerRegionUp(RegionInfo region)
82 { 94 {
83 if (OnRegionUp != null) 95 handler010 = OnRegionUp;
96 if (handler010 != null)
84 { 97 {
85 OnRegionUp(region); 98 handler010(region);
86 return true; 99 return true;
87 } 100 }
88 return false; 101 return false;
@@ -90,9 +103,10 @@ namespace OpenSim.Framework
90 103
91 public virtual bool TriggerChildAgentUpdate(ulong regionHandle, ChildAgentDataUpdate cAgentData) 104 public virtual bool TriggerChildAgentUpdate(ulong regionHandle, ChildAgentDataUpdate cAgentData)
92 { 105 {
93 if (OnChildAgentUpdate != null) 106 handler011 = OnChildAgentUpdate;
107 if (handler011 != null)
94 { 108 {
95 OnChildAgentUpdate(regionHandle, cAgentData); 109 handler011(regionHandle, cAgentData);
96 return true; 110 return true;
97 } 111 }
98 return false; 112 return false;
@@ -101,9 +115,10 @@ namespace OpenSim.Framework
101 public virtual bool TriggerExpectAvatarCrossing(ulong regionHandle, LLUUID agentID, LLVector3 position, 115 public virtual bool TriggerExpectAvatarCrossing(ulong regionHandle, LLUUID agentID, LLVector3 position,
102 bool isFlying) 116 bool isFlying)
103 { 117 {
104 if (OnAvatarCrossingIntoRegion != null) 118 handler004 = OnAvatarCrossingIntoRegion;
119 if (handler004 != null)
105 { 120 {
106 OnAvatarCrossingIntoRegion(regionHandle, agentID, position, isFlying); 121 handler004(regionHandle, agentID, position, isFlying);
107 return true; 122 return true;
108 } 123 }
109 return false; 124 return false;
@@ -112,9 +127,10 @@ namespace OpenSim.Framework
112 public virtual bool TriggerExpectPrimCrossing(ulong regionHandle, LLUUID primID, LLVector3 position, 127 public virtual bool TriggerExpectPrimCrossing(ulong regionHandle, LLUUID primID, LLVector3 position,
113 bool isPhysical) 128 bool isPhysical)
114 { 129 {
115 if (OnPrimCrossingIntoRegion != null) 130 handler005 = OnPrimCrossingIntoRegion;
131 if (handler005 != null)
116 { 132 {
117 OnPrimCrossingIntoRegion(regionHandle, primID, position, isPhysical); 133 handler005(regionHandle, primID, position, isPhysical);
118 return true; 134 return true;
119 } 135 }
120 return false; 136 return false;
@@ -122,9 +138,10 @@ namespace OpenSim.Framework
122 138
123 public virtual bool TriggerAcknowledgeAgentCrossed(ulong regionHandle, LLUUID agentID) 139 public virtual bool TriggerAcknowledgeAgentCrossed(ulong regionHandle, LLUUID agentID)
124 { 140 {
125 if (OnAcknowledgeAgentCrossed != null) 141 handler007 = OnAcknowledgeAgentCrossed;
142 if (handler007 != null)
126 { 143 {
127 OnAcknowledgeAgentCrossed(regionHandle, agentID); 144 handler007(regionHandle, agentID);
128 return true; 145 return true;
129 } 146 }
130 return false; 147 return false;
@@ -132,9 +149,10 @@ namespace OpenSim.Framework
132 149
133 public virtual bool TriggerAcknowledgePrimCrossed(ulong regionHandle, LLUUID primID) 150 public virtual bool TriggerAcknowledgePrimCrossed(ulong regionHandle, LLUUID primID)
134 { 151 {
135 if (OnAcknowledgePrimCrossed != null) 152 handler008 = OnAcknowledgePrimCrossed;
153 if (handler008 != null)
136 { 154 {
137 OnAcknowledgePrimCrossed(regionHandle, primID); 155 handler008(regionHandle, primID);
138 return true; 156 return true;
139 } 157 }
140 return false; 158 return false;
@@ -142,9 +160,10 @@ namespace OpenSim.Framework
142 160
143 public virtual bool TriggerCloseAgentConnection(ulong regionHandle, LLUUID agentID) 161 public virtual bool TriggerCloseAgentConnection(ulong regionHandle, LLUUID agentID)
144 { 162 {
145 if (OnCloseAgentConnection != null) 163 handler009 = OnCloseAgentConnection;
164 if (handler009 != null)
146 { 165 {
147 OnCloseAgentConnection(regionHandle, agentID); 166 handler009(regionHandle, agentID);
148 return true; 167 return true;
149 168
150 } 169 }
@@ -158,9 +177,10 @@ namespace OpenSim.Framework
158 /// <returns></returns> 177 /// <returns></returns>
159 public virtual bool TriggerExpectChildAgent() 178 public virtual bool TriggerExpectChildAgent()
160 { 179 {
161 if (OnExpectChildAgent != null) 180 handler003 = OnExpectChildAgent;
181 if (handler003 != null)
162 { 182 {
163 OnExpectChildAgent(); 183 handler003();
164 return true; 184 return true;
165 } 185 }
166 186
@@ -175,9 +195,10 @@ namespace OpenSim.Framework
175 /// <returns></returns> 195 /// <returns></returns>
176 public virtual bool TriggerOnNeighboursUpdate(List<RegionInfo> neighbours) 196 public virtual bool TriggerOnNeighboursUpdate(List<RegionInfo> neighbours)
177 { 197 {
178 if (OnNeighboursUpdate != null) 198 handler006 = OnNeighboursUpdate;
199 if (handler006 != null)
179 { 200 {
180 OnNeighboursUpdate(neighbours); 201 handler006(neighbours);
181 return true; 202 return true;
182 } 203 }
183 204
@@ -186,8 +207,9 @@ namespace OpenSim.Framework
186 207
187 public bool TriggerTellRegionToCloseChildConnection(ulong regionHandle, LLUUID agentID) 208 public bool TriggerTellRegionToCloseChildConnection(ulong regionHandle, LLUUID agentID)
188 { 209 {
189 if (OnCloseAgentConnection != null) 210 handler009 = OnCloseAgentConnection;
190 return OnCloseAgentConnection(regionHandle, agentID); 211 if (handler009 != null)
212 return handler009(regionHandle, agentID);
191 213
192 return false; 214 return false;
193 } 215 }
diff --git a/OpenSim/Region/ClientStack/ClientView.cs b/OpenSim/Region/ClientStack/ClientView.cs
index 8bdbe89..8220ae8 100644
--- a/OpenSim/Region/ClientStack/ClientView.cs
+++ b/OpenSim/Region/ClientStack/ClientView.cs
@@ -214,6 +214,7 @@ namespace OpenSim.Region.ClientStack
214 private UpdateVector handler089 = null; //OnUpdatePrimGroupPosition; 214 private UpdateVector handler089 = null; //OnUpdatePrimGroupPosition;
215 private UpdatePrimRotation handler090 = null; //OnUpdatePrimGroupRotation; 215 private UpdatePrimRotation handler090 = null; //OnUpdatePrimGroupRotation;
216 private UpdatePrimGroupRotation handler091 = null; //OnUpdatePrimGroupMouseRotation; 216 private UpdatePrimGroupRotation handler091 = null; //OnUpdatePrimGroupMouseRotation;
217 private PacketStats handler093 = null; // OnPacketStats;
217 218
218 219
219 /* Properties */ 220 /* Properties */
@@ -2818,9 +2819,10 @@ namespace OpenSim.Region.ClientStack
2818 2819
2819 protected void SendPacketStats() 2820 protected void SendPacketStats()
2820 { 2821 {
2821 if (OnPacketStats != null) 2822 handler093 = OnPacketStats;
2823 if (handler093 != null)
2822 { 2824 {
2823 OnPacketStats(m_packetsReceived - m_lastPacketsReceivedSentToScene, m_packetsSent - m_lastPacketsSentSentToScene, m_unAckedBytes); 2825 handler093(m_packetsReceived - m_lastPacketsReceivedSentToScene, m_packetsSent - m_lastPacketsSentSentToScene, m_unAckedBytes);
2824 m_lastPacketsReceivedSentToScene = m_packetsReceived; 2826 m_lastPacketsReceivedSentToScene = m_packetsReceived;
2825 m_lastPacketsSentSentToScene = m_packetsSent; 2827 m_lastPacketsSentSentToScene = m_packetsSent;
2826 } 2828 }
diff --git a/OpenSim/Region/Communications/Local/LocalLoginService.cs b/OpenSim/Region/Communications/Local/LocalLoginService.cs
index b480a1a..0e9b3d0 100644
--- a/OpenSim/Region/Communications/Local/LocalLoginService.cs
+++ b/OpenSim/Region/Communications/Local/LocalLoginService.cs
@@ -55,6 +55,8 @@ namespace OpenSim.Region.Communications.Local
55 55
56 public event LoginToRegionEvent OnLoginToRegion; 56 public event LoginToRegionEvent OnLoginToRegion;
57 57
58 private LoginToRegionEvent handler001 = null; // OnLoginToRegion;
59
58 public LocalLoginService(UserManagerBase userManager, string welcomeMess, 60 public LocalLoginService(UserManagerBase userManager, string welcomeMess,
59 CommunicationsLocal parent, NetworkServersInfo serversInfo, 61 CommunicationsLocal parent, NetworkServersInfo serversInfo,
60 bool authenticate) 62 bool authenticate)
@@ -161,9 +163,10 @@ namespace OpenSim.Region.Communications.Local
161 _login.StartPos = new LLVector3(128, 128, 70); 163 _login.StartPos = new LLVector3(128, 128, 70);
162 _login.CapsPath = capsPath; 164 _login.CapsPath = capsPath;
163 165
164 if (OnLoginToRegion != null) 166 handler001 = OnLoginToRegion;
167 if (handler001 != null)
165 { 168 {
166 OnLoginToRegion(currentRegion, _login); 169 handler001(currentRegion, _login);
167 } 170 }
168 } 171 }
169 else 172 else
diff --git a/OpenSim/Region/Communications/OGS1/OGS1InterSimComms.cs b/OpenSim/Region/Communications/OGS1/OGS1InterSimComms.cs
index 3cde55c..d21852d 100644
--- a/OpenSim/Region/Communications/OGS1/OGS1InterSimComms.cs
+++ b/OpenSim/Region/Communications/OGS1/OGS1InterSimComms.cs
@@ -59,6 +59,13 @@ namespace OpenSim.Region.Communications.OGS1
59 public event ChildAgentUpdate OnChildAgentUpdate; 59 public event ChildAgentUpdate OnChildAgentUpdate;
60 public event TellRegionToCloseChildConnection OnTellRegionToCloseChildConnection; 60 public event TellRegionToCloseChildConnection OnTellRegionToCloseChildConnection;
61 61
62 private InformRegionChild handler001 = null; // OnChildAgent;
63 private ExpectArrival handler002 = null; // OnArrival;
64 private InformRegionPrimGroup handler003 = null; // OnPrimGroupNear;
65 private PrimGroupArrival handler004 = null; // OnPrimGroupArrival;
66 private RegionUp handler005 = null; // OnRegionUp;
67 private ChildAgentUpdate handler006 = null; // OnChildAgentUpdate;
68 private TellRegionToCloseChildConnection handler007 = null; // OnTellRegionToCloseChildConnection;
62 69
63 70
64 static InterRegionSingleton() 71 static InterRegionSingleton()
@@ -76,64 +83,70 @@ namespace OpenSim.Region.Communications.OGS1
76 83
77 public bool InformRegionOfChildAgent(ulong regionHandle, AgentCircuitData agentData) 84 public bool InformRegionOfChildAgent(ulong regionHandle, AgentCircuitData agentData)
78 { 85 {
79 if (OnChildAgent != null) 86 handler001 = OnChildAgent;
87 if (handler001 != null)
80 { 88 {
81 return OnChildAgent(regionHandle, agentData); 89 return handler001(regionHandle, agentData);
82 } 90 }
83 return false; 91 return false;
84 } 92 }
85 93
86 public bool RegionUp(SearializableRegionInfo sregion, ulong regionhandle) 94 public bool RegionUp(SearializableRegionInfo sregion, ulong regionhandle)
87 { 95 {
88 if (OnRegionUp != null) 96 handler005 = OnRegionUp;
97 if (handler005 != null)
89 { 98 {
90 return OnRegionUp(sregion, regionhandle); 99 return handler005(sregion, regionhandle);
91 } 100 }
92 return false; 101 return false;
93 } 102 }
94 103
95 public bool ChildAgentUpdate(ulong regionHandle, ChildAgentDataUpdate cAgentUpdate) 104 public bool ChildAgentUpdate(ulong regionHandle, ChildAgentDataUpdate cAgentUpdate)
96 { 105 {
97 if (OnChildAgentUpdate != null) 106 handler006 = OnChildAgentUpdate;
107 if (handler006 != null)
98 { 108 {
99 return OnChildAgentUpdate(regionHandle, cAgentUpdate); 109 return handler006(regionHandle, cAgentUpdate);
100 } 110 }
101 return false; 111 return false;
102 } 112 }
103 113
104 public bool ExpectAvatarCrossing(ulong regionHandle, LLUUID agentID, LLVector3 position, bool isFlying) 114 public bool ExpectAvatarCrossing(ulong regionHandle, LLUUID agentID, LLVector3 position, bool isFlying)
105 { 115 {
106 if (OnArrival != null) 116 handler002 = OnArrival;
117 if (handler002 != null)
107 { 118 {
108 return OnArrival(regionHandle, agentID, position, isFlying); 119 return handler002(regionHandle, agentID, position, isFlying);
109 } 120 }
110 return false; 121 return false;
111 } 122 }
112 123
113 public bool InformRegionPrim(ulong regionHandle, LLUUID primID, LLVector3 position, bool isPhysical) 124 public bool InformRegionPrim(ulong regionHandle, LLUUID primID, LLVector3 position, bool isPhysical)
114 { 125 {
115 if (OnPrimGroupNear != null) 126 handler003 = OnPrimGroupNear;
127 if (handler003 != null)
116 { 128 {
117 return OnPrimGroupNear(regionHandle, primID, position, isPhysical); 129 return handler003(regionHandle, primID, position, isPhysical);
118 } 130 }
119 return false; 131 return false;
120 } 132 }
121 133
122 public bool ExpectPrimCrossing(ulong regionHandle, LLUUID primID, string objData) 134 public bool ExpectPrimCrossing(ulong regionHandle, LLUUID primID, string objData)
123 { 135 {
124 if (OnPrimGroupArrival != null) 136 handler004 = OnPrimGroupArrival;
137 if (handler004 != null)
125 { 138 {
126 return OnPrimGroupArrival(regionHandle, primID, objData); 139 return handler004(regionHandle, primID, objData);
127 } 140 }
128 return false; 141 return false;
129 } 142 }
130 143
131 public bool TellRegionToCloseChildConnection(ulong regionHandle, LLUUID agentID) 144 public bool TellRegionToCloseChildConnection(ulong regionHandle, LLUUID agentID)
132 { 145 {
133 if (OnTellRegionToCloseChildConnection != null) 146 handler007 = OnTellRegionToCloseChildConnection;
147 if (handler007 != null)
134 { 148 {
135 149 return handler007(regionHandle, agentID);
136 return OnTellRegionToCloseChildConnection(regionHandle, agentID);
137 } 150 }
138 return false; 151 return false;
139 } 152 }
diff --git a/OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs b/OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs
index e51438d..8678f7a 100644
--- a/OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs
@@ -57,8 +57,15 @@ namespace OpenSim.Region.Environment.Scenes
57 public event RegionUp OnRegionUp; 57 public event RegionUp OnRegionUp;
58 public event ChildAgentUpdate OnChildAgentUpdate; 58 public event ChildAgentUpdate OnChildAgentUpdate;
59 public event RemoveKnownRegionsFromAvatarList OnRemoveKnownRegionFromAvatar; 59 public event RemoveKnownRegionsFromAvatarList OnRemoveKnownRegionFromAvatar;
60
61 60
61 private AgentCrossing handler001 = null; // OnAvatarCrossingIntoRegion;
62 private ExpectUserDelegate handler002 = null; // OnExpectUser;
63 private ExpectPrimDelegate handler003 = null; // OnExpectPrim;
64 private CloseAgentConnection handler004 = null; // OnCloseAgentConnection;
65 private PrimCrossing handler005 = null; // OnPrimCrossingIntoRegion;
66 private RegionUp handler006 = null; // OnRegionUp;
67 private ChildAgentUpdate handler007 = null; // OnChildAgentUpdate;
68 private RemoveKnownRegionsFromAvatarList handler008 = null; // OnRemoveKnownRegionFromAvatar;
62 69
63 public KillObjectDelegate KillObject; 70 public KillObjectDelegate KillObject;
64 public string _debugRegionName = String.Empty; 71 public string _debugRegionName = String.Empty;
@@ -125,27 +132,30 @@ namespace OpenSim.Region.Environment.Scenes
125 /// 132 ///
126 protected void NewUserConnection(ulong regionHandle, AgentCircuitData agent) 133 protected void NewUserConnection(ulong regionHandle, AgentCircuitData agent)
127 { 134 {
128 if (OnExpectUser != null) 135 handler002 = OnExpectUser;
136 if (handler002 != null)
129 { 137 {
130 //m_log.Info("[INTER]: " + debugRegionName + ": SceneCommunicationService: OnExpectUser Fired for User:" + agent.firstname + " " + agent.lastname); 138 //m_log.Info("[INTER]: " + debugRegionName + ": SceneCommunicationService: OnExpectUser Fired for User:" + agent.firstname + " " + agent.lastname);
131 OnExpectUser(regionHandle, agent); 139 handler002(regionHandle, agent);
132 } 140 }
133 } 141 }
134 142
135 protected bool newRegionUp(RegionInfo region) 143 protected bool newRegionUp(RegionInfo region)
136 { 144 {
137 if (OnRegionUp != null) 145 handler006 = OnRegionUp;
146 if (handler006 != null)
138 { 147 {
139 //m_log.Info("[INTER]: " + debugRegionName + ": SceneCommunicationService: newRegionUp Fired for User:" + region.RegionName); 148 //m_log.Info("[INTER]: " + debugRegionName + ": SceneCommunicationService: newRegionUp Fired for User:" + region.RegionName);
140 OnRegionUp(region); 149 handler006(region);
141 } 150 }
142 return true; 151 return true;
143 } 152 }
144 153
145 protected bool ChildAgentUpdate(ulong regionHandle, ChildAgentDataUpdate cAgentData) 154 protected bool ChildAgentUpdate(ulong regionHandle, ChildAgentDataUpdate cAgentData)
146 { 155 {
147 if (OnChildAgentUpdate != null) 156 handler007 = OnChildAgentUpdate;
148 OnChildAgentUpdate(regionHandle, cAgentData); 157 if (handler007 != null)
158 handler007(regionHandle, cAgentData);
149 159
150 160
151 return true; 161 return true;
@@ -153,36 +163,39 @@ namespace OpenSim.Region.Environment.Scenes
153 163
154 protected void AgentCrossing(ulong regionHandle, LLUUID agentID, LLVector3 position, bool isFlying) 164 protected void AgentCrossing(ulong regionHandle, LLUUID agentID, LLVector3 position, bool isFlying)
155 { 165 {
156 if (OnAvatarCrossingIntoRegion != null) 166 handler001 = OnAvatarCrossingIntoRegion;
167 if (handler001 != null)
157 { 168 {
158 OnAvatarCrossingIntoRegion(regionHandle, agentID, position, isFlying); 169 handler001(regionHandle, agentID, position, isFlying);
159 } 170 }
160 } 171 }
161 172
162 protected void IncomingPrimCrossing(ulong regionHandle, LLUUID primID, String objXMLData) 173 protected void IncomingPrimCrossing(ulong regionHandle, LLUUID primID, String objXMLData)
163 { 174 {
164 if (OnExpectPrim != null) 175 handler003 = OnExpectPrim;
176 if (handler003 != null)
165 { 177 {
166 OnExpectPrim(regionHandle, primID, objXMLData); 178 handler003(regionHandle, primID, objXMLData);
167 } 179 }
168 180
169 } 181 }
170 182
171 protected void PrimCrossing(ulong regionHandle, LLUUID primID, LLVector3 position, bool isPhysical) 183 protected void PrimCrossing(ulong regionHandle, LLUUID primID, LLVector3 position, bool isPhysical)
172 { 184 {
173 if (OnPrimCrossingIntoRegion != null) 185 handler005 = OnPrimCrossingIntoRegion;
186 if (handler005 != null)
174 { 187 {
175 OnPrimCrossingIntoRegion(regionHandle, primID, position, isPhysical); 188 handler005(regionHandle, primID, position, isPhysical);
176 } 189 }
177 } 190 }
178 191
179 protected bool CloseConnection(ulong regionHandle, LLUUID agentID) 192 protected bool CloseConnection(ulong regionHandle, LLUUID agentID)
180 { 193 {
181 m_log.Info("[INTERREGION]: Incoming Agent Close Request for agent: " + agentID.ToString()); 194 m_log.Info("[INTERREGION]: Incoming Agent Close Request for agent: " + agentID.ToString());
182 195 handler004 = OnCloseAgentConnection;
183 if (OnCloseAgentConnection != null) 196 if (handler004 != null)
184 { 197 {
185 return OnCloseAgentConnection(regionHandle, agentID); 198 return handler004(regionHandle, agentID);
186 } 199 }
187 return false; 200 return false;
188 } 201 }
@@ -424,9 +437,10 @@ namespace OpenSim.Region.Environment.Scenes
424 // We remove the list of known regions from the agent's known region list through an event 437 // We remove the list of known regions from the agent's known region list through an event
425 // to scene, because, if an agent logged of, it's likely that there will be no scene presence 438 // to scene, because, if an agent logged of, it's likely that there will be no scene presence
426 // by the time we get to this part of the method. 439 // by the time we get to this part of the method.
427 if (OnRemoveKnownRegionFromAvatar != null) 440 handler008 = OnRemoveKnownRegionFromAvatar;
441 if (handler008 != null)
428 { 442 {
429 OnRemoveKnownRegionFromAvatar(agentID,regionlst); 443 handler008(agentID, regionlst);
430 } 444 }
431 } 445 }
432 446