diff options
Diffstat (limited to 'meta/recipes-core/glib-2.0/glib-2.0/0015-glib-Drop-unnecessary-volatile-qualifiers-from-inter.patch')
-rw-r--r-- | meta/recipes-core/glib-2.0/glib-2.0/0015-glib-Drop-unnecessary-volatile-qualifiers-from-inter.patch | 169 |
1 files changed, 169 insertions, 0 deletions
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0015-glib-Drop-unnecessary-volatile-qualifiers-from-inter.patch b/meta/recipes-core/glib-2.0/glib-2.0/0015-glib-Drop-unnecessary-volatile-qualifiers-from-inter.patch new file mode 100644 index 0000000000..9468548e3a --- /dev/null +++ b/meta/recipes-core/glib-2.0/glib-2.0/0015-glib-Drop-unnecessary-volatile-qualifiers-from-inter.patch @@ -0,0 +1,169 @@ +From 1314ff93fc4d3379483c33da6a7deff27f71ed95 Mon Sep 17 00:00:00 2001 +From: Philip Withnall <pwithnall@endlessos.org> +Date: Wed, 11 Nov 2020 18:40:56 +0000 +Subject: [PATCH 15/29] glib: Drop unnecessary volatile qualifiers from + internal variables +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +These variables were already (correctly) accessed atomically. The +`volatile` qualifier doesn’t help with that. + +Signed-off-by: Philip Withnall <pwithnall@endlessos.org> + +Helps: #600 +Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719] +--- + glib/gdatetime.c | 2 +- + glib/gkeyfile.c | 2 +- + glib/gmain.c | 8 ++++---- + glib/gmarkup.c | 2 +- + glib/gregex.c | 6 +++--- + glib/gthread.c | 6 +++--- + 6 files changed, 13 insertions(+), 13 deletions(-) + +diff --git a/glib/gdatetime.c b/glib/gdatetime.c +index 1755257be..453077f6d 100644 +--- a/glib/gdatetime.c ++++ b/glib/gdatetime.c +@@ -126,7 +126,7 @@ struct _GDateTime + /* 1 is 0001-01-01 in Proleptic Gregorian */ + gint32 days; + +- volatile gint ref_count; ++ gint ref_count; /* (atomic) */ + }; + + /* Time conversion {{{1 */ +diff --git a/glib/gkeyfile.c b/glib/gkeyfile.c +index 9d0215331..bbe638b74 100644 +--- a/glib/gkeyfile.c ++++ b/glib/gkeyfile.c +@@ -512,7 +512,7 @@ struct _GKeyFile + + gchar **locales; + +- volatile gint ref_count; ++ gint ref_count; /* (atomic) */ + }; + + typedef struct _GKeyFileKeyValuePair GKeyFileKeyValuePair; +diff --git a/glib/gmain.c b/glib/gmain.c +index 772b8ecfc..9c5f0ef1e 100644 +--- a/glib/gmain.c ++++ b/glib/gmain.c +@@ -272,7 +272,7 @@ struct _GMainContext + guint owner_count; + GSList *waiters; + +- volatile gint ref_count; ++ gint ref_count; /* (atomic) */ + + GHashTable *sources; /* guint -> GSource */ + +@@ -303,7 +303,7 @@ struct _GMainContext + + struct _GSourceCallback + { +- volatile gint ref_count; ++ gint ref_count; /* (atomic) */ + GSourceFunc func; + gpointer data; + GDestroyNotify notify; +@@ -313,7 +313,7 @@ struct _GMainLoop + { + GMainContext *context; + gboolean is_running; /* (atomic) */ +- volatile gint ref_count; ++ gint ref_count; /* (atomic) */ + }; + + struct _GTimeoutSource +@@ -4749,7 +4749,7 @@ g_main_context_get_poll_func (GMainContext *context) + * + * |[<!-- language="C" --> + * #define NUM_TASKS 10 +- * static volatile gint tasks_remaining = NUM_TASKS; ++ * static gint tasks_remaining = NUM_TASKS; // (atomic) + * ... + * + * while (g_atomic_int_get (&tasks_remaining) != 0) +diff --git a/glib/gmarkup.c b/glib/gmarkup.c +index ba4dfd2e4..b8327fb6d 100644 +--- a/glib/gmarkup.c ++++ b/glib/gmarkup.c +@@ -119,7 +119,7 @@ struct _GMarkupParseContext + { + const GMarkupParser *parser; + +- volatile gint ref_count; ++ gint ref_count; /* (atomic) */ + + GMarkupParseFlags flags; + +diff --git a/glib/gregex.c b/glib/gregex.c +index 52416bbb9..5e6ddfb46 100644 +--- a/glib/gregex.c ++++ b/glib/gregex.c +@@ -203,7 +203,7 @@ G_STATIC_ASSERT (G_REGEX_RAW == PCRE_UTF8); + + struct _GMatchInfo + { +- volatile gint ref_count; /* the ref count */ ++ gint ref_count; /* the ref count (atomic) */ + GRegex *regex; /* the regex */ + GRegexMatchFlags match_opts; /* options used at match time on the regex */ + gint matches; /* number of matching sub patterns */ +@@ -218,7 +218,7 @@ struct _GMatchInfo + + struct _GRegex + { +- volatile gint ref_count; /* the ref count for the immutable part */ ++ gint ref_count; /* the ref count for the immutable part (atomic) */ + gchar *pattern; /* the pattern */ + pcre *pcre_re; /* compiled form of the pattern */ + GRegexCompileFlags compile_opts; /* options used at compile time on the pattern */ +@@ -1300,7 +1300,7 @@ g_regex_new (const gchar *pattern, + pcre *re; + const gchar *errmsg; + gboolean optimize = FALSE; +- static volatile gsize initialised = 0; ++ static gsize initialised = 0; + + g_return_val_if_fail (pattern != NULL, NULL); + g_return_val_if_fail (error == NULL || *error == NULL, NULL); +diff --git a/glib/gthread.c b/glib/gthread.c +index 53f3a0848..612a9739f 100644 +--- a/glib/gthread.c ++++ b/glib/gthread.c +@@ -513,7 +513,7 @@ static GMutex g_once_mutex; + static GCond g_once_cond; + static GSList *g_once_init_list = NULL; + +-static volatile guint g_thread_n_created_counter = 0; ++static guint g_thread_n_created_counter = 0; /* (atomic) */ + + static void g_thread_cleanup (gpointer data); + static GPrivate g_thread_specific_private = G_PRIVATE_INIT (g_thread_cleanup); +@@ -694,7 +694,7 @@ g_once_impl (GOnce *once, + gboolean + (g_once_init_enter) (volatile void *location) + { +- volatile gsize *value_location = location; ++ gsize *value_location = (gsize *) location; + gboolean need_init = FALSE; + g_mutex_lock (&g_once_mutex); + if (g_atomic_pointer_get (value_location) == 0) +@@ -731,7 +731,7 @@ void + (g_once_init_leave) (volatile void *location, + gsize result) + { +- volatile gsize *value_location = location; ++ gsize *value_location = (gsize *) location; + + g_return_if_fail (g_atomic_pointer_get (value_location) == 0); + g_return_if_fail (result != 0); +-- +2.30.1 + |