mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-09-27 17:52:58 +02:00
Constify collect and lcopy strings in GTypeValueTable
This avoids warnings when creating idiomatic value tables, like: static const GTypeValueTable _clutter_shader_float_value_table = { clutter_value_init_shader_float, clutter_value_free_shader_float, clutter_value_copy_shader_float, clutter_value_peek_pointer, "ip", clutter_value_collect_shader_float, "pp", clutter_value_lcopy_shader_float }; Because the strings are literals. And, really: nobody should be using allocated values for the collection and lcopy strings. https://bugzilla.gnome.org/show_bug.cgi?id=671545
This commit is contained in:
committed by
Matthias Clasen
parent
ab4cc22ba5
commit
2a87010831
@@ -92,7 +92,7 @@ G_STMT_START { \
|
||||
GValue *_val = (value); \
|
||||
guint _flags = (flags); \
|
||||
GTypeValueTable *_vtab = g_type_value_table_peek (_value_type); \
|
||||
gchar *_collect_format = _vtab->collect_format; \
|
||||
const gchar *_collect_format = _vtab->collect_format; \
|
||||
GTypeCValue _cvalues[G_VALUE_COLLECT_FORMAT_MAX_LENGTH] = { { 0, }, }; \
|
||||
guint _n_values = 0; \
|
||||
\
|
||||
@@ -161,7 +161,7 @@ G_STMT_START { \
|
||||
#define G_VALUE_COLLECT_SKIP(_value_type, var_args) \
|
||||
G_STMT_START { \
|
||||
GTypeValueTable *_vtable = g_type_value_table_peek (_value_type); \
|
||||
gchar *_collect_format = _vtable->collect_format; \
|
||||
const gchar *_collect_format = _vtable->collect_format; \
|
||||
\
|
||||
while (*_collect_format) \
|
||||
{ \
|
||||
@@ -207,7 +207,7 @@ G_STMT_START { \
|
||||
guint _flags = (flags); \
|
||||
GType _value_type = G_VALUE_TYPE (_value); \
|
||||
GTypeValueTable *_vtable = g_type_value_table_peek (_value_type); \
|
||||
gchar *_lcopy_format = _vtable->lcopy_format; \
|
||||
const gchar *_lcopy_format = _vtable->lcopy_format; \
|
||||
GTypeCValue _cvalues[G_VALUE_COLLECT_FORMAT_MAX_LENGTH] = { { 0, }, }; \
|
||||
guint _n_values = 0; \
|
||||
\
|
||||
|
Reference in New Issue
Block a user