[glib] file monitors: report MOVED only with both sides



commit 7ed76a4eca245edbf3149815a06795065164cb1f
Author: Ryan Lortie <desrt desrt ca>
Date:   Mon Jul 6 10:21:33 2015 -0400

    file monitors: report MOVED only with both sides
    
    Make sure we know the destination file before reporting a MOVED event.
    Otherwise, we should just fall back to reporting it as a DELETED.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=751731

 gio/glocalfilemonitor.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
---
diff --git a/gio/glocalfilemonitor.c b/gio/glocalfilemonitor.c
index 8a5c442..dcd39cf 100644
--- a/gio/glocalfilemonitor.c
+++ b/gio/glocalfilemonitor.c
@@ -385,7 +385,7 @@ g_file_monitor_source_handle_event (GFileMonitorSource *fms,
       g_assert (!rename_to);
       if (fms->flags & G_FILE_MONITOR_WATCH_MOVES)
         g_file_monitor_source_send_event (fms, G_FILE_MONITOR_EVENT_MOVED_OUT, child, other);
-      else if (fms->flags & G_FILE_MONITOR_SEND_MOVED)
+      else if (other && (fms->flags & G_FILE_MONITOR_SEND_MOVED))
         g_file_monitor_source_send_event (fms, G_FILE_MONITOR_EVENT_MOVED, child, other);
       else
         g_file_monitor_source_send_event (fms, G_FILE_MONITOR_EVENT_DELETED, child, NULL);


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