From 4ee8d8a813f6ee164fb361fbf6c26384b668bd1a Mon Sep 17 00:00:00 2001 From: Melanie Date: Fri, 7 Aug 2009 20:43:23 +0100 Subject: Another stab at cmickeyb's patch for script GC. Moved the Close() for the appdomain-hosted parts into a new destructor on ScriptInstance. --- OpenSim/Region/Framework/Scenes/EventManager.cs | 11 ++++++----- OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | 16 ++++++++-------- 2 files changed, 14 insertions(+), 13 deletions(-) (limited to 'OpenSim/Region/Framework/Scenes') diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs index 086496e..1d4d6d7 100644 --- a/OpenSim/Region/Framework/Scenes/EventManager.cs +++ b/OpenSim/Region/Framework/Scenes/EventManager.cs @@ -953,11 +953,12 @@ namespace OpenSim.Region.Framework.Scenes // this lets us keep track of nasty script events like timer, etc. public void TriggerTimerEvent(uint objLocalID, double Interval) { - handlerScriptTimerEvent = OnScriptTimerEvent; - if (handlerScriptTimerEvent != null) - { - handlerScriptTimerEvent(objLocalID, Interval); - } + throw new NotImplementedException("TriggerTimerEvent was thought to be not used anymore and the registration for the event from scene object part has been commented out due to a memory leak"); + //handlerScriptTimerEvent = OnScriptTimerEvent; + //if (handlerScriptTimerEvent != null) + //{ + // handlerScriptTimerEvent(objLocalID, Interval); + //} } /// diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs index bc11709..61dfa52 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs @@ -3673,14 +3673,14 @@ if (m_shape != null) { return; } - if ((GetEffectiveObjectFlags() & (uint)PrimFlags.Scripted) != 0) - { - m_parentGroup.Scene.EventManager.OnScriptTimerEvent += handleTimerAccounting; - } - else - { - m_parentGroup.Scene.EventManager.OnScriptTimerEvent -= handleTimerAccounting; - } + //if ((GetEffectiveObjectFlags() & (uint)PrimFlags.Scripted) != 0) + //{ + // m_parentGroup.Scene.EventManager.OnScriptTimerEvent += handleTimerAccounting; + //} + //else + //{ + // m_parentGroup.Scene.EventManager.OnScriptTimerEvent -= handleTimerAccounting; + //} LocalFlags=(PrimFlags)objectflagupdate; -- cgit v1.1