Home | History | Annotate | Download | only in chrome_elf
      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
      3 // found in the LICENSE file.
      4 
      5 #include <windows.h>
      6 
      7 #include "chrome_elf/chrome_elf_main.h"
      8 
      9 #include "chrome_elf/blacklist/blacklist.h"
     10 #include "chrome_elf/breakpad.h"
     11 #include "chrome_elf/ntdll_cache.h"
     12 
     13 void SignalChromeElf() {
     14   blacklist::ResetBeacon();
     15 }
     16 
     17 BOOL APIENTRY DllMain(HMODULE module, DWORD reason, LPVOID reserved) {
     18   if (reason == DLL_PROCESS_ATTACH) {
     19     InitializeCrashReporting();
     20 
     21     __try {
     22       InitCache();
     23       blacklist::Initialize(false);  // Don't force, abort if beacon is present.
     24     } __except(GenerateCrashDump(GetExceptionInformation())) {
     25     }
     26   }
     27 
     28   return TRUE;
     29 }
     30