OLD | NEW |
---|---|
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include <windows.h> | 5 #include <windows.h> |
6 | 6 |
7 #include "chrome_elf/chrome_elf_main.h" | 7 #include "chrome_elf/chrome_elf_main.h" |
8 | 8 |
9 #include "chrome_elf/blacklist/blacklist.h" | 9 #include "chrome_elf/blacklist/blacklist.h" |
10 #include "chrome_elf/breakpad.h" | |
10 #include "chrome_elf/ntdll_cache.h" | 11 #include "chrome_elf/ntdll_cache.h" |
11 | 12 |
12 void SignalChromeElf() { | 13 void SignalChromeElf() { |
13 blacklist::ResetBeacon(); | 14 blacklist::ResetBeacon(); |
14 } | 15 } |
15 | 16 |
16 BOOL APIENTRY DllMain(HMODULE module, DWORD reason, LPVOID reserved) { | 17 BOOL APIENTRY DllMain(HMODULE module, DWORD reason, LPVOID reserved) { |
17 if (reason == DLL_PROCESS_ATTACH) { | 18 if (reason == DLL_PROCESS_ATTACH) { |
18 InitCache(); | 19 // TODO (caitkp): Do we need this? If so, how do we make it play nice with |
Sigurður Ásgeirsson
2014/02/05 13:58:33
A single function cannot have objects that require
Cait (Slow)
2014/02/07 15:32:02
Not needed anymore as our breakpad client no longe
| |
19 blacklist::Initialize(false); // Don't force, abort if beacon is present. | 20 // the try catch? |
21 //base::AtExitManager exit_manager; | |
22 InitializeCrashReporting(); | |
23 | |
24 __try { | |
25 InitCache(); | |
26 blacklist::Initialize(false); // Don't force, abort if beacon is present. | |
27 } __except(GenerateCrashDump(GetExceptionInformation())) { | |
28 } | |
20 | 29 |
21 // TODO(csharp): Move additions to the DLL blacklist to a sane place. | 30 // TODO(csharp): Move additions to the DLL blacklist to a sane place. |
22 // blacklist::AddDllToBlacklist(L"foo.dll"); | 31 // blacklist::AddDllToBlacklist(L"foo.dll"); |
32 | |
33 // TODO(caitkp): We should really de-initialize our breakpad client here, to | |
Sigurður Ásgeirsson
2014/02/05 13:58:33
I don't know that this is true.
As-is, you're also
Cait (Slow)
2014/02/07 15:32:02
Did some very unscientific research here, and it s
| |
34 // ensure that we don't block Chrome's when it tries to connect in win_main. | |
35 | |
23 } | 36 } |
24 | 37 |
25 return TRUE; | 38 return TRUE; |
26 } | 39 } |
OLD | NEW |