| // Copyright 2016 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 COMPONENTS_CRASH_CONTENT_APP_RUN_AS_CRASHPAD_HANDLER_WIN_H_ |
| #define COMPONENTS_CRASH_CONTENT_APP_RUN_AS_CRASHPAD_HANDLER_WIN_H_ |
| |
| namespace base { |
| class CommandLine; |
| class FilePath; |
| } |
| |
| namespace crash_reporter { |
| |
| // Helper for running an embedded copy of crashpad_handler. Searches for and |
| // removes --(process_type_switch|user_data_dir_switch)=xyz arguments in the |
| // command line, and all options starting with '/' (for "/prefetch:N"), and then |
| // runs crashpad::HandlerMain with the remaining arguments. If user_data_dir is |
| // non-empty, a Crashpad extension to collect stability instrumentation on crash |
| // is used. |
| // |
| // Normally, pass switches::kProcessType and switches::kCrashpadHandler for |
| // process_type_switch and user_data_dir_switch. These are accepted as |
| // parameters because this component does not have access to content/, where |
| // those variables live. |
| int RunAsCrashpadHandler(const base::CommandLine& command_line, |
| const base::FilePath& user_data_dir, |
| const char* process_type_switch, |
| const char* user_data_dir_switch); |
| |
| } // namespace crash_reporter |
| |
| #endif // COMPONENTS_CRASH_CONTENT_APP_RUN_AS_CRASHPAD_HANDLER_WIN_H_ |