| // Copyright 2013 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef CHROME_ELF_CHROME_ELF_MAIN_H_ |
| #define CHROME_ELF_CHROME_ELF_MAIN_H_ |
| |
| // These functions are the cross-module import interface to chrome_elf.dll. |
| // It is used by chrome.exe, chrome.dll and other clients of chrome_elf. |
| // In tests, these functions are stubbed by implementations in |
| // chrome_elf_test_stubs.cc. |
| extern "C" { |
| |
| void DumpProcessWithoutCrash(); |
| |
| // Returns true if |user_data_dir| or |invalid_data_dir| contain data. |
| // This should always be the case in non-test builds. |
| bool GetUserDataDirectoryThunk(wchar_t* user_data_dir, |
| size_t user_data_dir_length, |
| wchar_t* invalid_user_data_dir, |
| size_t invalid_user_data_dir_length); |
| // 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(); |
| void SignalChromeElf(); |
| |
| // Sets the metrics client ID in crash keys. |
| void SetMetricsClientId(const char* client_id); |
| |
| } // extern "C" |
| |
| #endif // CHROME_ELF_CHROME_ELF_MAIN_H_ |