diff options
author | root | 2019-03-11 23:41:26 +0000 |
---|---|---|
committer | root | 2019-03-11 23:41:26 +0000 |
commit | c7a02dc058018429fca8fb0c979785be34bebaf6 (patch) | |
tree | a364249657222c201c9880ec355dafbcb7f99d9a /OpenSim/Region/ClientStack/Linden/Caps | |
parent | Should have been in the last commit (diff) | |
parent | errr use invariantculture compare not current (diff) | |
download | opensim-SC-c7a02dc058018429fca8fb0c979785be34bebaf6.zip opensim-SC-c7a02dc058018429fca8fb0c979785be34bebaf6.tar.gz opensim-SC-c7a02dc058018429fca8fb0c979785be34bebaf6.tar.bz2 opensim-SC-c7a02dc058018429fca8fb0c979785be34bebaf6.tar.xz |
Merge branch 'master' of brain.opensimulator.org:/var/git/opensim
Diffstat (limited to 'OpenSim/Region/ClientStack/Linden/Caps')
-rwxr-xr-x[-rw-r--r--] | OpenSim/Region/ClientStack/Linden/Caps/GetAssetsModule.cs | 39 | ||||
-rwxr-xr-x[-rw-r--r--] | OpenSim/Region/ClientStack/Linden/Caps/WebFetchInvDescModule.cs | 23 |
2 files changed, 38 insertions, 24 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/Caps/GetAssetsModule.cs b/OpenSim/Region/ClientStack/Linden/Caps/GetAssetsModule.cs index 9187979..c071bd1 100644..100755 --- a/OpenSim/Region/ClientStack/Linden/Caps/GetAssetsModule.cs +++ b/OpenSim/Region/ClientStack/Linden/Caps/GetAssetsModule.cs | |||
@@ -59,7 +59,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
59 | private string m_GetTextureURL; | 59 | private string m_GetTextureURL; |
60 | private string m_GetMeshURL; | 60 | private string m_GetMeshURL; |
61 | private string m_GetMesh2URL; | 61 | private string m_GetMesh2URL; |
62 | // private string m_GetAssetURL; | 62 | private string m_GetAssetURL; |
63 | 63 | ||
64 | class APollRequest | 64 | class APollRequest |
65 | { | 65 | { |
@@ -87,7 +87,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
87 | private Dictionary<UUID, string> m_capsDictTexture = new Dictionary<UUID, string>(); | 87 | private Dictionary<UUID, string> m_capsDictTexture = new Dictionary<UUID, string>(); |
88 | private Dictionary<UUID, string> m_capsDictGetMesh = new Dictionary<UUID, string>(); | 88 | private Dictionary<UUID, string> m_capsDictGetMesh = new Dictionary<UUID, string>(); |
89 | private Dictionary<UUID, string> m_capsDictGetMesh2 = new Dictionary<UUID, string>(); | 89 | private Dictionary<UUID, string> m_capsDictGetMesh2 = new Dictionary<UUID, string>(); |
90 | //private Dictionary<UUID, string> m_capsDictGetAsset = new Dictionary<UUID, string>(); | 90 | private Dictionary<UUID, string> m_capsDictGetAsset = new Dictionary<UUID, string>(); |
91 | 91 | ||
92 | #region Region Module interfaceBase Members | 92 | #region Region Module interfaceBase Members |
93 | 93 | ||
@@ -113,11 +113,11 @@ namespace OpenSim.Region.ClientStack.Linden | |||
113 | m_GetMesh2URL = config.GetString("Cap_GetMesh2", string.Empty); | 113 | m_GetMesh2URL = config.GetString("Cap_GetMesh2", string.Empty); |
114 | if (m_GetMesh2URL != string.Empty) | 114 | if (m_GetMesh2URL != string.Empty) |
115 | m_Enabled = true; | 115 | m_Enabled = true; |
116 | /* | 116 | |
117 | m_GetAssetURL = config.GetString("Cap_GetAsset", string.Empty); | 117 | m_GetAssetURL = config.GetString("Cap_GetAsset", string.Empty); |
118 | if (m_GetAssetURL != string.Empty) | 118 | if (m_GetAssetURL != string.Empty) |
119 | m_Enabled = true; | 119 | m_Enabled = true; |
120 | */ | 120 | |
121 | } | 121 | } |
122 | 122 | ||
123 | public void AddRegion(Scene pScene) | 123 | public void AddRegion(Scene pScene) |
@@ -204,19 +204,26 @@ namespace OpenSim.Region.ClientStack.Linden | |||
204 | 204 | ||
205 | private static void DoAssetRequests() | 205 | private static void DoAssetRequests() |
206 | { | 206 | { |
207 | while (m_NumberScenes > 0) | 207 | try |
208 | { | 208 | { |
209 | APollRequest poolreq; | 209 | while (m_NumberScenes > 0) |
210 | if(m_queue.TryTake(out poolreq, 4500)) | ||
211 | { | 210 | { |
212 | if (m_NumberScenes <= 0) | 211 | APollRequest poolreq; |
213 | break; | 212 | if (m_queue.TryTake(out poolreq, 4500)) |
213 | { | ||
214 | if (m_NumberScenes <= 0) | ||
215 | break; | ||
216 | Watchdog.UpdateThread(); | ||
217 | if (poolreq.reqID != UUID.Zero) | ||
218 | poolreq.thepoll.Process(poolreq); | ||
219 | poolreq = null; | ||
220 | } | ||
214 | Watchdog.UpdateThread(); | 221 | Watchdog.UpdateThread(); |
215 | if (poolreq.reqID != UUID.Zero) | ||
216 | poolreq.thepoll.Process(poolreq); | ||
217 | poolreq = null; | ||
218 | } | 222 | } |
219 | Watchdog.UpdateThread(); | 223 | } |
224 | catch (ThreadAbortException) | ||
225 | { | ||
226 | Thread.ResetAbort(); | ||
220 | } | 227 | } |
221 | } | 228 | } |
222 | 229 | ||
@@ -441,7 +448,6 @@ namespace OpenSim.Region.ClientStack.Linden | |||
441 | else if (m_GetMesh2URL != string.Empty) | 448 | else if (m_GetMesh2URL != string.Empty) |
442 | caps.RegisterHandler("GetMesh2", m_GetMesh2URL); | 449 | caps.RegisterHandler("GetMesh2", m_GetMesh2URL); |
443 | 450 | ||
444 | /* we can't support this cap. Current viewers connect to the wrong regions. | ||
445 | //ViewerAsset | 451 | //ViewerAsset |
446 | if (m_GetAssetURL == "localhost") | 452 | if (m_GetAssetURL == "localhost") |
447 | { | 453 | { |
@@ -459,7 +465,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
459 | } | 465 | } |
460 | else if (m_GetAssetURL != string.Empty) | 466 | else if (m_GetAssetURL != string.Empty) |
461 | caps.RegisterHandler("ViewerAsset", m_GetMesh2URL); | 467 | caps.RegisterHandler("ViewerAsset", m_GetMesh2URL); |
462 | */ | 468 | |
463 | } | 469 | } |
464 | 470 | ||
465 | private void DeregisterCaps(UUID agentID, Caps caps) | 471 | private void DeregisterCaps(UUID agentID, Caps caps) |
@@ -480,13 +486,12 @@ namespace OpenSim.Region.ClientStack.Linden | |||
480 | MainServer.Instance.RemovePollServiceHTTPHandler("", capUrl); | 486 | MainServer.Instance.RemovePollServiceHTTPHandler("", capUrl); |
481 | m_capsDictGetMesh2.Remove(agentID); | 487 | m_capsDictGetMesh2.Remove(agentID); |
482 | } | 488 | } |
483 | /* | 489 | |
484 | if (m_capsDictGetAsset.TryGetValue(agentID, out capUrl)) | 490 | if (m_capsDictGetAsset.TryGetValue(agentID, out capUrl)) |
485 | { | 491 | { |
486 | MainServer.Instance.RemovePollServiceHTTPHandler("", capUrl); | 492 | MainServer.Instance.RemovePollServiceHTTPHandler("", capUrl); |
487 | m_capsDictGetAsset.Remove(agentID); | 493 | m_capsDictGetAsset.Remove(agentID); |
488 | } | 494 | } |
489 | */ | ||
490 | } | 495 | } |
491 | } | 496 | } |
492 | } | 497 | } |
diff --git a/OpenSim/Region/ClientStack/Linden/Caps/WebFetchInvDescModule.cs b/OpenSim/Region/ClientStack/Linden/Caps/WebFetchInvDescModule.cs index 41d70a3..9a01567 100644..100755 --- a/OpenSim/Region/ClientStack/Linden/Caps/WebFetchInvDescModule.cs +++ b/OpenSim/Region/ClientStack/Linden/Caps/WebFetchInvDescModule.cs | |||
@@ -395,17 +395,26 @@ namespace OpenSim.Region.ClientStack.Linden | |||
395 | 395 | ||
396 | private static void DoInventoryRequests() | 396 | private static void DoInventoryRequests() |
397 | { | 397 | { |
398 | while (true) | 398 | bool running = true; |
399 | while (running) | ||
399 | { | 400 | { |
400 | APollRequest poolreq; | 401 | try |
401 | if (m_queue.TryTake(out poolreq, 4500)) | ||
402 | { | 402 | { |
403 | APollRequest poolreq; | ||
404 | if (m_queue.TryTake(out poolreq, 4500)) | ||
405 | { | ||
406 | Watchdog.UpdateThread(); | ||
407 | if (poolreq.thepoll != null) | ||
408 | poolreq.thepoll.Process(poolreq); | ||
409 | poolreq = null; | ||
410 | } | ||
403 | Watchdog.UpdateThread(); | 411 | Watchdog.UpdateThread(); |
404 | if (poolreq.thepoll != null) | ||
405 | poolreq.thepoll.Process(poolreq); | ||
406 | poolreq = null; | ||
407 | } | 412 | } |
408 | Watchdog.UpdateThread(); | 413 | catch (ThreadAbortException) |
414 | { | ||
415 | Thread.ResetAbort(); | ||
416 | running = false; | ||
417 | } | ||
409 | } | 418 | } |
410 | } | 419 | } |
411 | } | 420 | } |