Skip to content

fix(macos): disable Impeller pending upstream crash fix - #107

Merged
AhmedAttia3 merged 2 commits into
mainfrom
fix/macos-impeller-crash-mitigation
Aug 24, 2026
Merged

AhmedAttia3 merged 2 commits into
mainfrom
fix/macos-impeller-crash-mitigation

Conversation

@AhmedAttia3

Copy link
Copy Markdown
Contributor

Problem / Goal

Flutter 3.47 enables Impeller by default on macOS, exposing the open P1 engine crash in flutter/flutter#185394. The failure invalidates a Metal texture when its descriptor size disagrees with the backing texture and can terminate the client during foreground, resize, or window lifecycle transitions.

Technical Changes

  • Set FLTEnableImpeller to false for the macOS Client, restoring the previously used Skia rendering path.
  • Fail the macOS release build if the resolved application plist does not preserve that opt-out.
  • Add a focused regression test for the source plist and release gate.
  • Document the temporary release invariant and the condition for re-enabling Impeller.

Other platforms are unchanged.

Verification

  • plutil -lint macos/Runner/Info.plist
  • bash -n release/macos/build_macos_dmg.sh
  • fvm flutter test test/tool/desktop_window_contract_test.dart — 11 passed
  • fvm flutter analyze — no issues
  • fvm flutter build macos --debug — succeeded
  • Resolved Sanad.app/Contents/Info.plist reports FLTEnableImpeller = false

Follow-up

Run a one-day macOS soak before preparing the patch release. Re-enable Impeller only after an upstream stable engine fix and successful macOS soak verification.

@AhmedAttia3 AhmedAttia3 added release-reviewed Positive authorized review of release, signing, or installer changes and removed release-reviewed Positive authorized review of release, signing, or installer changes labels Aug 24, 2026
@AhmedAttia3
AhmedAttia3 merged commit 5480af7 into main Aug 24, 2026
11 checks passed
@AhmedAttia3
AhmedAttia3 deleted the fix/macos-impeller-crash-mitigation branch August 24, 2026 17:15
AhmedAttia3 added a commit that referenced this pull request Nov 8, 2026
Restore Skia on macOS while flutter/flutter#185394 remains unresolved, enforce the resolved release plist setting, and document the temporary release invariant.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release-reviewed Positive authorized review of release, signing, or installer changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant