f1000db3ca
Markers added at the start of the timeline need to be special cased because we effectively check whether the marker time is greater than the old frame time or less than or equal to the new frame time but we never actually emit a frame for the start of the timeline. If the timeline is looping then it adjusts the position to interpolate a wrapped around position. However we do not emit a new frame after setting this position so we need to check for markers again there. clutter_timeline_get_delta should return the actual wall clock time between emissions of the new-frame signal - even if the elapsed time has been fudged at the end of the timeline. To make this work it no longer directly manipulates priv->msecs_delta but instead passes a delta value to check_markers.