Chromium Code Reviews| Index: components/pdf/renderer/pepper_pdf_host.cc |
| diff --git a/components/pdf/renderer/pepper_pdf_host.cc b/components/pdf/renderer/pepper_pdf_host.cc |
| index 1355141c2d4d5d9ddd74f6b9b75537f809b2c1cb..962b5dfb384bb0fa57e5ed82da5457231fc2c1d1 100644 |
| --- a/components/pdf/renderer/pepper_pdf_host.cc |
| +++ b/components/pdf/renderer/pepper_pdf_host.cc |
| @@ -100,7 +100,12 @@ int32_t PepperPDFHost::OnHostMsgDidStartLoading( |
| host_->GetPluginInstance(pp_instance()); |
| if (!instance) |
| return PP_ERROR_FAILED; |
| - instance->GetRenderView()->DidStartLoading(); |
| + |
| + content::RenderView* render_view = instance->GetRenderView(); |
| + if (!render_view) |
| + return PP_ERROR_FAILED; |
| + |
| + render_view->DidStartLoading(); |
|
tommycli
2016/07/22 21:47:37
Since this pattern is now repeated in many methods
Lei Zhang
2016/07/22 22:20:21
Done.
|
| return PP_OK; |
| } |
| @@ -110,7 +115,12 @@ int32_t PepperPDFHost::OnHostMsgDidStopLoading( |
| host_->GetPluginInstance(pp_instance()); |
| if (!instance) |
| return PP_ERROR_FAILED; |
| - instance->GetRenderView()->DidStopLoading(); |
| + |
| + content::RenderView* render_view = instance->GetRenderView(); |
| + if (!render_view) |
| + return PP_ERROR_FAILED; |
| + |
| + render_view->DidStopLoading(); |
| return PP_OK; |
| } |
| @@ -121,8 +131,13 @@ int32_t PepperPDFHost::OnHostMsgSetContentRestriction( |
| host_->GetPluginInstance(pp_instance()); |
| if (!instance) |
| return PP_ERROR_FAILED; |
| - instance->GetRenderView()->Send(new PDFHostMsg_PDFUpdateContentRestrictions( |
| - instance->GetRenderView()->GetRoutingID(), restrictions)); |
| + |
| + content::RenderView* render_view = instance->GetRenderView(); |
| + if (!render_view) |
| + return PP_ERROR_FAILED; |
| + |
| + render_view->Send(new PDFHostMsg_PDFUpdateContentRestrictions( |
| + render_view->GetRoutingID(), restrictions)); |
| return PP_OK; |
| } |
| @@ -142,14 +157,10 @@ int32_t PepperPDFHost::OnHostMsgHasUnsupportedFeature( |
| if (!instance) |
| return PP_ERROR_FAILED; |
| - // TODO(thestig): Turn CHECKs into the proper if statement after figuring out |
| - // what's wrong for https://crbug.com/627814 |
| - CHECK(instance->GetContainer()); |
| - CHECK(instance->GetContainer()->document().frame()); |
| - CHECK(instance->GetContainer()->document().frame()->view()); |
| - blink::WebView* view = |
| - instance->GetContainer()->document().frame()->view(); |
| - content::RenderView* render_view = content::RenderView::FromWebView(view); |
| + content::RenderView* render_view = instance->GetRenderView(); |
| + if (!render_view) |
| + return PP_ERROR_FAILED; |
| + |
| render_view->Send( |
| new PDFHostMsg_PDFHasUnsupportedFeature(render_view->GetRoutingID())); |
| return PP_OK; |
| @@ -166,8 +177,12 @@ int32_t PepperPDFHost::OnHostMsgSaveAs( |
| host_->GetPluginInstance(pp_instance()); |
| if (!instance) |
| return PP_ERROR_FAILED; |
| - GURL url = instance->GetPluginURL(); |
| + |
| content::RenderView* render_view = instance->GetRenderView(); |
| + if (!render_view) |
| + return PP_ERROR_FAILED; |
| + |
| + GURL url = instance->GetPluginURL(); |
| content::Referrer referrer; |
| referrer.url = url; |
| referrer.policy = blink::WebReferrerPolicyDefault; |