summaryrefslogtreecommitdiffstats
path: root/chrome/app/breakpad_linux.h
diff options
context:
space:
mode:
authoragl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-28 01:18:35 +0000
committeragl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-28 01:18:35 +0000
commitabaa71c990b2d9dd514e9f2eefb1d2cf7b720562 (patch)
tree202c89d876e45f30c44132122f885877210230b7 /chrome/app/breakpad_linux.h
parentb80d5016c18ad5816bbff0698ff3407e77feabf1 (diff)
downloadchromium_src-abaa71c990b2d9dd514e9f2eefb1d2cf7b720562.zip
chromium_src-abaa71c990b2d9dd514e9f2eefb1d2cf7b720562.tar.gz
chromium_src-abaa71c990b2d9dd514e9f2eefb1d2cf7b720562.tar.bz2
Linux: add internal core dump reporting.
In order to get a handle on a number of browser crashes, this patch adds an options for Google internal folks to upload full core files when the browser crashes. The core files are uploaded to an internal IP address and will be available to other developers. This is only enabled for Chrome branded builds and then, only if --google-internal-crash-reporting is given on the command line. http://codereview.chromium.org/160212 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21782 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/app/breakpad_linux.h')
-rw-r--r--chrome/app/breakpad_linux.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/chrome/app/breakpad_linux.h b/chrome/app/breakpad_linux.h
index 518cf42..0c3ccde 100644
--- a/chrome/app/breakpad_linux.h
+++ b/chrome/app/breakpad_linux.h
@@ -5,6 +5,8 @@
#ifndef CHROME_APP_BREAKPAD_LINUX_H_
#define CHROME_APP_BREAKPAD_LINUX_H_
+#include <string>
+
extern void InitCrashReporter();
#if defined(GOOGLE_CHROME_BUILD)
@@ -25,6 +27,19 @@ struct BreakpadInfo {
};
extern int UploadCrashDump(const BreakpadInfo& info);
+
+// Checks that the kernel's core filename pattern is "core" and moves the
+// current working directory to a temp directory.
+// Returns true iff core dumping has been successfully enabled for the current
+// process.
+bool EnableCoreDumping(std::string* core_dump_directory);
+// Blocks until the given child has exited. If the kernel indicates that the
+// child dumped core, then the core is expected a file called "core" and is
+// uploaded to a collection server. The core file is deleted and the given
+// directory is removed.
+void MonitorForCoreDumpsAndReport(const std::string& core_dump_directory,
+ const pid_t child);
+
#endif // defined(GOOGLE_CHROME_BUILD)
#endif // CHROME_APP_BREAKPAD_LINUX_H_