Index: chrome/browser/renderer_host/browser_render_process_host.cc |
diff --git a/chrome/browser/renderer_host/browser_render_process_host.cc b/chrome/browser/renderer_host/browser_render_process_host.cc |
index 2061e25cf3ecd1e7c4a426c7e167786fba5c6bb4..4624ff69d61df608bf0de4ce81fc49a95f92824f 100644 |
--- a/chrome/browser/renderer_host/browser_render_process_host.cc |
+++ b/chrome/browser/renderer_host/browser_render_process_host.cc |
@@ -34,6 +34,9 @@ |
#include "chrome/browser/history/history.h" |
#include "chrome/browser/plugin_service.h" |
#include "chrome/browser/profile.h" |
+#if defined(OS_LINUX) |
+#include "chrome/browser/renderer_host/render_crash_handler_host_linux.h" |
+#endif |
#include "chrome/browser/renderer_host/render_view_host.h" |
#include "chrome/browser/renderer_host/render_widget_helper.h" |
#include "chrome/browser/renderer_host/render_widget_host.h" |
@@ -337,6 +340,12 @@ bool BrowserRenderProcessHost::Init() { |
channel_->GetClientFileDescriptorMapping(&src_fd, &dest_fd); |
if (src_fd > -1) |
fds_to_map.push_back(std::pair<int, int>(src_fd, dest_fd)); |
+#if defined(OS_LINUX) |
+ const int crash_signal_fd = |
+ Singleton<RenderCrashHandlerHostLinux>()->GetDeathSignalSocket(); |
+ if (crash_signal_fd >= 0) |
+ fds_to_map.push_back(std::make_pair(crash_signal_fd, 4)); |
+#endif |
base::LaunchApp(cmd_line.argv(), fds_to_map, false, &process); |
#endif |
if (!process) { |