Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(433)

Unified Diff: components/crash/content/app/fallback_crash_handling_win.h

Issue 2638433002: Integrate fallback crash handling in chrome (Closed)
Patch Set: Fix signedness comparison goof. Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/crash/content/app/fallback_crash_handling_win.h
diff --git a/components/crash/content/app/fallback_crash_handling_win.h b/components/crash/content/app/fallback_crash_handling_win.h
new file mode 100644
index 0000000000000000000000000000000000000000..ebf5d9f07811ae71513652b4ca2d745f7b150662
--- /dev/null
+++ b/components/crash/content/app/fallback_crash_handling_win.h
@@ -0,0 +1,43 @@
+// Copyright 2017 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef COMPONENTS_CRASH_CONTENT_APP_FALLBACK_CRASH_HANDLING_WIN_H_
+#define COMPONENTS_CRASH_CONTENT_APP_FALLBACK_CRASH_HANDLING_WIN_H_
+
+#include <stdint.h>
+#include <string>
+
+#include "base/command_line.h"
+
+namespace crash_reporter {
+
+namespace switches {
+extern const char kFallbackCrashHandler[];
+// The fallback handler uses the same prefetch ID as the Crashpad handler.
+extern const char kPrefetchArgument[];
+}
+
+// A somewhat unique exit code for the crashed process. This is mostly
+// for testing, as there won't likely be anyone around to record the exit
+// code of the Crashpad handler.
+extern const uint32_t kFallbackCrashTerminationCode;
+
+// Sets up fallback crash handling for this process.
+// Note that this installs an unhandled exception filter, and requires
+// that the executable call the "RunAsFallbackCrashHandler" function, when
+// it's passed a --type switch with the value |kFallbackCrashHandlerType|.
+bool SetupFallbackCrashHandling(const base::CommandLine& command_line);
+
+// Runs the fallback crash handler process, to handle a crash in a process
+// that's previously called SetupFallbackCrashHandling.
+// The |product_name|, |version| and |channel_name| parameters will be used
+// as properties of the crash for the purposes of upload.
+int RunAsFallbackCrashHandler(const base::CommandLine& command_line,
+ std::string product_name,
+ std::string version,
+ std::string channel_name);
+
+} // namespace crash_reporter
+
+#endif // COMPONENTS_CRASH_CONTENT_APP_FALLBACK_CRASH_HANDLING_WIN_H_

Powered by Google App Engine
This is Rietveld 408576698