mirror of
https://github.com/chromium/crashpad.git
synced 2025-03-09 14:06:33 +00:00
_dyld_get_all_image_infos() was only used in test code in Crashpad. This addresses two related problems. When running on 10.13 or later, _dyld_get_all_image_infos() is not available. It appears to still be implemented in dyld, but its symbol is now private. This was always known to be an “internal” interface. When it’s not available, fall back to obtaining the address of the process’ dyld_all_image_infos structure by calling task_info(…, TASK_DYLD_INFO, …). Note that this is the same thing that the code being tested does, although the tests are not rendered entirely pointless because the code being tested consumes dyld_all_image_infos through its own implementation of an out-of-process reader interface, while the dyld_all_image_infos data obtained by _dyld_get_all_image_infos() is handled strictly in-process by ordinary memory reads. This is covered by bug 187. When building with the 10.13 SDK, no _dyld_get_all_image_infos symbol is available to link against. In this case, access the symbol strictly at runtime via dlopen() if it may be available, or when expecting to only run on 10.13 and later, don’t even bother looking for this symbol. This is covered by part of bug 188. Bug: crashpad:185, crashpad:187, crashpad:188 Change-Id: Ib283e070faf5d1ec35deee420213b53ec24fb1d3 Reviewed-on: https://chromium-review.googlesource.com/534633 Reviewed-by: Robert Sesek <rsesek@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 Buildbot performs 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%