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

Unified Diff: chrome_frame/chrome_frame_reporting.h

Issue 12521002: Start and stop crash reporting outside of the loader lock. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: unit test Created 7 years, 9 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
« no previous file with comments | « chrome_frame/chrome_frame.gyp ('k') | chrome_frame/chrome_frame_reporting.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome_frame/chrome_frame_reporting.h
diff --git a/chrome_frame/chrome_frame_reporting.h b/chrome_frame/chrome_frame_reporting.h
index 94bfbdc8a3fd02a5e75d6ed44613bf87102e8f7f..94ee7f97bf2b20e5ac4646ebbd4b70c8e652f8dd 100644
--- a/chrome_frame/chrome_frame_reporting.h
+++ b/chrome_frame/chrome_frame_reporting.h
@@ -2,22 +2,27 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-// A wrapper around common crash reporting code to manage reporting for Chrome
-// Frame.
-
#ifndef CHROME_FRAME_CHROME_FRAME_REPORTING_H_
#define CHROME_FRAME_CHROME_FRAME_REPORTING_H_
-#include "chrome_frame/crash_reporting/crash_report.h"
+#include "chrome_frame/scoped_initialization_manager.h"
+
+namespace chrome_frame {
-extern const wchar_t kSystemPrincipalSid[];
+// A Traits class for a ScopedInitializationManager that starts/stops crash
+// reporting for npchrome_frame.dll.
+class CrashReportingTraits {
+ public:
+ static void Initialize();
+ static void Shutdown();
+};
-// Intialize crash reporting for Chrome Frame. Specific parameters here include
-// using the temp directory for dumps, determining if the install is system
-// wide or user specific, and customized client info.
-bool InitializeCrashReporting();
+// Manages crash reporting for the Chrome Frame dll. Crash reporting cannot be
+// reliably started or stopped when the loader lock is held, so DllMain cannot
+// be used to start/stop reporting. Rather, instances of this class are used in
+// each entrypoint into the dll.
+typedef ScopedInitializationManager<CrashReportingTraits> ScopedCrashReporting;
-// Shut down crash reporting for Chrome Frame.
-bool ShutdownCrashReporting();
+} // namespace chrome_frame
#endif // CHROME_FRAME_CHROME_FRAME_REPORTING_H_
« no previous file with comments | « chrome_frame/chrome_frame.gyp ('k') | chrome_frame/chrome_frame_reporting.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698