diff --git a/OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs b/OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs index 29b047cce6..b8fba99789 100755 --- a/OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs +++ b/OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs @@ -113,7 +113,7 @@ namespace OpenSim.Region.CoreModules.Asset private Dictionary weakAssetReferences = new Dictionary(); private readonly object weakAssetReferencesLock = new object(); - private bool m_updateFileTimeOnCacheHit = false; + private static bool m_updateFileTimeOnCacheHit = false; private static ExpiringKey m_lastFileAccessTimeChange = null; @@ -976,7 +976,8 @@ namespace OpenSim.Region.CoreModules.Asset // If the file is already cached, don't cache it, just touch it so access time is updated if (!replace && File.Exists(filename)) { - UpdateFileLastAccessTime(filename); + if (m_updateFileTimeOnCacheHit) + UpdateFileLastAccessTime(filename); return; } @@ -995,7 +996,8 @@ namespace OpenSim.Region.CoreModules.Asset bformatter.Serialize(stream, asset); stream.Flush(); } - m_lastFileAccessTimeChange.Add(filename, 900000); + if(m_lastFileAccessTimeChange != null) + m_lastFileAccessTimeChange.Add(filename, 900000); } catch (IOException e) {