• Cosimo Alfarano's avatar
    Send CHANGES_DONE_HINT on file moves if no IN_CLOSE_WRITE is emitted · fd1e9938
    Cosimo Alfarano authored
    This patch makes GFileMonitor to emit EVENT_CHANGES_DONE_HINT when
    EVENT_CREATED is emitted but the file is not opened for writing.
    
    On file moves across different mounted volumes, inotify will always emit
    IN_CREATE and IN_CLOSE_WRITE (plus other events).
    This translates into GIO's _EVENT_CREATED and _EVENT_CHANGES_DONE_HINT.
    
    On file moves across the same mounted volumes, inotify will emit
    IN_MOVED_FROM/IN_MOVED_TO which will be translated into
    _EVENT_DELETED/_EVENT_CREATED GIO's side. No _EVENT_CHANGES_DONE_HINT is
    emited afterwards.
    Under such circumstances a file indexer does not know when actually the
    file is ready to be indexed, either waiting too much or triggering the
    indexing twice. On small devices it's not advisable.
    
    Bug: https://bugzilla.gnome.org/show_bug.cgi?id=640077
    Bug-NB: NB#219982
    Reviewed-by: Simon McVittie's avatarSimon McVittie <simon.mcvittie@collabora.co.uk>
    Reviewed-by: Tomáš Bžatek's avatarTomas Bzatek <tbzatek@redhat.com>
    fd1e9938
Name
Last commit
Last update
..
Makefile.am Loading commit data...
ginotifydirectorymonitor.c Loading commit data...
ginotifydirectorymonitor.h Loading commit data...
ginotifyfilemonitor.c Loading commit data...
ginotifyfilemonitor.h Loading commit data...
inotify-diag.c Loading commit data...
inotify-diag.h Loading commit data...
inotify-helper.c Loading commit data...
inotify-helper.h Loading commit data...
inotify-kernel.c Loading commit data...
inotify-kernel.h Loading commit data...
inotify-missing.c Loading commit data...
inotify-missing.h Loading commit data...
inotify-path.c Loading commit data...
inotify-path.h Loading commit data...
inotify-sub.c Loading commit data...
inotify-sub.h Loading commit data...