[gnome-commander] Fixed problem #375357 (crash when cancelling calculation of dir properties)



commit d5ddbf471c1af5024ed913e9d689dca174c311e4
Author: Dmitriy Lyfar <dlyfar gmail com>
Date:   Sun Jun 21 13:20:22 2009 +0200

    Fixed problem #375357 (crash when cancelling calculation of dir properties)

 ChangeLog                          |    7 ++++++-
 NEWS                               |    1 +
 doc/C/gnome-commander.xml          |    3 +++
 src/gnome-cmd-file-props-dialog.cc |    5 ++++-
 4 files changed, 14 insertions(+), 2 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index afeb047..6b37aaa 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,10 +1,15 @@
+2009-06-21  Dmitriy Lyfar  <dlyfar gmail com>
+
+	* src/gnome-cmd-file-props-dialog.cc:
+	Fixed problem #375357 (crash when cancelling calculation of dir properties)
+
 2009-06-15  Piotr Eljasiak  <epiotr use pl>
 
 	* src/gnome-cmd-profile-component.cc:
 	advrename profiles: ref template_entry to keep it alive longer
 
 	* src/dialogs/gnome-cmd-manage-profile-dialog.cc:
-	advrename profiles: added supprt for profile editing
+	advrename profiles: added support for profile editing
 
 2009-06-14  Piotr Eljasiak  <epiotr use pl>
 
diff --git a/NEWS b/NEWS
index a2e31ff..c64caf2 100644
--- a/NEWS
+++ b/NEWS
@@ -3,6 +3,7 @@ gnome-commander 1.2.8
 ---------------
 
 Bug fixes:
+ * Fixed problem #375357 (crash when cancelling calculation of dir properties)
  * Fixed problem #536446 (file name not focused for in-place renaming)
  * Fixed problem #539812 (crash when deleting files: broken it.po)
  * Fixed problem #548947 (non-UTF8 locale date problem)
diff --git a/doc/C/gnome-commander.xml b/doc/C/gnome-commander.xml
index f7ddd63..703b2ae 100644
--- a/doc/C/gnome-commander.xml
+++ b/doc/C/gnome-commander.xml
@@ -5971,6 +5971,9 @@
                 <para>
                     <itemizedlist>
                         <listitem>
+                            <para>Fixed problem #375357 (crash when cancelling calculation of dir properties)</para>
+                        </listitem>
+                        <listitem>
                             <para>Fixed problem #536446 (file name not focused for in-place renaming)</para>
                         </listitem>
                         <listitem>
diff --git a/src/gnome-cmd-file-props-dialog.cc b/src/gnome-cmd-file-props-dialog.cc
index e3bd519..5f08e16 100644
--- a/src/gnome-cmd-file-props-dialog.cc
+++ b/src/gnome-cmd-file-props-dialog.cc
@@ -45,6 +45,7 @@ typedef struct
     GMutex *mutex;
     gboolean count_done;
     gchar *msg;
+    guint updater_proc_id;
 
     GtkWidget *notebook;
     GtkWidget *copy_button;
@@ -140,6 +141,8 @@ static void calc_tree_size_func (GnomeCmdFilePropsDialogPrivate *data)
 // Tells the thread to exit and then waits for it to do so.
 static gboolean join_thread_func (GnomeCmdFilePropsDialogPrivate *data)
 {
+    g_source_remove (data->updater_proc_id);
+    
     if (data->thread)
         g_thread_join (data->thread);
 
@@ -185,7 +188,7 @@ static void do_calc_tree_size (GnomeCmdFilePropsDialogPrivate *data)
 
     data->thread = g_thread_create ((PthreadFunc) calc_tree_size_func, data, TRUE, NULL);
 
-    g_timeout_add (gnome_cmd_data.gui_update_rate, (GSourceFunc) update_count_status, data);
+    data->updater_proc_id = g_timeout_add (gnome_cmd_data.gui_update_rate, (GSourceFunc) update_count_status, data);
 }
 
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]