Fix double free crash (#508224) Patch from Joe Marcus Clarke
authorAlexander Larsson <alexl@redhat.com>
Wed, 9 Jan 2008 08:08:43 +0000 (08:08 +0000)
committerAlexander Larsson <alexl@src.gnome.org>
Wed, 9 Jan 2008 08:08:43 +0000 (08:08 +0000)
2008-01-09  Alexander Larsson  <alexl@redhat.com>

        * fam/fam-helper.c:
        * fam/gfamdirectorymonitor.c:
        * fam/gfamfilemonitor.c:
Fix double free crash (#508224)
Patch from Joe Marcus Clarke

svn path=/trunk/; revision=6281

gio/ChangeLog
gio/fam/fam-helper.c
gio/fam/gfamdirectorymonitor.c
gio/fam/gfamfilemonitor.c

index 5f3a2628677eedc1041937858f2c0905b109e19a..276f416fc0fe9c4c4dc59d4996379363b24a6e5b 100644 (file)
@@ -1,3 +1,11 @@
+2008-01-09  Alexander Larsson  <alexl@redhat.com>
+
+        * fam/fam-helper.c:
+        * fam/gfamdirectorymonitor.c:
+        * fam/gfamfilemonitor.c:
+       Fix double free crash (#508224)
+       Patch from Joe Marcus Clarke
+
 008-01-07  Matthias Clasen  <mclasen@redhat.com>
 
        * === Released 2.15.1 ===
index fb488611fdd9db52c4571cb385e90a70b34ec808..4301f12e80ec2881ad0076c88a0395756e537aa6 100644 (file)
@@ -82,7 +82,7 @@ fam_do_iter_unlocked (void)
     cancelled = sub->cancelled;
     if (ev.code == FAMAcknowledge && cancelled)
       {
-       g_free (sub);
+       _fam_sub_free (sub);
        continue;
       }
     
index 96852bb97956b209f39d83b0d84e644727c2a4ea..b947de743c9a0d2bb7965070ee2a60a7fa7eb45a 100644 (file)
@@ -50,7 +50,6 @@ g_fam_directory_monitor_finalize (GObject *object)
     if (!_fam_sub_cancel (sub))
       g_warning ("Unexpected error cancelling fam monitor");
 
-    _fam_sub_free (sub);
     fam_monitor->sub = NULL;
   }
 
@@ -134,7 +133,6 @@ g_fam_directory_monitor_cancel (GFileMonitor* monitor)
     if (!_fam_sub_cancel (sub))
       g_warning ("Unexpected error cancelling fam monitor");
 
-    _fam_sub_free (sub);
     fam_monitor->sub = NULL;
   }
 
index be3631806eb5e3620b89cc32f0e12ed88c6d8a88..78d3df920a7090b542d6adf761be1b3053078f2a 100644 (file)
@@ -49,7 +49,6 @@ g_fam_file_monitor_finalize (GObject *object)
   if (sub) {
     if (!_fam_sub_cancel (sub))
       g_warning ("Unexpected error cancelling fam monitor");
-    _fam_sub_free (sub);
     fam_monitor->sub = NULL;
   }
 
@@ -132,7 +131,6 @@ g_fam_file_monitor_cancel (GFileMonitor* monitor)
   if (sub) {
     if (!_fam_sub_cancel (sub))
       g_warning ("Unexpected error cancelling fam monitor");
-    _fam_sub_free (sub);
     fam_monitor->sub = NULL;
   }