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 error. Fixes media/media-source/media-source-seek-detach-crash.html
Created attachment 377661 [details] Patch
Comment on attachment 377661 [details] Patch Clearing flags on attachment: 377661 Committed r249325: <https://trac.webkit.org/changeset/249325>
All reviewed patches have been landed. Closing bug.