aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules
diff options
context:
space:
mode:
authorJohn Hurliman2009-10-22 14:33:54 -0700
committerJohn Hurliman2009-10-22 14:33:54 -0700
commitba2972eaf6d608fe4e6a6610089ab9fb8bae3f2d (patch)
treefc21babfe36539d4b61c0a4d5154ba0c91866768 /OpenSim/Region/CoreModules
parentForgot to hit save in the last commit (diff)
downloadopensim-SC_OLD-ba2972eaf6d608fe4e6a6610089ab9fb8bae3f2d.zip
opensim-SC_OLD-ba2972eaf6d608fe4e6a6610089ab9fb8bae3f2d.tar.gz
opensim-SC_OLD-ba2972eaf6d608fe4e6a6610089ab9fb8bae3f2d.tar.bz2
opensim-SC_OLD-ba2972eaf6d608fe4e6a6610089ab9fb8bae3f2d.tar.xz
* Send out m_bodyRot everywhere instead of m_rotation. Still have no clue which is right
* Fix WorldMapModule.process() to not trip the watchdog timer
Diffstat (limited to 'OpenSim/Region/CoreModules')
-rw-r--r--OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs31
1 files changed, 16 insertions, 15 deletions
diff --git a/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs b/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs
index a4bcbad..f4b54aa 100644
--- a/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs
+++ b/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs
@@ -58,7 +58,7 @@ namespace OpenSim.Region.CoreModules.World.WorldMap
58 LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 58 LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
59 59
60 private static readonly string DEFAULT_WORLD_MAP_EXPORT_PATH = "exportmap.jpg"; 60 private static readonly string DEFAULT_WORLD_MAP_EXPORT_PATH = "exportmap.jpg";
61 61 private static readonly UUID STOP_UUID = UUID.Random();
62 private static readonly string m_mapLayerPath = "0001/"; 62 private static readonly string m_mapLayerPath = "0001/";
63 63
64 private OpenSim.Framework.BlockingQueue<MapRequestState> requests = new OpenSim.Framework.BlockingQueue<MapRequestState>(); 64 private OpenSim.Framework.BlockingQueue<MapRequestState> requests = new OpenSim.Framework.BlockingQueue<MapRequestState>();
@@ -349,7 +349,7 @@ namespace OpenSim.Region.CoreModules.World.WorldMap
349 private void StopThread() 349 private void StopThread()
350 { 350 {
351 MapRequestState st = new MapRequestState(); 351 MapRequestState st = new MapRequestState();
352 st.agentID=UUID.Zero; 352 st.agentID=STOP_UUID;
353 st.EstateID=0; 353 st.EstateID=0;
354 st.flags=0; 354 st.flags=0;
355 st.godlike=false; 355 st.godlike=false;
@@ -437,25 +437,26 @@ namespace OpenSim.Region.CoreModules.World.WorldMap
437 { 437 {
438 while (true) 438 while (true)
439 { 439 {
440 MapRequestState st = requests.Dequeue(); 440 MapRequestState st = requests.Dequeue(1000);
441 441
442 // end gracefully 442 // end gracefully
443 if (st.agentID == UUID.Zero) 443 if (st.agentID == STOP_UUID)
444 {
445 break; 444 break;
446 }
447 445
448 bool dorequest = true; 446 if (st.agentID != UUID.Zero)
449 lock (m_rootAgents)
450 { 447 {
451 if (!m_rootAgents.Contains(st.agentID)) 448 bool dorequest = true;
452 dorequest = false; 449 lock (m_rootAgents)
453 } 450 {
451 if (!m_rootAgents.Contains(st.agentID))
452 dorequest = false;
453 }
454 454
455 if (dorequest) 455 if (dorequest)
456 { 456 {
457 OSDMap response = RequestMapItemsAsync("", st.agentID, st.flags, st.EstateID, st.godlike, st.itemtype, st.regionhandle); 457 OSDMap response = RequestMapItemsAsync("", st.agentID, st.flags, st.EstateID, st.godlike, st.itemtype, st.regionhandle);
458 RequestMapItemsCompleted(response); 458 RequestMapItemsCompleted(response);
459 }
459 } 460 }
460 461
461 Watchdog.UpdateThread(); 462 Watchdog.UpdateThread();