diff options
author | Tim-Philipp Müller <tim@centricular.com> | 2015-06-29 10:41:27 +0100 |
---|---|---|
committer | Tim-Philipp Müller <tim@centricular.com> | 2015-06-29 10:41:27 +0100 |
commit | 86abdbfb5552a11219275e5b597e7d8b476748b2 (patch) | |
tree | 8a6a10657bc1df7bb291de7384fa47932fad45dd /libs/gst/controller | |
parent | 03dccde1ef977ed7d57b445ab4efbd10a23e60f0 (diff) |
directcontrolbinding: fix ABI break
Structure size was increased without adjustment of the padding.
https://bugzilla.gnome.org/show_bug.cgi?id=751622
https://bugzilla.gnome.org/show_bug.cgi?id=740502
Diffstat (limited to 'libs/gst/controller')
-rw-r--r-- | libs/gst/controller/gstdirectcontrolbinding.c | 6 | ||||
-rw-r--r-- | libs/gst/controller/gstdirectcontrolbinding.h | 9 |
2 files changed, 9 insertions, 6 deletions
diff --git a/libs/gst/controller/gstdirectcontrolbinding.c b/libs/gst/controller/gstdirectcontrolbinding.c index 691655665..44eb40546 100644 --- a/libs/gst/controller/gstdirectcontrolbinding.c +++ b/libs/gst/controller/gstdirectcontrolbinding.c @@ -233,7 +233,7 @@ gst_direct_control_binding_constructor (GType type, guint n_construct_params, /* select mapping function */ #define SET_CONVERT_FUNCTION(type) \ - if (self->want_absolute) { \ + if (self->ABI.abi.want_absolute) { \ self->convert_g_value = abs_convert_g_value_to_##type; \ self->convert_value = abs_convert_value_to_##type; \ } \ @@ -300,7 +300,7 @@ gst_direct_control_binding_set_property (GObject * object, guint prop_id, self->cs = g_value_dup_object (value); break; case PROP_ABSOLUTE: - self->want_absolute = g_value_get_boolean (value); + self->ABI.abi.want_absolute = g_value_get_boolean (value); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); @@ -319,7 +319,7 @@ gst_direct_control_binding_get_property (GObject * object, guint prop_id, g_value_set_object (value, self->cs); break; case PROP_ABSOLUTE: - g_value_set_boolean (value, self->want_absolute); + g_value_set_boolean (value, self->ABI.abi.want_absolute); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); diff --git a/libs/gst/controller/gstdirectcontrolbinding.h b/libs/gst/controller/gstdirectcontrolbinding.h index ade2ea4a4..5b816c841 100644 --- a/libs/gst/controller/gstdirectcontrolbinding.h +++ b/libs/gst/controller/gstdirectcontrolbinding.h @@ -81,13 +81,16 @@ struct _GstDirectControlBinding { GValue cur_value; gdouble last_value; gint byte_size; - gboolean want_absolute; GstDirectControlBindingConvertValue convert_value; GstDirectControlBindingConvertGValue convert_g_value; - gpointer _gst_reserved[GST_PADDING]; -}; + union { + gpointer _gst_reserved[GST_PADDING]; + struct { + gboolean want_absolute; + } abi; + } ABI;}; /** * GstDirectControlBindingClass: |