mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-08-03 07:53:39 +02:00
Pass in the right device to vfs->local_file_add_info for symlinks
We used to pass the path for the symlink, but the device of the target which is wrong and breaks metadata access. https://bugzilla.gnome.org/show_bug.cgi?id=593809
This commit is contained in:
@@ -1432,6 +1432,7 @@ _g_local_file_info_get (const char *basename,
|
||||
char *symlink_target;
|
||||
GVfs *vfs;
|
||||
GVfsClass *class;
|
||||
guint64 device;
|
||||
|
||||
info = g_file_info_new ();
|
||||
|
||||
@@ -1483,7 +1484,9 @@ _g_local_file_info_get (const char *basename,
|
||||
g_free (display_name);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
device = statbuf.st_dev;
|
||||
|
||||
#ifdef S_ISLNK
|
||||
is_symlink = S_ISLNK (statbuf.st_mode);
|
||||
#else
|
||||
@@ -1711,7 +1714,7 @@ _g_local_file_info_get (const char *basename,
|
||||
{
|
||||
class->local_file_add_info (vfs,
|
||||
path,
|
||||
statbuf.st_dev,
|
||||
device,
|
||||
attribute_matcher,
|
||||
info,
|
||||
NULL,
|
||||
|
Reference in New Issue
Block a user