| Index: chrome_elf/chrome_elf_main.cc
|
| diff --git a/chrome_elf/chrome_elf_main.cc b/chrome_elf/chrome_elf_main.cc
|
| index 772c906f1d4e66d07739f797afb7fc867390ba4d..de6437596216e48bc1da6f0c6887303b306cce26 100644
|
| --- a/chrome_elf/chrome_elf_main.cc
|
| +++ b/chrome_elf/chrome_elf_main.cc
|
| @@ -7,6 +7,7 @@
|
| #include "chrome_elf/chrome_elf_main.h"
|
|
|
| #include "chrome_elf/blacklist/blacklist.h"
|
| +#include "chrome_elf/breakpad.h"
|
| #include "chrome_elf/ntdll_cache.h"
|
|
|
| void SignalChromeElf() {
|
| @@ -15,8 +16,13 @@ void SignalChromeElf() {
|
|
|
| BOOL APIENTRY DllMain(HMODULE module, DWORD reason, LPVOID reserved) {
|
| if (reason == DLL_PROCESS_ATTACH) {
|
| - InitCache();
|
| - blacklist::Initialize(false); // Don't force, abort if beacon is present.
|
| + InitializeCrashReporting();
|
| +
|
| + __try {
|
| + InitCache();
|
| + blacklist::Initialize(false); // Don't force, abort if beacon is present.
|
| + } __except(GenerateCrashDump(GetExceptionInformation())) {
|
| + }
|
|
|
| // TODO(csharp): Move additions to the DLL blacklist to a sane place.
|
| // blacklist::AddDllToBlacklist(L"foo.dll");
|
|
|