| 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
|
|
|