aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/Scripting/WorldComm/WorldCommModule.cs
diff options
context:
space:
mode:
authorMelanie2010-02-08 15:53:20 +0000
committerMelanie2010-02-08 15:53:38 +0000
commitbaaf660511214e52ea4ed20b8e80ec8e1ff06a3a (patch)
tree1e90c7a22ea3354d6bfd5d2b3f8f64f199dbd477 /OpenSim/Region/CoreModules/Scripting/WorldComm/WorldCommModule.cs
parentAdded missing configs to Standalone.ini (diff)
parentAdding the Careminster "Configger" tool to OpenSim. The tool will, when launched (diff)
downloadopensim-SC_OLD-baaf660511214e52ea4ed20b8e80ec8e1ff06a3a.zip
opensim-SC_OLD-baaf660511214e52ea4ed20b8e80ec8e1ff06a3a.tar.gz
opensim-SC_OLD-baaf660511214e52ea4ed20b8e80ec8e1ff06a3a.tar.bz2
opensim-SC_OLD-baaf660511214e52ea4ed20b8e80ec8e1ff06a3a.tar.xz
Merge branch 'master' into presence-refactor
This was a large, heavily conflicted merge and things MAY have got broken. Please check!
Diffstat (limited to 'OpenSim/Region/CoreModules/Scripting/WorldComm/WorldCommModule.cs')
-rw-r--r--OpenSim/Region/CoreModules/Scripting/WorldComm/WorldCommModule.cs36
1 files changed, 13 insertions, 23 deletions
diff --git a/OpenSim/Region/CoreModules/Scripting/WorldComm/WorldCommModule.cs b/OpenSim/Region/CoreModules/Scripting/WorldComm/WorldCommModule.cs
index 60df2e7..d647e71 100644
--- a/OpenSim/Region/CoreModules/Scripting/WorldComm/WorldCommModule.cs
+++ b/OpenSim/Region/CoreModules/Scripting/WorldComm/WorldCommModule.cs
@@ -262,44 +262,34 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
262 { 262 {
263 case ChatTypeEnum.Whisper: 263 case ChatTypeEnum.Whisper:
264 if (dis < m_whisperdistance) 264 if (dis < m_whisperdistance)
265 { 265 QueueMessage(new ListenerInfo(li, name, id, msg));
266 lock (m_pending.SyncRoot)
267 {
268 m_pending.Enqueue(new ListenerInfo(li,name,id,msg));
269 }
270 }
271 break; 266 break;
272 267
273 case ChatTypeEnum.Say: 268 case ChatTypeEnum.Say:
274 if (dis < m_saydistance) 269 if (dis < m_saydistance)
275 { 270 QueueMessage(new ListenerInfo(li, name, id, msg));
276 lock (m_pending.SyncRoot)
277 {
278 m_pending.Enqueue(new ListenerInfo(li,name,id,msg));
279 }
280 }
281 break; 271 break;
282 272
283 case ChatTypeEnum.Shout: 273 case ChatTypeEnum.Shout:
284 if (dis < m_shoutdistance) 274 if (dis < m_shoutdistance)
285 { 275 QueueMessage(new ListenerInfo(li, name, id, msg));
286 lock (m_pending.SyncRoot)
287 {
288 m_pending.Enqueue(new ListenerInfo(li,name,id,msg));
289 }
290 }
291 break; 276 break;
292 277
293 case ChatTypeEnum.Region: 278 case ChatTypeEnum.Region:
294 lock (m_pending.SyncRoot) 279 QueueMessage(new ListenerInfo(li, name, id, msg));
295 {
296 m_pending.Enqueue(new ListenerInfo(li,name,id,msg));
297 }
298 break; 280 break;
299 } 281 }
300 } 282 }
301 } 283 }
302 284
285 protected void QueueMessage(ListenerInfo li)
286 {
287 lock (m_pending.SyncRoot)
288 {
289 m_pending.Enqueue(li);
290 }
291 }
292
303 /// <summary> 293 /// <summary>
304 /// Are there any listen events ready to be dispatched? 294 /// Are there any listen events ready to be dispatched?
305 /// </summary> 295 /// </summary>
@@ -319,7 +309,7 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
319 309
320 lock (m_pending.SyncRoot) 310 lock (m_pending.SyncRoot)
321 { 311 {
322 li = (ListenerInfo) m_pending.Dequeue(); 312 li = (ListenerInfo)m_pending.Dequeue();
323 } 313 }
324 314
325 return li; 315 return li;