{
fd->size = st->st_size;
fd->date = st->st_mtime;
+ fd->mode = st->st_mode;
if (fd->thumb_pixbuf) g_object_unref(fd->thumb_pixbuf);
fd->thumb_pixbuf = NULL;
file_data_increment_version(fd);
fd->size = st->st_size;
fd->date = st->st_mtime;
+ fd->mode = st->st_mode;
fd->thumb_pixbuf = NULL;
fd->sidecar_files = NULL;
fd->ref = 1;
gchar *collate_key_name_nocase;
gint64 size;
time_t date;
+ mode_t mode; /* this is needed at least for notification in view_dir because it is preserved after the file/directory is deleted */
guint marks;
GList *sidecar_files;
FileData *parent; /* parent file if this is a sidecar file, NULL otherwise */
gboolean refresh;
gchar *base;
- if (!isdir(fd->path) && isname(fd->path)) return;
+ if (!S_ISDIR(fd->mode)) return; /* this gives correct results even on recently deleted files/directories */
base = remove_level_from_path(fd->path);