ios: Don't use POSIX file locks for iOS intermediate dumps.

Instead use a custom mechanism based on the filename. Rather than a
filename of <uuid>, instead name the file <bundle-id>|<uuid>[.locked].
A locked file will have the optional .locked extension. Files can be
unlocked after writing an intermediate dump, or during initialization by
looking for matching bundle-ids.

Clients that call ProcessIntermediateDumps() will clean up any leftover
locked intermediate dumps. Clients that never call
ProcessIntermediateDumps, such as extensions that leave this up to the
main application, will be cleaned up in a followup change.

Bug: crashpad:31
Change-Id: Ifbacf2905136669195ee631460ae004d44c959ca
Reviewed-on: https://chromium-review.googlesource.com/c/crashpad/crashpad/+/3229429
Commit-Queue: Justin Cohen <justincohen@chromium.org>
Reviewed-by: Mark Mentovai <mark@chromium.org>
Reviewed-by: Rohit Rao <rohitrao@chromium.org>
GitOrigin-RevId: c367128a856a7eb161f0db6a5a1dc5c8d9d16cd3
7 files changed
tree: 952e754d720bdaffcb45220a212ac7e5229ce30c
  1. .clang-format
  2. .gitattributes
  3. .gitignore
  4. .gn
  5. .style.yapf
  6. .vpython
  7. AUTHORS
  8. BUILD.gn
  9. CONTRIBUTORS
  10. DEPS
  11. LICENSE
  12. README.md
  13. build/
  14. client/
  15. codereview.settings
  16. compat/
  17. doc/
  18. handler/
  19. infra/
  20. minidump/
  21. navbar.md
  22. package.h
  23. snapshot/
  24. test/
  25. third_party/
  26. tools/
  27. util/
README.md

Crashpad

Crashpad is a crash-reporting system.

Documentation

Source Code

Crashpad’s source code is hosted in a Git repository at https://chromium.googlesource.com/crashpad/crashpad.

Other Links