diff options
Diffstat (limited to 'chrome/renderer/extensions/extension_process_bindings.cc')
-rw-r--r-- | chrome/renderer/extensions/extension_process_bindings.cc | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/chrome/renderer/extensions/extension_process_bindings.cc b/chrome/renderer/extensions/extension_process_bindings.cc index fcf9710..1c1ac79 100644 --- a/chrome/renderer/extensions/extension_process_bindings.cc +++ b/chrome/renderer/extensions/extension_process_bindings.cc @@ -70,16 +70,9 @@ class ExtensionImpl : public v8::Extension { static v8::Handle<v8::Value> StartRequest(const v8::Arguments& args) { WebFrame* webframe = WebFrame::RetrieveActiveFrame(); - DCHECK(webframe) << "There should be an active frame since we just got " - "a native function called."; - if (!webframe) return v8::Undefined(); - - WebView* webview = webframe->GetView(); - if (!webview) return v8::Undefined(); // can happen during closing - - RenderView* renderview = static_cast<RenderView*>(webview->GetDelegate()); - DCHECK(renderview) << "Encountered a WebView without a WebViewDelegate"; - if (!renderview) return v8::Undefined(); + RenderView* renderview = GetActiveRenderView(); + if (!webframe || !renderview) + return v8::Undefined(); if (args.Length() != 2 || !args[0]->IsString() || !args[1]->IsInt32()) return v8::Undefined(); |