| Index: content/renderer/render_frame_impl.cc
|
| diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
|
| index e82c518e921ebc7f96f2fd536a86dc7ad30f2e5c..55125cf5d62ac3ebfcb74d1f8c275c631bcc05b7 100644
|
| --- a/content/renderer/render_frame_impl.cc
|
| +++ b/content/renderer/render_frame_impl.cc
|
| @@ -2317,7 +2317,7 @@ blink::WebMediaPlayer* RenderFrameImpl::createMediaPlayer(
|
|
|
| #if defined(ENABLE_MOJO_MEDIA) && !defined(OS_ANDROID)
|
| scoped_ptr<media::RendererFactory> media_renderer_factory(
|
| - new media::MojoRendererFactory(GetMediaServiceFactory()));
|
| + new media::MojoRendererFactory(GetMediaServiceProvider()));
|
| #else
|
| scoped_ptr<media::RendererFactory> media_renderer_factory =
|
| GetContentClient()->renderer()->CreateMediaRendererFactory(
|
| @@ -5544,25 +5544,10 @@ media::MediaPermission* RenderFrameImpl::GetMediaPermission() {
|
| }
|
|
|
| #if defined(ENABLE_MOJO_MEDIA)
|
| -media::interfaces::ServiceFactory* RenderFrameImpl::GetMediaServiceFactory() {
|
| - if (!media_service_factory_) {
|
| - mojo::ServiceProviderPtr service_provider =
|
| - ConnectToApplication(GURL("mojo:media"));
|
| - mojo::ConnectToService(service_provider.get(), &media_service_factory_);
|
| - media_service_factory_.set_connection_error_handler(
|
| - base::Bind(&RenderFrameImpl::OnMediaServiceFactoryConnectionError,
|
| - base::Unretained(this)));
|
| - }
|
| -
|
| - return media_service_factory_.get();
|
| -}
|
| -
|
| -void RenderFrameImpl::OnMediaServiceFactoryConnectionError() {
|
| - // TODO(xhwang): Resetting |media_service_factory_| could cause access
|
| - // violation on the old |media_service_factory_| by outstanding
|
| - // media::CdmFactory or media::RendererFactory. Find a better way to handle
|
| - // this.
|
| - // media_service_factory_.reset();
|
| +mojo::ServiceProvider* RenderFrameImpl::GetMediaServiceProvider() {
|
| + if (!media_service_provider_)
|
| + media_service_provider_ = ConnectToApplication(GURL("mojo:media"));
|
| + return media_service_provider_.get();
|
| }
|
| #endif
|
|
|
| @@ -5586,7 +5571,7 @@ media::CdmFactory* RenderFrameImpl::GetCdmFactory() {
|
| DCHECK(frame_);
|
|
|
| #if defined(ENABLE_MOJO_MEDIA)
|
| - cdm_factory_.reset(new media::MojoCdmFactory(GetMediaServiceFactory()));
|
| + cdm_factory_.reset(new media::MojoCdmFactory(GetMediaServiceProvider()));
|
| #else
|
| cdm_factory_.reset(new RenderCdmFactory(
|
| #if defined(ENABLE_PEPPER_CDMS)
|
|
|