Skip to content

Native crash capture on Windows and Linux #623

Open

Description

@marandaneto

Problem Statement

PR #621 adds Windows/Linux support but explicitly excludes native crash capture. Dart error hooks cannot reliably observe crashes in the Flutter engine, native plugins, or libraries called through dart:ffi when those failures terminate the process before Dart callbacks execute.

Examples include Windows access violations and Linux segmentation faults or aborts. These failures currently have no desktop native crash-reporting path in the SDK. This is a follow-up feature request, not a blocker for the documented scope of #621.

Solution Brainstorm

Add opt-in native crash capture for Flutter applications on Windows and Linux:

  • Integrate platform-appropriate crash collection for supported native engine/plugin/FFI failures.
  • Persist crash records safely and report them on the next launch when immediate delivery is impossible, respecting consent and SDK configuration.
  • Include native stack addresses, matching loaded-image/debug identifiers, and app/build context. Document the required symbol-upload workflow and supported symbol formats for readable stacks.
  • Document limitations clearly; do not promise capture of every process termination, hang, or out-of-memory failure.

Validation

Add native Windows/Linux integration tests that deliberately trigger a crash in a test plugin or FFI library, restart the application, and verify the resulting $exception event. Cover opt-out behavior and release-build symbolication with matching artifacts.

Keep this distinct from Dart exception capture, background-isolate forwarding, and Dart obfuscated-stack support.

Related

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions