Skip to content

Commit 02fce99

Browse files
committed
Remove volatile qualifier for g_once_init handles.
Should not have it per documentation: https://docs.gtk.org/glib/type_func.Once.init_enter.html ref: https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1785 ref: #687
1 parent c34b09d commit 02fce99

File tree

6 files changed

+44
-47
lines changed

6 files changed

+44
-47
lines changed

clutter/clutter/clutter-enum-types.c.in

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@
1414
GType
1515
@enum_name@_get_type (void)
1616
{
17-
static volatile gsize g_enum_type_id__volatile = 0;
17+
static gsize g_enum_type_id = 0;
1818

19-
if (g_once_init_enter (&g_enum_type_id__volatile))
19+
if (g_once_init_enter (&g_enum_type_id))
2020
{
2121
static const G@Type@Value values[] = {
2222
/*** END value-header ***/
@@ -28,14 +28,13 @@ GType
2828
/*** BEGIN value-tail ***/
2929
{ 0, NULL, NULL }
3030
};
31-
GType g_enum_type_id;
31+
GType id;
3232

33-
g_enum_type_id =
34-
g_@type@_register_static (g_intern_static_string ("@EnumName@"), values);
33+
id = g_@type@_register_static (g_intern_static_string ("@EnumName@"), values);
3534

36-
g_once_init_leave (&g_enum_type_id__volatile, g_enum_type_id);
35+
g_once_init_leave (&g_enum_type_id, id);
3736
}
3837

39-
return g_enum_type_id__volatile;
38+
return g_enum_type_id;
4039
}
4140
/*** END value-tail ***/

clutter/clutter/clutter-paint-node.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -236,9 +236,9 @@ clutter_paint_node_init (ClutterPaintNode *self)
236236
GType
237237
clutter_paint_node_get_type (void)
238238
{
239-
static volatile gsize paint_node_type_id__volatile = 0;
239+
static gsize paint_node_type_id = 0;
240240

241-
if (g_once_init_enter (&paint_node_type_id__volatile))
241+
if (g_once_init_enter (&paint_node_type_id))
242242
{
243243
static const GTypeFundamentalInfo finfo = {
244244
(G_TYPE_FLAG_CLASSED |
@@ -274,16 +274,16 @@ clutter_paint_node_get_type (void)
274274
&value_table,
275275
};
276276

277-
GType paint_node_type_id =
277+
GType id =
278278
g_type_register_fundamental (g_type_fundamental_next (),
279279
I_("ClutterPaintNode"),
280280
&node_info, &finfo,
281281
G_TYPE_FLAG_ABSTRACT);
282282

283-
g_once_init_leave (&paint_node_type_id__volatile, paint_node_type_id);
283+
g_once_init_leave (&paint_node_type_id, id);
284284
}
285285

286-
return paint_node_type_id__volatile;
286+
return paint_node_type_id;
287287
}
288288

289289
/**

clutter/clutter/x11/clutter-backend-x11.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,9 @@ G_DEFINE_TYPE (ClutterBackendX11, clutter_backend_x11, CLUTTER_TYPE_BACKEND)
5757
GType
5858
clutter_x11_filter_return_get_type (void)
5959
{
60-
static volatile gsize g_define_type__volatile;
60+
static gsize g_define_type;
6161

62-
if (g_once_init_enter (&g_define_type__volatile))
62+
if (g_once_init_enter (&g_define_type))
6363
{
6464
static const GEnumValue values[] = {
6565
{ CLUTTER_X11_FILTER_CONTINUE, "CLUTTER_X11_FILTER_CONTINUE", "continue" },
@@ -68,13 +68,13 @@ clutter_x11_filter_return_get_type (void)
6868
{ 0, NULL, NULL },
6969
};
7070

71-
GType g_define_type =
71+
GType id =
7272
g_enum_register_static (g_intern_static_string ("ClutterX11FilterReturn"), values);
7373

74-
g_once_init_leave (&g_define_type__volatile, g_define_type);
74+
g_once_init_leave (&g_define_type, id);
7575
}
7676

77-
return g_define_type__volatile;
77+
return g_define_type;
7878
}
7979

8080
/* atoms; remember to add the code that assigns the atom value to

cogl/cogl-path/cogl-path-enum-types.c.in

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@
2121
GType
2222
@enum_name@_get_type (void)
2323
{
24-
static volatile gsize g_enum_type_id__volatile = 0;
24+
static gsize g_enum_type_id = 0;
2525

26-
if (g_once_init_enter (&g_enum_type_id__volatile))
26+
if (g_once_init_enter (&g_enum_type_id))
2727
{
2828
static const G@Type@Value values[] = {
2929
/*** END value-header ***/
@@ -35,14 +35,13 @@ GType
3535
/*** BEGIN value-tail ***/
3636
{ 0, NULL, NULL }
3737
};
38-
GType g_enum_type_id;
38+
GType id;
3939

40-
g_enum_type_id =
41-
g_@type@_register_static (g_intern_static_string ("@EnumName@"), values);
40+
id = g_@type@_register_static (g_intern_static_string ("@EnumName@"), values);
4241

43-
g_once_init_leave (&g_enum_type_id__volatile, g_enum_type_id);
42+
g_once_init_leave (&g_enum_type_id, id);
4443
}
4544

46-
return g_enum_type_id__volatile;
45+
return g_enum_type_id;
4746
}
4847
/*** END value-tail ***/

cogl/cogl/cogl-gtype-private.h

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -64,16 +64,16 @@ struct _CoglGtypeClass
6464
GType \
6565
cogl_##underscore_name##_get_gtype (void) \
6666
{ \
67-
static volatile size_t type_volatile = 0; \
68-
if (g_once_init_enter (&type_volatile)) \
67+
static gsize g_type_id = 0; \
68+
if (g_once_init_enter (&g_type_id)) \
6969
{ \
7070
GType type = \
7171
g_boxed_type_register_static (g_intern_static_string (I_("Cogl" # Name)), \
7272
(GBoxedCopyFunc)copy_func, \
7373
(GBoxedFreeFunc)free_func); \
74-
g_once_init_leave (&type_volatile, type); \
74+
g_once_init_leave (&g_type_id, type); \
7575
} \
76-
return type_volatile; \
76+
return g_type_id; \
7777
}
7878

7979
#define COGL_GTYPE_IMPLEMENT_INTERFACE(name) { \
@@ -89,8 +89,8 @@ cogl_##underscore_name##_get_gtype (void) \
8989
GType \
9090
cogl_##name##_get_gtype (void) \
9191
{ \
92-
static volatile gsize type_id__volatile = 0; \
93-
if (g_once_init_enter (&type_id__volatile)) \
92+
static gsize g_type_id = 0; \
93+
if (g_once_init_enter (&g_type_id)) \
9494
{ \
9595
static const GTypeFundamentalInfo finfo = { \
9696
(G_TYPE_FLAG_CLASSED | \
@@ -125,12 +125,12 @@ cogl_##name##_get_gtype (void) \
125125
I_("Cogl" # Name), \
126126
&node_info, &finfo, \
127127
G_TYPE_FLAG_ABSTRACT); \
128-
g_once_init_leave (&type_id__volatile, \
128+
g_once_init_leave (&g_type_id, \
129129
fundamental_type_id);
130130

131131
#define _COGL_GTYPE_DEFINE_BASE_CLASS_END() \
132132
} \
133-
return type_id__volatile; \
133+
return g_type_id; \
134134
}
135135

136136
#define COGL_GTYPE_DEFINE_BASE_CLASS(Name,name,...) \
@@ -144,8 +144,8 @@ cogl_##name##_get_gtype (void) \
144144
GType \
145145
name##_get_gtype (void) \
146146
{ \
147-
static volatile gsize type_id__volatile = 0; \
148-
if (g_once_init_enter (&type_id__volatile)) \
147+
static gsize g_type_id = 0; \
148+
if (g_once_init_enter (&g_type_id)) \
149149
{ \
150150
GType fundamental_type_id = \
151151
g_type_register_static_simple (G_TYPE_INTERFACE, \
@@ -162,10 +162,10 @@ cogl_##name##_get_gtype (void) \
162162
#define _COGL_GTYPE_DEFINE_INTERFACE_EXTENDED_END() \
163163
/* following custom code */ \
164164
} \
165-
g_once_init_leave (&type_id__volatile, \
165+
g_once_init_leave (&g_type_id, \
166166
fundamental_type_id); \
167167
} \
168-
return type_id__volatile; \
168+
return g_type_id; \
169169
} /* closes name##_get_type() */
170170

171171

@@ -207,8 +207,8 @@ cogl_##name##_get_gtype (void) \
207207
GType \
208208
name##_get_gtype (void) \
209209
{ \
210-
static volatile gsize type_id__volatile = 0; \
211-
if (g_once_init_enter (&type_id__volatile)) \
210+
static gsize g_type_id = 0; \
211+
if (g_once_init_enter (&g_type_id)) \
212212
{ \
213213
GType fundamental_type_id = \
214214
g_type_register_static_simple (parent, \
@@ -223,10 +223,10 @@ cogl_##name##_get_gtype (void) \
223223
#define _COGL_GTYPE_DEFINE_TYPE_EXTENDED_END() \
224224
/* following custom code */ \
225225
} \
226-
g_once_init_leave (&type_id__volatile, \
226+
g_once_init_leave (&g_type_id, \
227227
fundamental_type_id); \
228228
} \
229-
return type_id__volatile; \
229+
return g_type_id; \
230230
} /* closes name##_get_type() */
231231

232232

src/meta/meta-enum-types.c.in

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@
1313
GType
1414
@enum_name@_get_type (void)
1515
{
16-
static volatile gsize g_enum_type_id__volatile = 0;
16+
static gsize g_enum_type_id = 0;
1717

18-
if (g_once_init_enter (&g_enum_type_id__volatile))
18+
if (g_once_init_enter (&g_enum_type_id))
1919
{
2020
static const G@Type@Value values[] = {
2121
/*** END value-header ***/
@@ -27,14 +27,13 @@ GType
2727
/*** BEGIN value-tail ***/
2828
{ 0, NULL, NULL }
2929
};
30-
GType g_enum_type_id;
30+
GType id;
3131

32-
g_enum_type_id =
33-
g_@type@_register_static (g_intern_static_string ("@EnumName@"), values);
32+
id = g_@type@_register_static (g_intern_static_string ("@EnumName@"), values);
3433

35-
g_once_init_leave (&g_enum_type_id__volatile, g_enum_type_id);
34+
g_once_init_leave (&g_enum_type_id, id);
3635
}
3736

38-
return g_enum_type_id__volatile;
37+
return g_enum_type_id;
3938
}
4039
/*** END value-tail ***/

0 commit comments

Comments
 (0)