Skip to content

Conversation

@konraddysput
Copy link
Collaborator

Why

This diff replaces the old strategy of using crashpad_handler executable with the new JavaCrashHandler setup. Due to updates to AGP, by default native libraries are not extracted. Because of this, our customers need to use useLegacyPackaging flag to use our NDK support.

To avoid using legacy packaging flags, we wanted to change the way how Crashpad works. Instead of using crashpad_handler executable, this pull request exposes the BacktraceCrashHandler class that will be spawned by app_process when the crash occurs. The class is a wrapper around Crashpad dumping API, that allows us to generate a minidump and send it the same way like crashpad handler would do.

To avoid too big scope of the change, in future pull requests, we want to:

  • fix a problem with invalid guid override API behavior
  • expose JavaCrashHandler under a different method in the crashapd-backend.

@konraddysput konraddysput self-assigned this May 28, 2024
Copy link
Collaborator

@BartoszLitwiniuk BartoszLitwiniuk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

)

* Bring back support for crash_handler.so for backward compatibility

* Change initialization order for libcrashpad_Handler.so

* NFC: formatting
@konraddysput konraddysput merged commit 5f26396 into release-candidate/3.8.3 Jun 4, 2024
@konraddysput konraddysput deleted the improvement/crashpad-crash-handler branch June 4, 2024 14:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants