Index: chrome/browser/metro_viewer/chrome_metro_viewer_process_host_aurawin.cc |
diff --git a/chrome/browser/metro_viewer/chrome_metro_viewer_process_host_aurawin.cc b/chrome/browser/metro_viewer/chrome_metro_viewer_process_host_aurawin.cc |
index ef86c41788b2cb032c2f9744b406f72a0e90ed3d..9d3f6fdfaa5f0d53945030feefc74507181ea5ab 100644 |
--- a/chrome/browser/metro_viewer/chrome_metro_viewer_process_host_aurawin.cc |
+++ b/chrome/browser/metro_viewer/chrome_metro_viewer_process_host_aurawin.cc |
@@ -5,8 +5,11 @@ |
#include "chrome/browser/metro_viewer/chrome_metro_viewer_process_host_aurawin.h" |
#include "ash/shell.h" |
+#include "base/environment.h" |
#include "base/logging.h" |
#include "base/memory/ref_counted.h" |
+#include "base/memory/scoped_ptr.h" |
+#include "base/strings/string_number_conversions.h" |
#include "chrome/browser/browser_process.h" |
#include "chrome/browser/browser_process_platform_part_aurawin.h" |
#include "chrome/browser/chrome_notification_types.h" |
@@ -19,6 +22,7 @@ |
#include "chrome/browser/ui/browser_window.h" |
#include "chrome/browser/ui/host_desktop.h" |
#include "chrome/browser/ui/tabs/tab_strip_model.h" |
+#include "chrome/common/env_vars.h" |
#include "content/public/browser/browser_thread.h" |
#include "content/public/browser/notification_service.h" |
#include "content/public/browser/page_navigator.h" |
@@ -67,6 +71,12 @@ void ChromeMetroViewerProcessHost::OnChannelError() { |
// TODO(cpu): At some point we only close the browser. Right now this |
// is very convenient for developing. |
DLOG(INFO) << "viewer channel error : Quitting browser"; |
+ |
+ // Set environment variable to let breakpad know that metro process wasn't |
+ // connected. |
+ scoped_ptr<base::Environment> env(base::Environment::Create()); |
cpu_(ooo_6.6-7.5)
2013/08/27 17:40:37
don't use this method, just call the windows api d
Shrikant Kelkar
2013/08/27 22:29:30
Done.
|
+ env->UnSetVar(env_vars::kMetroConnected); |
+ |
aura::RemoteRootWindowHostWin::Instance()->Disconnected(); |
g_browser_process->ReleaseModule(); |
CloseOpenAshBrowsers(); |
@@ -82,6 +92,14 @@ void ChromeMetroViewerProcessHost::OnChannelError() { |
g_browser_process->platform_part()->OnMetroViewerProcessTerminated(); |
} |
+void ChromeMetroViewerProcessHost::OnChannelConnected(int32 /*peer_pid*/) { |
+ DLOG(INFO) << "ChromeMetroViewerProcessHost::OnChannelConnected: "; |
+ // Set environment variable to let breakpad know that metro process was |
+ // connected. |
+ scoped_ptr<base::Environment> env(base::Environment::Create()); |
+ env->SetVar(env_vars::kMetroConnected, "1"); |
+} |
+ |
void ChromeMetroViewerProcessHost::OnSetTargetSurface( |
gfx::NativeViewId target_surface) { |
DLOG(INFO) << __FUNCTION__ << ", target_surface = " << target_surface; |