diff --git a/ChangeLog b/ChangeLog index 682a173697..cd0b398a9e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2007-10-14 Wim Taymans + + * gst/gstbin.c: (bin_handle_async_done): + Correctly set the next state if all of our async children commited their + state. This makes sure we can actually cancel the state change in + progress. Fixes a regression in Rhythmbox when seeking. + 2007-10-13 Tim-Philipp Müller * gst/gstbin.c: diff --git a/gst/gstbin.c b/gst/gstbin.c index 469e80b0ec..ec94eb7d5f 100644 --- a/gst/gstbin.c +++ b/gst/gstbin.c @@ -2583,6 +2583,7 @@ bin_handle_async_done (GstBin * bin, GstStateChangeReturn ret) cont->pending = pending; /* mark busy */ GST_STATE_RETURN (bin) = GST_STATE_CHANGE_ASYNC; + GST_STATE_NEXT (bin) = pending; } if (old_next != GST_STATE_PLAYING) {