When looking at a benchmark trace, I saw the following: 54,16.2%,15.5%,WebCore::HTMLDocument::~HTMLDocument() (in WebCore) 54,16.2%,15.5%, WebCore::Document::~Document() (in WebCore) 54,16.2%,15.5%, WebCore::PlatformMediaSessionManager::sharedManager() (in WebCore) 54,16.2%,15.5%, WebCore::MediaSessionManageriOS::MediaSessionManageriOS() (in WebCore) 54,16.2%,15.5%, -[WebMediaSessionHelper initWithCallback:] (in WebCore) 54,16.2%,15.5%, -[WebMediaSessionHelper allocateVolumeView] (in WebCore) 50,15.0%,14.4%, -[MPVolumeView initWithFrame:style:] (in MediaPlayer) 4,1.2%,1.2%, initMPVolumeView() (in WebCore) We end up constructing a PlatformMediaSessionManager when destroying a Document, because of a call to PlatformMediaSessionManager::shared().stopAllMediaPlaybackForProcess(). This seems unfortunate.
Created attachment 257730 [details] Patch
Comment on attachment 257730 [details] Patch Clearing flags on attachment: 257730 Committed r187544: <http://trac.webkit.org/changeset/187544>
All reviewed patches have been landed. Closing bug.