mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-01-16 01:06:15 +01:00
glocalfile: Disable faccessat()-based query_exists on FreeBSD
It appears not to work, and nobody interested in FreeBSD has picked it
up to investigate yet.
Rather than have a completely broken implementation of
`g_file_query_exists()` on FreeBSD, let’s settle for using the old one.
It’s slightly slower than the new one, but has worked fine for people
for years.
This essentially reverts commit 65ad41d8a4
on FreeBSD. This commit can be reverted when a FreeBSD person
investigates what’s going wrong with the `faccessat()`-based
implementation.
Signed-off-by: Philip Withnall <pwithnall@gnome.org>
Helps: #3495
This commit is contained in:
parent
e9902a66a9
commit
ad67d4e833
@ -1259,7 +1259,9 @@ g_local_file_query_info (GFile *file,
|
|||||||
return info;
|
return info;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HAVE_FACCESSAT
|
/* FIXME: faccessat() is available on FreeBSD but appears to not work correctly
|
||||||
|
* here. This needs diagnosing; https://gitlab.gnome.org/GNOME/glib/-/issues/3495 */
|
||||||
|
#if defined(HAVE_FACCESSAT) && !defined(__FreeBSD__)
|
||||||
static gboolean
|
static gboolean
|
||||||
g_local_file_query_exists (GFile *file,
|
g_local_file_query_exists (GFile *file,
|
||||||
GCancellable *cancellable)
|
GCancellable *cancellable)
|
||||||
@ -3153,7 +3155,7 @@ g_local_file_file_iface_init (GFileIface *iface)
|
|||||||
iface->monitor_dir = g_local_file_monitor_dir;
|
iface->monitor_dir = g_local_file_monitor_dir;
|
||||||
iface->monitor_file = g_local_file_monitor_file;
|
iface->monitor_file = g_local_file_monitor_file;
|
||||||
iface->measure_disk_usage = g_local_file_measure_disk_usage;
|
iface->measure_disk_usage = g_local_file_measure_disk_usage;
|
||||||
#ifdef HAVE_FACCESSAT
|
#if defined(HAVE_FACCESSAT) && !defined(__FreeBSD__)
|
||||||
iface->query_exists = g_local_file_query_exists;
|
iface->query_exists = g_local_file_query_exists;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user