mirror of
https://github.com/chromium/crashpad.git
synced 2025-03-09 14:06:33 +00:00
CrashpadClient::DumpAndCrashTargetProcess() suspends the target process and injects a thread to raise an exception. The injected thread is not suspended, and may proceed to the point that the system recognizes the process as terminating by the time the overall process suspension is lifted. Previously, if this happened, an extraneous error was logged for the attempt to resume a terminating process. This introduces “termination tolerance” to ScopedProcessSuspend, which allows an object to be configured to ignore this error and not log any messages when this condition is expected. This resolves log messages such as this one, produced frequently during calls to CrashpadClient::DumpAndCrashTargetProcess() (including in end_to_end_test.py): > [pid:tid:yyyymmdd,hhmmss.mmm:ERROR scoped_process_suspend.cc:39] > NtResumeProcess: An attempt was made to access an exiting process. > (0xc000010a) 0xc000010a = STATUS_PROCESS_IS_TERMINATING Test: end_to_end_test.py Change-Id: Iab4c50fb21adce5502080ad25a6f734ec566d65c Reviewed-on: https://chromium-review.googlesource.com/700715 Commit-Queue: Mark Mentovai <mark@chromium.org> Reviewed-by: Scott Graham <scottmg@chromium.org>
Crashpad
Crashpad is a crash-reporting system.
Documentation
- Project status
- Developing Crashpad: instructions for getting the source code, building, testing, and contributing to the project.
- Crashpad interface documentation
- Crashpad tool man pages
- Crashpad overview design
Source Code
Crashpad’s source code is hosted in a Git repository at https://chromium.googlesource.com/crashpad/crashpad.
Other Links
- Bugs can be reported at the Crashpad issue tracker.
- The Crashpad Buildbots perform automated builds and tests.
- crashpad-dev is the Crashpad developers’ mailing list.
Description
Languages
C++
92.5%
Objective-C++
2.5%
C
2%
Python
1.8%
Assembly
0.9%
Other
0.3%