a few more changes on potencial mem issues
parent
e21ac8b3c4
commit
ba7904a3a8
|
@ -141,6 +141,11 @@ namespace OpenSim.Framework.Capabilities
|
|||
m_capsActive.Reset();
|
||||
}
|
||||
|
||||
~Caps()
|
||||
{
|
||||
m_capsActive.Dispose();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Register a handler. This allows modules to register handlers.
|
||||
/// </summary>
|
||||
|
|
|
@ -55,6 +55,11 @@ namespace OpenSim.Framework
|
|||
Dictionary2 = new Dictionary<TKey2, TValue>(capacity);
|
||||
}
|
||||
|
||||
~DoubleDictionaryThreadAbortSafe()
|
||||
{
|
||||
rwLock.Dispose();
|
||||
}
|
||||
|
||||
public void Add(TKey1 key1, TKey2 key2, TValue value)
|
||||
{
|
||||
bool gotLock = false;
|
||||
|
|
|
@ -1483,6 +1483,7 @@ namespace OpenSim.Region.PhysicsModule.ubODEMeshing
|
|||
|
||||
lock (diskLock)
|
||||
{
|
||||
Stream stream = null;
|
||||
try
|
||||
{
|
||||
if (!Directory.Exists(dir))
|
||||
|
@ -1490,7 +1491,7 @@ namespace OpenSim.Region.PhysicsModule.ubODEMeshing
|
|||
Directory.CreateDirectory(dir);
|
||||
}
|
||||
|
||||
using(Stream stream = File.Open(filename, FileMode.Create))
|
||||
stream = File.Open(filename, FileMode.Create);
|
||||
ok = mesh.ToStream(stream);
|
||||
}
|
||||
catch (IOException e)
|
||||
|
@ -1500,6 +1501,11 @@ namespace OpenSim.Region.PhysicsModule.ubODEMeshing
|
|||
filename, e.Message, e.StackTrace);
|
||||
ok = false;
|
||||
}
|
||||
finally
|
||||
{
|
||||
if(stream != null)
|
||||
stream.Dispose();
|
||||
}
|
||||
|
||||
if (!ok && File.Exists(filename))
|
||||
{
|
||||
|
|
|
@ -625,6 +625,7 @@ namespace Amib.Threading.Internal
|
|||
if (!_isDisposed)
|
||||
{
|
||||
Cleanup();
|
||||
_headWaiterEntry.Close();
|
||||
}
|
||||
_isDisposed = true;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue