Commit 1402c051 authored by Emmanuele Bassi's avatar Emmanuele Bassi

timeline: Cast elapsed time before emitting ::new-frame

When emitting a new-frame signal, priv->elapsed_time is passed as a
parameter. This is a gint64. The closure marshal uses an INT. On some
platforms, this is not received correctly by signal handlers (they
receive 0). One solution is to cast priv->elapsed_time to a gint when
emitting the signal.

We cannot change the signature of the signal without breaking ABI.

https://bugzilla.gnome.org/show_bug.cgi?id=654066
parent c9cbe583
......@@ -550,8 +550,10 @@ emit_frame_signal (ClutterTimeline *timeline)
{
ClutterTimelinePrivate *priv = timeline->priv;
g_signal_emit (timeline, timeline_signals[NEW_FRAME], 0,
priv->elapsed_time);
/* see bug https://bugzilla.gnome.org/show_bug.cgi?id=654066 */
gint elapsed = (gint) priv->elapsed_time;
g_signal_emit (timeline, timeline_signals[NEW_FRAME], 0, elapsed);
}
static gboolean
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment