aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/CoreModules/Agent/TextureSender/J2KDecoderModule.cs25
1 files changed, 17 insertions, 8 deletions
diff --git a/OpenSim/Region/CoreModules/Agent/TextureSender/J2KDecoderModule.cs b/OpenSim/Region/CoreModules/Agent/TextureSender/J2KDecoderModule.cs
index 2879154..a54fec7 100644
--- a/OpenSim/Region/CoreModules/Agent/TextureSender/J2KDecoderModule.cs
+++ b/OpenSim/Region/CoreModules/Agent/TextureSender/J2KDecoderModule.cs
@@ -55,6 +55,16 @@ namespace OpenSim.Region.CoreModules.Agent.TextureSender
55 private readonly Dictionary<UUID, List<DecodedCallback>> m_notifyList = new Dictionary<UUID, List<DecodedCallback>>(); 55 private readonly Dictionary<UUID, List<DecodedCallback>> m_notifyList = new Dictionary<UUID, List<DecodedCallback>>();
56 /// <summary>Cache that will store decoded JPEG2000 layer boundary data</summary> 56 /// <summary>Cache that will store decoded JPEG2000 layer boundary data</summary>
57 private IImprovedAssetCache m_cache; 57 private IImprovedAssetCache m_cache;
58 private IImprovedAssetCache Cache
59 {
60 get
61 {
62 if (m_cache == null)
63 m_cache = m_scene.RequestModuleInterface<IImprovedAssetCache>();
64
65 return m_cache;
66 }
67 }
58 /// <summary>Reference to a scene (doesn't matter which one as long as it can load the cache module)</summary> 68 /// <summary>Reference to a scene (doesn't matter which one as long as it can load the cache module)</summary>
59 private UUID m_CreatorID = UUID.Zero; 69 private UUID m_CreatorID = UUID.Zero;
60 private Scene m_scene; 70 private Scene m_scene;
@@ -98,7 +108,6 @@ namespace OpenSim.Region.CoreModules.Agent.TextureSender
98 108
99 public void PostInitialise() 109 public void PostInitialise()
100 { 110 {
101 m_cache = m_scene.RequestModuleInterface<IImprovedAssetCache>();
102 } 111 }
103 112
104 public void Close() 113 public void Close()
@@ -297,7 +306,7 @@ namespace OpenSim.Region.CoreModules.Agent.TextureSender
297 { 306 {
298 m_decodedCache.AddOrUpdate(AssetId, Layers, TimeSpan.FromMinutes(10)); 307 m_decodedCache.AddOrUpdate(AssetId, Layers, TimeSpan.FromMinutes(10));
299 308
300 if (m_cache != null) 309 if (Cache != null)
301 { 310 {
302 string assetID = "j2kCache_" + AssetId.ToString(); 311 string assetID = "j2kCache_" + AssetId.ToString();
303 312
@@ -321,7 +330,7 @@ namespace OpenSim.Region.CoreModules.Agent.TextureSender
321 330
322 #endregion Serialize Layer Data 331 #endregion Serialize Layer Data
323 332
324 m_cache.Cache(layerDecodeAsset); 333 Cache.Cache(layerDecodeAsset);
325 } 334 }
326 } 335 }
327 336
@@ -331,10 +340,10 @@ namespace OpenSim.Region.CoreModules.Agent.TextureSender
331 { 340 {
332 return true; 341 return true;
333 } 342 }
334 else if (m_cache != null) 343 else if (Cache != null)
335 { 344 {
336 string assetName = "j2kCache_" + AssetId.ToString(); 345 string assetName = "j2kCache_" + AssetId.ToString();
337 AssetBase layerDecodeAsset = m_cache.Get(assetName); 346 AssetBase layerDecodeAsset = Cache.Get(assetName);
338 347
339 if (layerDecodeAsset != null) 348 if (layerDecodeAsset != null)
340 { 349 {
@@ -346,7 +355,7 @@ namespace OpenSim.Region.CoreModules.Agent.TextureSender
346 if (lines.Length == 0) 355 if (lines.Length == 0)
347 { 356 {
348 m_log.Warn("[J2KDecodeCache]: Expiring corrupted layer data (empty) " + assetName); 357 m_log.Warn("[J2KDecodeCache]: Expiring corrupted layer data (empty) " + assetName);
349 m_cache.Expire(assetName); 358 Cache.Expire(assetName);
350 return false; 359 return false;
351 } 360 }
352 361
@@ -367,7 +376,7 @@ namespace OpenSim.Region.CoreModules.Agent.TextureSender
367 catch (FormatException) 376 catch (FormatException)
368 { 377 {
369 m_log.Warn("[J2KDecodeCache]: Expiring corrupted layer data (format) " + assetName); 378 m_log.Warn("[J2KDecodeCache]: Expiring corrupted layer data (format) " + assetName);
370 m_cache.Expire(assetName); 379 Cache.Expire(assetName);
371 return false; 380 return false;
372 } 381 }
373 382
@@ -378,7 +387,7 @@ namespace OpenSim.Region.CoreModules.Agent.TextureSender
378 else 387 else
379 { 388 {
380 m_log.Warn("[J2KDecodeCache]: Expiring corrupted layer data (layout) " + assetName); 389 m_log.Warn("[J2KDecodeCache]: Expiring corrupted layer data (layout) " + assetName);
381 m_cache.Expire(assetName); 390 Cache.Expire(assetName);
382 return false; 391 return false;
383 } 392 }
384 } 393 }