Index: programs/gvfs-monitor-dir.c
===================================================================
--- programs/gvfs-monitor-dir.c	(revision 1118)
+++ programs/gvfs-monitor-dir.c	(working copy)
@@ -98,7 +98,7 @@
   if (argc > 1)
     {
       file = g_file_new_for_commandline_arg (argv[1]);
-      dmonitor = g_file_monitor_directory (file, G_FILE_MONITOR_WATCH_MOUNTS, NULL);
+      dmonitor = g_file_monitor_directory (file, G_FILE_MONITOR_WATCH_MOUNTS, NULL, NULL);
       if (dmonitor != NULL)
 	g_signal_connect (dmonitor, "changed", (GCallback)dir_monitor_callback, NULL);
       else
Index: programs/gvfs-monitor-file.c
===================================================================
--- programs/gvfs-monitor-file.c	(revision 1118)
+++ programs/gvfs-monitor-file.c	(working copy)
@@ -93,7 +93,7 @@
   if (argc > 1)
     {
       file = g_file_new_for_commandline_arg (argv[1]);
-      fmonitor = g_file_monitor_file (file, G_FILE_MONITOR_WATCH_MOUNTS, NULL);
+      fmonitor = g_file_monitor_file (file, G_FILE_MONITOR_WATCH_MOUNTS, NULL, NULL);
       g_signal_connect (fmonitor, "changed", (GCallback)file_monitor_callback, NULL);
     }
   
Index: daemon/gvfsbackendlocaltest.c
===================================================================
--- daemon/gvfsbackendlocaltest.c	(revision 1118)
+++ daemon/gvfsbackendlocaltest.c	(working copy)
@@ -762,8 +762,8 @@
   GFile *file = get_g_file_from_local (filename, G_VFS_JOB (job));
   g_assert(file != NULL);
   
-  if (is_dir_monitor) monitor = G_OBJECT(g_file_monitor_directory (file, flags, G_VFS_JOB (job)->cancellable));
-  else monitor = G_OBJECT(g_file_monitor_file (file, flags, G_VFS_JOB (job)->cancellable));
+  if (is_dir_monitor) monitor = G_OBJECT(g_file_monitor_directory (file, flags, G_VFS_JOB (job)->cancellable, NULL));
+  else monitor = G_OBJECT(g_file_monitor_file (file, flags, G_VFS_JOB (job)->cancellable, NULL));
 	  
   if (monitor)
     {
Index: daemon/gvfsbackendtrash.c
===================================================================
--- daemon/gvfsbackendtrash.c	(revision 1118)
+++ daemon/gvfsbackendtrash.c	(working copy)
@@ -1402,7 +1402,7 @@
       filesdir = g_build_filename (trashdir, "files", NULL);
       file = g_file_new_for_path (filesdir);
       g_free (filesdir);
-      monitor = g_file_monitor_directory (file, 0, NULL);
+      monitor = g_file_monitor_directory (file, 0, NULL, NULL);
       g_object_unref (file);
       
       if (monitor)
@@ -1573,7 +1573,8 @@
 
       monitor = g_file_monitor_directory (file,
                                           flags,
-                                          G_VFS_JOB (job)->cancellable);
+                                          G_VFS_JOB (job)->cancellable,
+					  NULL);
       
       if (monitor)
         {
@@ -1648,7 +1649,8 @@
 
       monitor = g_file_monitor_file (file,
                                      flags,
-                                     G_VFS_JOB (job)->cancellable);
+                                     G_VFS_JOB (job)->cancellable,
+				     NULL);
       
       if (monitor)
         {
Index: client/gdaemonfile.c
===================================================================
--- client/gdaemonfile.c	(revision 1118)
+++ client/gdaemonfile.c	(working copy)
@@ -1942,7 +1942,8 @@
 static GFileMonitor*
 g_daemon_file_monitor_dir (GFile* file,
 			   GFileMonitorFlags flags,
-			   GCancellable *cancellable)
+			   GCancellable *cancellable,
+			   GError **error)
 {
   GFileMonitor *monitor;
   char *obj_path;
@@ -1956,7 +1957,7 @@
   reply = do_sync_path_call (file, 
 			     G_VFS_DBUS_MOUNT_OP_CREATE_DIR_MONITOR,
 			     &mount_info, NULL,
-			     cancellable, NULL,
+			     cancellable, error,
 			     DBUS_TYPE_UINT32, &flags_dbus,
 			     0);
   
@@ -1973,7 +1974,8 @@
     {
       g_mount_info_unref (mount_info);
       dbus_message_unref (reply);
-      g_warning ("Invalid return value from monitor_dir");
+      g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
+		   _("Invalid return value from monitor_dir"));
       return NULL;
     }
   
@@ -1989,7 +1991,8 @@
 static GFileMonitor*
 g_daemon_file_monitor_file (GFile* file,
 			    GFileMonitorFlags flags,
-			    GCancellable *cancellable)
+			    GCancellable *cancellable,
+			    GError **error)
 {
   GFileMonitor *monitor;
   char *obj_path;
@@ -2003,7 +2006,7 @@
   reply = do_sync_path_call (file, 
 			     G_VFS_DBUS_MOUNT_OP_CREATE_FILE_MONITOR,
 			     &mount_info, NULL,
-			     cancellable, NULL,
+			     cancellable, error,
 			     DBUS_TYPE_UINT32, &flags_dbus,
 			     0);
   
@@ -2020,7 +2023,8 @@
     {
       g_mount_info_unref (mount_info);
       dbus_message_unref (reply);
-      g_warning ("Invalid return value from monitor_dir");
+      g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
+		   _("Invalid return value from monitor_file"));
       return NULL;
     }
   
