Revert 269361 "Fix WebURLLoaderImpl::Context leak if a pending r..."
[chromium-blink-merge.git] / components / breakpad / app / hard_error_handler_win.h
blobdaf0482c7b941f812f37448fc08a82aadeca88c7
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.
5 #ifndef COMPONENTS_BREAKPAD_APP_HARD_ERROR_HANDLER_WIN_H_
6 #define COMPONENTS_BREAKPAD_APP_HARD_ERROR_HANDLER_WIN_H_
8 #include <windows.h>
10 namespace breakpad {
12 // This function is in charge of displaying a dialog box that informs the
13 // user of a fatal condition in chrome. It is meant to be called from
14 // breakpad's unhandled exception handler after the crash dump has been
15 // created. The return value will be true if we are to retry launching
16 // chrome (and show the 'chrome has crashed' dialog) or to silently exit.
18 // This function only handles a few known exceptions, currently:
19 // - Failure to load a delayload dll.
20 // - Failure to bind to a delayloaded import.
21 // - Fatal Graphics card failure (aura build only).
23 // If any of these conditions are encountered, a message box shown by
24 // the operating system CSRSS process via NtRaiseHardError is invoked.
25 // The wording and localization is up to the operating system.
27 // Do not call this function for memory related errors like heap corruption
28 // or stack exahustion. This function assumes that memory allocations are
29 // possible.
30 bool HardErrorHandler(EXCEPTION_POINTERS* ex_info);
32 } // namespace breakpad
34 #endif // COMPONENTS_BREAKPAD_APP_HARD_ERROR_HANDLER_WIN_H_