After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 647781 - [playbin2] missing shutdown steps and inconsistent error behaviour
[playbin2] missing shutdown steps and inconsistent error behaviour
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other Linux
: Normal blocker
: 0.10.33
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-04-14 14:39 UTC by Mark Nauwelaerts
Modified: 2011-04-15 10:11 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
playbin2: ensure proper PAUSED_TO_READY cleanup (2.07 KB, patch)
2011-04-14 14:39 UTC, Mark Nauwelaerts
committed Details | Review

Description Mark Nauwelaerts 2011-04-14 14:39:58 UTC
Created attachment 185959 [details] [review]
playbin2: ensure proper PAUSED_TO_READY cleanup

Since playbin2 goes async to PAUSED, it might not make it there when an error occurs (e.g. invalid URI), and PAUSED_TO_READY is then skipped.

One of the steps that are then missed is a save_current_group, which will lead to the curr_group and next_group getting tangled up, and subsequent activations (to PAUSED) and deactivations (to NULL) will cycle through various failures (such as no "No URI set" or no error at all with only a failing state change), but no longer the original one (which should in fact occur each time around).
Comment 1 Tim-Philipp Müller 2011-04-14 18:14:27 UTC
Comment on attachment 185959 [details] [review]
playbin2: ensure proper PAUSED_TO_READY cleanup

Not the prettiest, but can't think of a better approch either now :)

What does this comment mean? "/* also do missed going to READY */"
Comment 2 Mark Nauwelaerts 2011-04-14 20:21:42 UTC
Made the comment slightly less enigmatic.

commit 2bb91c4880b2b7d8bd7641f226c35389d3b7bb45
Author: Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
Date:   Thu Apr 14 22:13:21 2011 +0200

    playbin2: ensure proper PAUSED_TO_READY cleanup
    
    ... since going async to PAUSED might fail, and never making it to PAUSED
    subsequently skips going down to READY.
    
    Fixes #647781.
Comment 3 Mark Nauwelaerts 2011-04-15 09:15:30 UTC
... and also this one for good measure:

commit 961226e0cd9cbd8c94d142763f8a1ba82f9aa9a8
Author: Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
Date:   Fri Apr 15 11:11:52 2011 +0200

    playbin2: avoid foregoing READY_TO_NULL when appropriate