Index: chrome_elf/chrome_elf_main.cc |
diff --git a/chrome_elf/chrome_elf_main.cc b/chrome_elf/chrome_elf_main.cc |
index fa60e2de4b472615b7aa81def3da820d234c0d95..95e0a415c41cb988fb256fe91ce2a12e9567d437 100644 |
--- a/chrome_elf/chrome_elf_main.cc |
+++ b/chrome_elf/chrome_elf_main.cc |
@@ -11,17 +11,23 @@ |
#include "chrome_elf/blacklist/blacklist.h" |
#include "chrome_elf/crash/crash_helper.h" |
+// This function is a temporary workaround for https://crbug.com/655788. We |
+// need to come up with a better way to initialize crash reporting that can |
+// happen inside DllMain(). |
+void SignalInitializeCrashReporting() { |
+ if (!elf_crash::InitializeCrashReporting()) { |
+#ifdef _DEBUG |
+ assert(false); |
+#endif // _DEBUG |
+ } |
+} |
+ |
void SignalChromeElf() { |
blacklist::ResetBeacon(); |
} |
BOOL APIENTRY DllMain(HMODULE module, DWORD reason, LPVOID reserved) { |
if (reason == DLL_PROCESS_ATTACH) { |
- if (!elf_crash::InitializeCrashReporting()) { |
-#ifdef _DEBUG |
- assert(false); |
-#endif // _DEBUG |
- } |
// CRT on initialization installs an exception filter which calls |
// TerminateProcess. We need to hook CRT's attempt to set an exception. |
// NOTE: Do not hook if ASan is present, or ASan will fail to install |