Skip to content
  • jer.noble@apple.com's avatar
    Cancelling load may cause deadlock in -[AVPlayerItem release] · 0001b28a
    jer.noble@apple.com authored
    https://bugs.webkit.org/show_bug.cgi?id=114962
    
    Reviewed by Eric Carlson.
    
    Work around a bug in AVAssetResourceLoader by using a generic, non-main dispatch queue
    to recieve AVAssetResourceLoaderDelegate callbacks, and then marshalling those
    callbacks to the main thread asynchronously.
    
    * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
    (WebCore::globalLoaderDelegateQueue): Added.
    (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): Use the new global queue.
    (-[WebCoreAVFLoaderDelegate resourceLoader:shouldWaitForLoadingOfRequestedResource:]):
        Marshall the request to the main queue, and return YES (wait) immediately.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@148906 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    0001b28a