Index: chrome_elf/chrome_elf_main.cc |
diff --git a/chrome_elf/chrome_elf_main.cc b/chrome_elf/chrome_elf_main.cc |
index e2b57aa56e34d6d911d29d8b1d9dea359507900c..027821adfa3e2c72367155f5af5b4330eb9cbdf7 100644 |
--- a/chrome_elf/chrome_elf_main.cc |
+++ b/chrome_elf/chrome_elf_main.cc |
@@ -84,6 +84,13 @@ void DisableSetUnhandledExceptionFilter() { |
} // namespace |
+// 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() { |
+ InitializeCrashReportingForProcess(); |
+} |
+ |
void SignalChromeElf() { |
blacklist::ResetBeacon(); |
} |
@@ -110,11 +117,6 @@ extern "C" __declspec(dllexport) void SetMetricsClientId( |
BOOL APIENTRY DllMain(HMODULE module, DWORD reason, LPVOID reserved) { |
if (reason == DLL_PROCESS_ATTACH) { |
- InitializeCrashReportingForProcess(); |
- // CRT on initialization installs an exception filter which calls |
- // TerminateProcess. We need to hook CRT's attempt to set an exception |
- // handler and ignore it. Don't do this when ASan is present, or ASan will |
- // fail to install its own unhandled exception filter. |
#if !defined(ADDRESS_SANITIZER) |
DisableSetUnhandledExceptionFilter(); |
#endif |