summaryrefslogtreecommitdiff
path: root/libnautilus-private
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2008-03-26 15:50:01 +0000
committerAlexander Larsson <alexl@src.gnome.org>2008-03-26 15:50:01 +0000
commitb2db9fa6cc81986eed8801d8c0f14dbe472d3b86 (patch)
tree08978b3ab475c4d4a5be1198c0dbbc4273903e65 /libnautilus-private
parentf20ce9ddc43638155e322df4dc02f5d0692e1492 (diff)
downloadnautilus-b2db9fa6cc81986eed8801d8c0f14dbe472d3b86.tar.gz
Avoid constantly trying to create directory monitors if it fails once by
2008-03-26 Alexander Larsson <alexl@redhat.com> * libnautilus-private/nautilus-monitor.c: (nautilus_monitor_directory): Avoid constantly trying to create directory monitors if it fails once by returning an "empty" NautilusMonitor instead of NULL. svn path=/trunk/; revision=13984
Diffstat (limited to 'libnautilus-private')
-rw-r--r--libnautilus-private/nautilus-monitor.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/libnautilus-private/nautilus-monitor.c b/libnautilus-private/nautilus-monitor.c
index e1835fbb5..63862ca8b 100644
--- a/libnautilus-private/nautilus-monitor.c
+++ b/libnautilus-private/nautilus-monitor.c
@@ -126,15 +126,14 @@ nautilus_monitor_directory (GFile *location)
dir_monitor = g_file_monitor_directory (location, G_FILE_MONITOR_WATCH_MOUNTS, NULL, NULL);
- if (dir_monitor == NULL) {
- return NULL;
- }
-
ret = g_new0 (NautilusMonitor, 1);
ret->monitor = dir_monitor;
- g_signal_connect (ret->monitor, "changed", (GCallback)dir_changed, ret);
+ if (ret->monitor) {
+ g_signal_connect (ret->monitor, "changed", (GCallback)dir_changed, ret);
+ }
+ /* We return a monitor even on failure, so we can avoid later trying again */
return ret;
}