volume monitor: don't unref NULL
authorRyan Lortie <desrt@desrt.ca>
Tue, 5 Oct 2010 06:29:47 +0000 (02:29 -0400)
committerRyan Lortie <desrt@desrt.ca>
Tue, 5 Oct 2010 06:29:47 +0000 (02:29 -0400)
Fix a couple more cases of blindly calling g_object_unref() on the
result of a function that is documented as sometimes returning NULL.

gio/tests/volumemonitor.c

index 54123ec..e3fdc3b 100644 (file)
@@ -49,7 +49,8 @@ do_volume_tests (GDrive *drive, GVolume *volume)
 
   d = g_volume_get_drive (volume);
   g_assert (d == drive);
-  g_object_unref (d);
+  if (d != NULL)
+    g_object_unref (d);
 
   mount = g_volume_get_mount (volume);
   if (mount != NULL)
@@ -126,7 +127,8 @@ test_volumes (void)
 
       drive = g_volume_get_drive (volume);
       do_volume_tests (drive, volume);
-      g_object_unref (drive);
+      if (drive != NULL)
+        g_object_unref (drive);
     }
 
   g_list_foreach (volumes, (GFunc)g_object_unref,  NULL);