Chromium Code Reviews| Index: content/renderer/render_frame_impl.cc |
| diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc |
| index 3ca56c4a5a62aba13b2e82e4fe3d29e1ef8da93e..d5995d7d4eb8a5f945c57fb0127efe0cc94d603b 100644 |
| --- a/content/renderer/render_frame_impl.cc |
| +++ b/content/renderer/render_frame_impl.cc |
| @@ -6775,18 +6775,21 @@ media::mojom::RemoterFactory* RenderFrameImpl::GetRemoterFactory() { |
| #endif |
| media::CdmFactory* RenderFrameImpl::GetCdmFactory() { |
| + DCHECK(frame_); |
| + |
| if (cdm_factory_) |
| return cdm_factory_.get(); |
| -#if BUILDFLAG(ENABLE_MOJO_CDM) |
| - cdm_factory_.reset(new media::MojoCdmFactory(GetMediaInterfaceProvider())); |
| - return cdm_factory_.get(); |
| -#endif // BUILDFLAG(ENABLE_MOJO_CDM) |
| - |
| #if BUILDFLAG(ENABLE_PEPPER_CDMS) |
| - DCHECK(frame_); |
| - cdm_factory_.reset( |
| - new RenderCdmFactory(base::Bind(&PepperCdmWrapperImpl::Create, frame_))); |
| + static_assert(BUILDFLAG(ENABLE_MOJO_CDM), |
| + "Mojo CDM should always be enabled when PPAPI CDM is enabled"); |
| + if (base::FeatureList::IsEnabled(media::kMojoCdm)) |
| + cdm_factory_.reset(new media::MojoCdmFactory(GetMediaInterfaceProvider())); |
| + else |
|
jam
2017/05/24 00:36:33
nit: brace brackets per style guide
|
| + cdm_factory_.reset(new RenderCdmFactory( |
| + base::Bind(&PepperCdmWrapperImpl::Create, frame_))); |
| +#elif BUILDFLAG(ENABLE_MOJO_CDM) |
| + cdm_factory_.reset(new media::MojoCdmFactory(GetMediaInterfaceProvider())); |
| #endif // BUILDFLAG(ENABLE_PEPPER_CDMS) |
| #if BUILDFLAG(ENABLE_MEDIA_REMOTING) |
|
jrummell
2017/05/23 22:23:28
Is it possible for cdm_factory_ to get set twice?
xhwang
2017/05/23 22:31:12
The RemotingCdmFactory actually wraps the cdm_fact
|