browser: check for rvh existence
authorRobo <hop2deep@gmail.com>
Thu, 17 Dec 2015 17:57:05 +0000 (23:27 +0530)
committerRobo <hop2deep@gmail.com>
Thu, 17 Dec 2015 23:15:32 +0000 (04:45 +0530)
atom/browser/atom_browser_client.cc

index 1303b91..627d616 100644 (file)
@@ -197,9 +197,16 @@ void AtomBrowserClient::AppendExtraCommandLineSwitches(
   if (ContainsKey(pending_processes_, process_id))
     process_id = pending_processes_[process_id];
 
+
+  // Certain render process will be created with no associated render view,
+  // for example: ServiceWorker.
+  auto rvh = content::RenderViewHost::FromID(process_id, kDefaultRoutingID);
+  if (!rvh)
+    return;
+
   // Get the WebContents of the render process.
-  content::WebContents* web_contents = content::WebContents::FromRenderViewHost(
-      content::RenderViewHost::FromID(process_id, kDefaultRoutingID));
+  content::WebContents* web_contents =
+      content::WebContents::FromRenderViewHost(rvh);
   if (!web_contents)
     return;