utils: Don't use G_GNUC_CONST for the uint64 scaling functions

They are actually *not* const functions because on architectures
without int128 instructions the parameters were changed.

gcc re-used the parameters on the stack for multiple calls though
and the changed parameters were used for the second call then.

Fixes bug #623003.
This commit is contained in:
Sebastian Dröge 2010-06-28 10:20:39 +02:00
parent 484ab2a561
commit c076eb6bb0

View file

@ -63,13 +63,13 @@ gdouble gst_util_guint64_to_gdouble (guint64 value) G_GNUC_CONST;
#define gst_guint64_to_gdouble(value) ((gdouble) (value))
#endif
guint64 gst_util_uint64_scale (guint64 val, guint64 num, guint64 denom) G_GNUC_CONST;
guint64 gst_util_uint64_scale_round (guint64 val, guint64 num, guint64 denom) G_GNUC_CONST;
guint64 gst_util_uint64_scale_ceil (guint64 val, guint64 num, guint64 denom) G_GNUC_CONST;
guint64 gst_util_uint64_scale (guint64 val, guint64 num, guint64 denom);
guint64 gst_util_uint64_scale_round (guint64 val, guint64 num, guint64 denom);
guint64 gst_util_uint64_scale_ceil (guint64 val, guint64 num, guint64 denom);
guint64 gst_util_uint64_scale_int (guint64 val, gint num, gint denom) G_GNUC_CONST;
guint64 gst_util_uint64_scale_int_round (guint64 val, gint num, gint denom) G_GNUC_CONST;
guint64 gst_util_uint64_scale_int_ceil (guint64 val, gint num, gint denom) G_GNUC_CONST;
guint64 gst_util_uint64_scale_int (guint64 val, gint num, gint denom);
guint64 gst_util_uint64_scale_int_round (guint64 val, gint num, gint denom);
guint64 gst_util_uint64_scale_int_ceil (guint64 val, gint num, gint denom);
guint32 gst_util_seqnum_next (void);
gint32 gst_util_seqnum_compare (guint32 s1, guint32 s2);