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 @@ | |||
1 | From 1314ff93fc4d3379483c33da6a7deff27f71ed95 Mon Sep 17 00:00:00 2001 | ||
2 | From: Philip Withnall <pwithnall@endlessos.org> | ||
3 | Date: Wed, 11 Nov 2020 18:40:56 +0000 | ||
4 | Subject: [PATCH 15/29] glib: Drop unnecessary volatile qualifiers from | ||
5 | internal variables | ||
6 | MIME-Version: 1.0 | ||
7 | Content-Type: text/plain; charset=UTF-8 | ||
8 | Content-Transfer-Encoding: 8bit | ||
9 | |||
10 | These variables were already (correctly) accessed atomically. The | ||
11 | `volatile` qualifier doesn’t help with that. | ||
12 | |||
13 | Signed-off-by: Philip Withnall <pwithnall@endlessos.org> | ||
14 | |||
15 | Helps: #600 | ||
16 | Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719] | ||
17 | --- | ||
18 | glib/gdatetime.c | 2 +- | ||
19 | glib/gkeyfile.c | 2 +- | ||
20 | glib/gmain.c | 8 ++++---- | ||
21 | glib/gmarkup.c | 2 +- | ||
22 | glib/gregex.c | 6 +++--- | ||
23 | glib/gthread.c | 6 +++--- | ||
24 | 6 files changed, 13 insertions(+), 13 deletions(-) | ||
25 | |||
26 | diff --git a/glib/gdatetime.c b/glib/gdatetime.c | ||
27 | index 1755257be..453077f6d 100644 | ||
28 | --- a/glib/gdatetime.c | ||
29 | +++ b/glib/gdatetime.c | ||
30 | @@ -126,7 +126,7 @@ struct _GDateTime | ||
31 | /* 1 is 0001-01-01 in Proleptic Gregorian */ | ||
32 | gint32 days; | ||
33 | |||
34 | - volatile gint ref_count; | ||
35 | + gint ref_count; /* (atomic) */ | ||
36 | }; | ||
37 | |||
38 | /* Time conversion {{{1 */ | ||
39 | diff --git a/glib/gkeyfile.c b/glib/gkeyfile.c | ||
40 | index 9d0215331..bbe638b74 100644 | ||
41 | --- a/glib/gkeyfile.c | ||
42 | +++ b/glib/gkeyfile.c | ||
43 | @@ -512,7 +512,7 @@ struct _GKeyFile | ||
44 | |||
45 | gchar **locales; | ||
46 | |||
47 | - volatile gint ref_count; | ||
48 | + gint ref_count; /* (atomic) */ | ||
49 | }; | ||
50 | |||
51 | typedef struct _GKeyFileKeyValuePair GKeyFileKeyValuePair; | ||
52 | diff --git a/glib/gmain.c b/glib/gmain.c | ||
53 | index 772b8ecfc..9c5f0ef1e 100644 | ||
54 | --- a/glib/gmain.c | ||
55 | +++ b/glib/gmain.c | ||
56 | @@ -272,7 +272,7 @@ struct _GMainContext | ||
57 | guint owner_count; | ||
58 | GSList *waiters; | ||
59 | |||
60 | - volatile gint ref_count; | ||
61 | + gint ref_count; /* (atomic) */ | ||
62 | |||
63 | GHashTable *sources; /* guint -> GSource */ | ||
64 | |||
65 | @@ -303,7 +303,7 @@ struct _GMainContext | ||
66 | |||
67 | struct _GSourceCallback | ||
68 | { | ||
69 | - volatile gint ref_count; | ||
70 | + gint ref_count; /* (atomic) */ | ||
71 | GSourceFunc func; | ||
72 | gpointer data; | ||
73 | GDestroyNotify notify; | ||
74 | @@ -313,7 +313,7 @@ struct _GMainLoop | ||
75 | { | ||
76 | GMainContext *context; | ||
77 | gboolean is_running; /* (atomic) */ | ||
78 | - volatile gint ref_count; | ||
79 | + gint ref_count; /* (atomic) */ | ||
80 | }; | ||
81 | |||
82 | struct _GTimeoutSource | ||
83 | @@ -4749,7 +4749,7 @@ g_main_context_get_poll_func (GMainContext *context) | ||
84 | * | ||
85 | * |[<!-- language="C" --> | ||
86 | * #define NUM_TASKS 10 | ||
87 | - * static volatile gint tasks_remaining = NUM_TASKS; | ||
88 | + * static gint tasks_remaining = NUM_TASKS; // (atomic) | ||
89 | * ... | ||
90 | * | ||
91 | * while (g_atomic_int_get (&tasks_remaining) != 0) | ||
92 | diff --git a/glib/gmarkup.c b/glib/gmarkup.c | ||
93 | index ba4dfd2e4..b8327fb6d 100644 | ||
94 | --- a/glib/gmarkup.c | ||
95 | +++ b/glib/gmarkup.c | ||
96 | @@ -119,7 +119,7 @@ struct _GMarkupParseContext | ||
97 | { | ||
98 | const GMarkupParser *parser; | ||
99 | |||
100 | - volatile gint ref_count; | ||
101 | + gint ref_count; /* (atomic) */ | ||
102 | |||
103 | GMarkupParseFlags flags; | ||
104 | |||
105 | diff --git a/glib/gregex.c b/glib/gregex.c | ||
106 | index 52416bbb9..5e6ddfb46 100644 | ||
107 | --- a/glib/gregex.c | ||
108 | +++ b/glib/gregex.c | ||
109 | @@ -203,7 +203,7 @@ G_STATIC_ASSERT (G_REGEX_RAW == PCRE_UTF8); | ||
110 | |||
111 | struct _GMatchInfo | ||
112 | { | ||
113 | - volatile gint ref_count; /* the ref count */ | ||
114 | + gint ref_count; /* the ref count (atomic) */ | ||
115 | GRegex *regex; /* the regex */ | ||
116 | GRegexMatchFlags match_opts; /* options used at match time on the regex */ | ||
117 | gint matches; /* number of matching sub patterns */ | ||
118 | @@ -218,7 +218,7 @@ struct _GMatchInfo | ||
119 | |||
120 | struct _GRegex | ||
121 | { | ||
122 | - volatile gint ref_count; /* the ref count for the immutable part */ | ||
123 | + gint ref_count; /* the ref count for the immutable part (atomic) */ | ||
124 | gchar *pattern; /* the pattern */ | ||
125 | pcre *pcre_re; /* compiled form of the pattern */ | ||
126 | GRegexCompileFlags compile_opts; /* options used at compile time on the pattern */ | ||
127 | @@ -1300,7 +1300,7 @@ g_regex_new (const gchar *pattern, | ||
128 | pcre *re; | ||
129 | const gchar *errmsg; | ||
130 | gboolean optimize = FALSE; | ||
131 | - static volatile gsize initialised = 0; | ||
132 | + static gsize initialised = 0; | ||
133 | |||
134 | g_return_val_if_fail (pattern != NULL, NULL); | ||
135 | g_return_val_if_fail (error == NULL || *error == NULL, NULL); | ||
136 | diff --git a/glib/gthread.c b/glib/gthread.c | ||
137 | index 53f3a0848..612a9739f 100644 | ||
138 | --- a/glib/gthread.c | ||
139 | +++ b/glib/gthread.c | ||
140 | @@ -513,7 +513,7 @@ static GMutex g_once_mutex; | ||
141 | static GCond g_once_cond; | ||
142 | static GSList *g_once_init_list = NULL; | ||
143 | |||
144 | -static volatile guint g_thread_n_created_counter = 0; | ||
145 | +static guint g_thread_n_created_counter = 0; /* (atomic) */ | ||
146 | |||
147 | static void g_thread_cleanup (gpointer data); | ||
148 | static GPrivate g_thread_specific_private = G_PRIVATE_INIT (g_thread_cleanup); | ||
149 | @@ -694,7 +694,7 @@ g_once_impl (GOnce *once, | ||
150 | gboolean | ||
151 | (g_once_init_enter) (volatile void *location) | ||
152 | { | ||
153 | - volatile gsize *value_location = location; | ||
154 | + gsize *value_location = (gsize *) location; | ||
155 | gboolean need_init = FALSE; | ||
156 | g_mutex_lock (&g_once_mutex); | ||
157 | if (g_atomic_pointer_get (value_location) == 0) | ||
158 | @@ -731,7 +731,7 @@ void | ||
159 | (g_once_init_leave) (volatile void *location, | ||
160 | gsize result) | ||
161 | { | ||
162 | - volatile gsize *value_location = location; | ||
163 | + gsize *value_location = (gsize *) location; | ||
164 | |||
165 | g_return_if_fail (g_atomic_pointer_get (value_location) == 0); | ||
166 | g_return_if_fail (result != 0); | ||
167 | -- | ||
168 | 2.30.1 | ||
169 | |||