Merge branch 'wip/wjt/2159-thread-unsafe-initialization-in-gportalsupport-c' into 'master'

portal: Read /.flatpak-info in thread-safe fashion

Closes #2159

See merge request GNOME/glib!1573
This commit is contained in:
Philip Withnall 2020-07-15 11:37:12 +00:00
commit f5fc9cab96

View File

@ -20,7 +20,6 @@
#include "gportalsupport.h"
static gboolean flatpak_info_read;
static gboolean use_portal;
static gboolean network_available;
static gboolean dconf_access;
@ -28,13 +27,12 @@ static gboolean dconf_access;
static void
read_flatpak_info (void)
{
static gsize flatpak_info_read = 0;
const gchar *path = "/.flatpak-info";
if (flatpak_info_read)
if (!g_once_init_enter (&flatpak_info_read))
return;
flatpak_info_read = TRUE;
if (g_file_test (path, G_FILE_TEST_EXISTS))
{
GKeyFile *keyfile;
@ -77,6 +75,8 @@ read_flatpak_info (void)
network_available = TRUE;
dconf_access = TRUE;
}
g_once_init_leave (&flatpak_info_read, 1);
}
gboolean