scenario: Mark seek as done only when reaching next state
authorThibault Saunier <tsaunier@igalia.com>
Thu, 14 May 2020 22:45:11 +0000 (18:45 -0400)
committerGStreamer Merge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Wed, 27 May 2020 19:20:16 +0000 (19:20 +0000)
commite1ad840494eeb6bfc06ebf84dc95d3f98fde4f64
tree3f3dd5ea967e973c250425ee38cccce4914635e5
parente49876bb05e2c4018519ebf9ff74a0e768ae4fc6
scenario: Mark seek as done only when reaching next state

There is a race where following actions could generate a
flush-start/flush-stop dance but the state change resulting from the
seek hasn't been committed yet, leading to the ASYNC_START being
ignored by GstBin since its pending_state is not VOID when receiving
the ASYNC_START message.

Conceptually it is totally correct to consider an action done when
the state change of the pipeline is stabilized..

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/198>
validate/gst/validate/gst-validate-scenario.c