In normal operation of AppendPipeline, except during tear down,
qtdemux never removes a pad. Even if a new initialization segment is
appended, the pad is reused.
There is an exception though: when the new initialization segment has
an incompatible set of tracks. This is invalid under the MSE spec and
should produce an error, but in this case this was making an assertion
fail -- in particular by sending an EOS to the to-be-removed pad, which
AppendPipeline doesn't expect.
This patch changes the assertion with graceful error handling for that
Created attachment 377661 [details]
Comment on attachment 377661 [details]
Clearing flags on attachment: 377661
Committed r249325: <https://trac.webkit.org/changeset/249325>
All reviewed patches have been landed. Closing bug.