From 848713311424bc94ed6087ca2636f4e8fae01747 Mon Sep 17 00:00:00 2001 From: Stefan Sauer Date: Wed, 30 Sep 2015 17:29:16 +0200 Subject: [PATCH] controlpoint: change the padding to be of arch-independent size The default padding I introduced in d4f81fb4e62d34a4c1dabc65b23ede7ce7694c63 is actually only 4 pointers and on 32bit platforms already smaller than the union. Replace it with a fixed 64byte padding. Don't add the normal padding for now. Fixes #755822 --- libs/gst/controller/gsttimedvaluecontrolsource.h | 6 +++--- tests/check/libs/struct_arm.h | 2 +- tests/check/libs/struct_hppa.h | 2 +- tests/check/libs/struct_i386.h | 2 +- tests/check/libs/struct_ppc32.h | 2 +- tests/check/libs/struct_ppc64.h | 2 +- tests/check/libs/struct_sparc.h | 2 +- tests/check/libs/struct_x86_64.h | 2 +- 8 files changed, 10 insertions(+), 10 deletions(-) diff --git a/libs/gst/controller/gsttimedvaluecontrolsource.h b/libs/gst/controller/gsttimedvaluecontrolsource.h index d161ecb..04dd464 100644 --- a/libs/gst/controller/gsttimedvaluecontrolsource.h +++ b/libs/gst/controller/gsttimedvaluecontrolsource.h @@ -70,14 +70,14 @@ struct _GstControlPoint /* Caches for the interpolators */ /* FIXME: we should not have this here already ... */ union { - struct { + struct { /* 16 bytes */ gdouble h; gdouble z; } cubic; - struct { + struct { /* 24 bytes */ gdouble c1s, c2s, c3s; } cubic_mono; - gpointer _gst_reserved[GST_PADDING]; + guint8 _gst_reserved[64]; } cache; }; diff --git a/tests/check/libs/struct_arm.h b/tests/check/libs/struct_arm.h index ecb0f58..21310de 100644 --- a/tests/check/libs/struct_arm.h +++ b/tests/check/libs/struct_arm.h @@ -22,7 +22,7 @@ GstCheckABIStruct list[] = { {"GstInterpolationControlSource", sizeof (GstInterpolationControlSource), 152}, {"GstLFOControlSourceClass", sizeof (GstLFOControlSourceClass), 124}, {"GstLFOControlSource", sizeof (GstLFOControlSource), 120}, - {"GstControlPoint", sizeof (GstControlPoint), 48}, + {"GstControlPoint", sizeof (GstControlPoint), 80}, {"GstTimedValueControlSourceClass", sizeof (GstTimedValueControlSourceClass), 124}, {"GstTimedValueControlSource", sizeof (GstTimedValueControlSource), 128}, {"GstTriggerControlSourceClass", sizeof (GstTriggerControlSourceClass), 140}, diff --git a/tests/check/libs/struct_hppa.h b/tests/check/libs/struct_hppa.h index 1915e4f..9cdb923 100644 --- a/tests/check/libs/struct_hppa.h +++ b/tests/check/libs/struct_hppa.h @@ -22,7 +22,7 @@ GstCheckABIStruct list[] = { {"GstInterpolationControlSource", sizeof (GstInterpolationControlSource), 240}, {"GstLFOControlSourceClass", sizeof (GstLFOControlSourceClass), 248}, {"GstLFOControlSource", sizeof (GstLFOControlSource), 184}, - {"GstControlPoint", sizeof (GstControlPoint), 48}, + {"GstControlPoint", sizeof (GstControlPoint), 80}, {"GstTimedValueControlSourceClass", sizeof (GstTimedValueControlSourceClass), 248}, {"GstTimedValueControlSource", sizeof (GstTimedValueControlSource), 200}, {"GstTriggerControlSourceClass", sizeof (GstTriggerControlSourceClass), 280}, diff --git a/tests/check/libs/struct_i386.h b/tests/check/libs/struct_i386.h index 8cf7343..fd13063 100644 --- a/tests/check/libs/struct_i386.h +++ b/tests/check/libs/struct_i386.h @@ -22,7 +22,7 @@ GstCheckABIStruct list[] = { {"GstInterpolationControlSource", sizeof (GstInterpolationControlSource), 140}, {"GstLFOControlSourceClass", sizeof (GstLFOControlSourceClass), 124}, {"GstLFOControlSource", sizeof (GstLFOControlSource), 108}, - {"GstControlPoint", sizeof (GstControlPoint), 48}, + {"GstControlPoint", sizeof (GstControlPoint), 80}, {"GstTimedValueControlSourceClass", sizeof (GstTimedValueControlSourceClass), 124}, {"GstTimedValueControlSource", sizeof (GstTimedValueControlSource), 120}, {"GstTriggerControlSourceClass", sizeof (GstTriggerControlSourceClass), 140}, diff --git a/tests/check/libs/struct_ppc32.h b/tests/check/libs/struct_ppc32.h index ecb0f58..21310de 100644 --- a/tests/check/libs/struct_ppc32.h +++ b/tests/check/libs/struct_ppc32.h @@ -22,7 +22,7 @@ GstCheckABIStruct list[] = { {"GstInterpolationControlSource", sizeof (GstInterpolationControlSource), 152}, {"GstLFOControlSourceClass", sizeof (GstLFOControlSourceClass), 124}, {"GstLFOControlSource", sizeof (GstLFOControlSource), 120}, - {"GstControlPoint", sizeof (GstControlPoint), 48}, + {"GstControlPoint", sizeof (GstControlPoint), 80}, {"GstTimedValueControlSourceClass", sizeof (GstTimedValueControlSourceClass), 124}, {"GstTimedValueControlSource", sizeof (GstTimedValueControlSource), 128}, {"GstTriggerControlSourceClass", sizeof (GstTriggerControlSourceClass), 140}, diff --git a/tests/check/libs/struct_ppc64.h b/tests/check/libs/struct_ppc64.h index 1915e4f..9cdb923 100644 --- a/tests/check/libs/struct_ppc64.h +++ b/tests/check/libs/struct_ppc64.h @@ -22,7 +22,7 @@ GstCheckABIStruct list[] = { {"GstInterpolationControlSource", sizeof (GstInterpolationControlSource), 240}, {"GstLFOControlSourceClass", sizeof (GstLFOControlSourceClass), 248}, {"GstLFOControlSource", sizeof (GstLFOControlSource), 184}, - {"GstControlPoint", sizeof (GstControlPoint), 48}, + {"GstControlPoint", sizeof (GstControlPoint), 80}, {"GstTimedValueControlSourceClass", sizeof (GstTimedValueControlSourceClass), 248}, {"GstTimedValueControlSource", sizeof (GstTimedValueControlSource), 200}, {"GstTriggerControlSourceClass", sizeof (GstTriggerControlSourceClass), 280}, diff --git a/tests/check/libs/struct_sparc.h b/tests/check/libs/struct_sparc.h index 1915e4f..9cdb923 100644 --- a/tests/check/libs/struct_sparc.h +++ b/tests/check/libs/struct_sparc.h @@ -22,7 +22,7 @@ GstCheckABIStruct list[] = { {"GstInterpolationControlSource", sizeof (GstInterpolationControlSource), 240}, {"GstLFOControlSourceClass", sizeof (GstLFOControlSourceClass), 248}, {"GstLFOControlSource", sizeof (GstLFOControlSource), 184}, - {"GstControlPoint", sizeof (GstControlPoint), 48}, + {"GstControlPoint", sizeof (GstControlPoint), 80}, {"GstTimedValueControlSourceClass", sizeof (GstTimedValueControlSourceClass), 248}, {"GstTimedValueControlSource", sizeof (GstTimedValueControlSource), 200}, {"GstTriggerControlSourceClass", sizeof (GstTriggerControlSourceClass), 280}, diff --git a/tests/check/libs/struct_x86_64.h b/tests/check/libs/struct_x86_64.h index 1915e4f..9cdb923 100644 --- a/tests/check/libs/struct_x86_64.h +++ b/tests/check/libs/struct_x86_64.h @@ -22,7 +22,7 @@ GstCheckABIStruct list[] = { {"GstInterpolationControlSource", sizeof (GstInterpolationControlSource), 240}, {"GstLFOControlSourceClass", sizeof (GstLFOControlSourceClass), 248}, {"GstLFOControlSource", sizeof (GstLFOControlSource), 184}, - {"GstControlPoint", sizeof (GstControlPoint), 48}, + {"GstControlPoint", sizeof (GstControlPoint), 80}, {"GstTimedValueControlSourceClass", sizeof (GstTimedValueControlSourceClass), 248}, {"GstTimedValueControlSource", sizeof (GstTimedValueControlSource), 200}, {"GstTriggerControlSourceClass", sizeof (GstTriggerControlSourceClass), 280}, -- 2.7.4