AVSampleBufferRenderSynchronizer can sometimes call a boundary time observer early. When this happens for the duration time observer, seek the synchronizer to to the duration so HTMLMediaElement sees that playback has stopped because currentTime is equal to duration.
<rdar://problem/17998261>
Created attachment 238386 [details] Proposed patch.
Created attachment 238387 [details] Rebased patch
Committed r173771 - http://trac.webkit.org/changeset/173771
I seem to be getting the following build error after this change: Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:646:19: error: variable 'duration' cannot be implicitly captured in a lambda with no capture-default specified if (now < duration) {
Landed a follow-up build fix in r173777 <http://trac.webkit.org/r173777>.