Author: nextgens
Date: 2008-01-18 14:08:13 +0000 (Fri, 18 Jan 2008)
New Revision: 17138

Modified:
   trunk/apps/Thaw/src/thaw/core/Core.java
   trunk/apps/Thaw/src/thaw/plugins/index/Comment.java
   trunk/apps/Thaw/src/thaw/plugins/index/Index.java
Log:
Thaw: Fix a memory leak in index comment fetching system

Modified: trunk/apps/Thaw/src/thaw/core/Core.java
===================================================================
--- trunk/apps/Thaw/src/thaw/core/Core.java     2008-01-18 14:06:32 UTC (rev 
17137)
+++ trunk/apps/Thaw/src/thaw/core/Core.java     2008-01-18 14:08:13 UTC (rev 
17138)
@@ -143,7 +143,7 @@
                                     "Thaw "+Main.VERSION+" : 
"+I18n.getMessage("thaw.statusBar.ready"));

                splashScreen.hide();
-
+               splashScreen = null;
                mainWindow.setVisible(true);

                setTheme(lookAndFeel);

Modified: trunk/apps/Thaw/src/thaw/plugins/index/Comment.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/index/Comment.java 2008-01-18 14:06:32 UTC 
(rev 17137)
+++ trunk/apps/Thaw/src/thaw/plugins/index/Comment.java 2008-01-18 14:08:13 UTC 
(rev 17138)
@@ -796,8 +796,11 @@

        public void update(Observable o, Object param) {
                if (o instanceof FCPTransferQuery) {
-                       if (((FCPTransferQuery)o).isFinished())
-                               ((Observable)o).deleteObserver(this);
+                       if (((FCPTransferQuery)o).isFinished()) {
+                               o.deleteObserver(this);
+                               ((FCPTransferQuery)o).stop(queueManager);
+                               queueManager.remove((FCPTransferQuery)o);
+                       }

                        if (o instanceof FCPClientPut) {
                                FCPClientPut put = (FCPClientPut)o;

Modified: trunk/apps/Thaw/src/thaw/plugins/index/Index.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/index/Index.java   2008-01-18 14:06:32 UTC 
(rev 17137)
+++ trunk/apps/Thaw/src/thaw/plugins/index/Index.java   2008-01-18 14:08:13 UTC 
(rev 17138)
@@ -1038,6 +1038,8 @@
                        } else {
                                nmbFailedCommentFetching++;
                        }
+                       
+                       c.deleteObserver(this);

                        if (nmbFailedCommentFetching > 
COMMENT_FETCHING_RUNNING_AT_THE_SAME_TIME +1) {
                                if (indexTree != null) {


Reply via email to