GNOME Bugzilla – Bug 147713
opt scheduler resorts the chain incorrectly
Last modified: 2004-12-22 21:47:04 UTC
If an already-linked PLAYING element chain is added to a PLAYING opt scheduler, group_update_links_for_element will sometimes incorrectly exchange the src and sink groups. This throws off the sort algorithm, leading to a deadlock in the pipeline.
Created attachment 29581 [details] [review] Small innocent patch to fix the problem The patch is very small and harmless :-)
Your patch does indeed fix the issue you mention and is indeed very small, harmless and elegant in its pure simplicity. In CVS can be found a very small and harmfull test app in the testsuite/schedulers dir that sortof shows the bad sorting in the scheduler. After applying the patch another bug becomes apparent, when adding a loop based element to the scheduler, the links to other groups are automatically followed and incremented. This should not happen because the bin will call pad_link explicitly for those connection, resulting in them counted twice. The patch in CVS therefore contains a partial revert of patchset 1.89 where the flaw was introduced.
Your sinister nature has been noted :-) Soundscrape works with the patch. Thanks.