Skip to content

[Impeller][GLES] Crash on Android: Attempted to acquire an invalid GL handle (reactor_gles.cc(147)) (regression between 3.32.0 and 3.35.x) #176523

Closed

Description

@vinayhvaghamshi

Steps to reproduce

Use Flutter 3.35.x (stable).

Run an app on Android with Impeller enabled (default).

Navigate to a widget tree that uses a Texture/VideoPlayer or otherwise triggers GPU rendering.

App crashes with above error.

Expected results

Impeller GLES should render correctly without crashing.

Actual results

App crashes immediately when Impeller tries to encode GL commands.

Code sample

Code sample
[Paste your code here]

Screenshots or Video

Regression Info

Flutter 3.32.0 → ✅ No crash

Flutter 3.35.5 → ❌ Crash

Flutter Doctor Output (3.35.5 where crash happens)

[✓] Flutter (Channel stable, 3.35.5, on macOS 15.7 24G222 darwin-x64, locale en-US)
    • Flutter version 3.35.5 on channel stable at /Users/vinayhvaghamshi/development/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision ac4e799d23 (2025-09-26 12:05:09 -0700)
    • Engine revision d3d45dcf25
    • Dart version 3.9.2
    • DevTools version 2.48.0


Flutter Doctor Output (3.32.0 where it works fine)

[✓] Flutter (Channel stable, 3.32.0, on macOS 15.7 24G222 darwin-x64, locale en-US)
    • Flutter version 3.32.0 on channel stable at /Users/vinayhvaghamshi/development/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision be698c48a6 (2025-05-19 12:59:14 -0700)
    • Engine revision 1881800949
    • Dart version 3.8.0
    • DevTools version 2.45.1

Logs

On Android, Flutter apps crash when running with Impeller enabled due to an internal GLES rendering failure.

This issue is a regression:

✅ Works fine in Flutter 3.32.0 stable (engine 1881800)

❌ Crashes in Flutter 3.35.5 stable (engine d3d45dc)

Error Logs

E/flutter (12859): [ERROR:flutter/impeller/renderer/backend/gles/reactor_gles.cc(147)] Impeller validation: Attempted to acquire an invalid GL handle.
F/flutter (12859): [FATAL:flutter/impeller/renderer/backend/gles/render_pass_gles.cc(686)] Check failed: result. Must be able to encode GL commands without error.

Flutter Doctor output

[✓] Flutter (Channel stable, 3.35.5, on macOS 15.7 24G222 darwin-x64, locale
    en-US) [549ms]
    • Flutter version 3.35.5 on channel stable at
      /Users/vinayhvaghamshi/development/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision ac4e799d23 (8 days ago), 2025-09-26 12:05:09 -0700
    • Engine revision d3d45dcf25
    • Dart version 3.9.2
    • DevTools version 2.48.0
    • Feature flags: enable-web, enable-linux-desktop, enable-macos-desktop,
      enable-windows-desktop, enable-android, enable-ios, cli-animations,
      enable-lldb-debugging

[✓] Android toolchain - develop for Android devices (Android SDK version 36.1.0)
    [2.5s]
    • Android SDK at /Users/vinayhvaghamshi/Library/Android/sdk
    • Emulator version 36.1.9.0 (build_id 13823996) (CL:N/A)
    • Platform android-36.1, build-tools 36.1.0
    • ANDROID_HOME = /Users/vinayhvaghamshi/Library/Android/sdk
    • ANDROID_SDK_ROOT = /Users/vinayhvaghamshi/Library/Android/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jbr/Contents/Home/bin/java
      This is the JDK bundled with the latest Android Studio installation on
      this machine.
      To manually set the JDK path, use: `flutter config
      --jdk-dir="path/to/jdk"`.
    • Java version OpenJDK Runtime Environment (build 21.0.7+-13880790-b1038.58)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 16.4) [1,577ms]
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 16F6
    • CocoaPods version 1.16.2

[✓] Chrome - develop for the web [55ms]
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2025.1) [54ms]
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 21.0.7+-13880790-b1038.58)

[✓] IntelliJ IDEA Ultimate Edition (version 2025.2) [52ms]
    • IntelliJ at /Applications/IntelliJ IDEA.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] Connected device (3 available) [6.9s]
    • SM M215F (mobile) • RZ8N92L0BSA • android-arm64  • Android 12 (API 31)
    • macOS (desktop)   • macos       • darwin-x64     • macOS 15.7 24G222
      darwin-x64
    • Chrome (web)      • chrome      • web-javascript • Google Chrome
      141.0.7390.54

[✓] Network resources [1,409ms]
    • All expected network resources are available.

• No issues found!

Activity

  1. changed the title [-][Impeller][GLES] Crash on Android: Attempted to acquire an invalid GL handle (regression between 3.32.0 and 3.35.x)[/-] [+][Impeller][GLES] Crash on Android: Attempted to acquire an invalid GL handle (reactor_gles.cc(147) (regression between 3.32.0 and 3.35.x)[/+] on Oct 4, 2025
  2. changed the title [-][Impeller][GLES] Crash on Android: Attempted to acquire an invalid GL handle (reactor_gles.cc(147) (regression between 3.32.0 and 3.35.x)[/-] [+][Impeller][GLES] Crash on Android: Attempted to acquire an invalid GL handle (reactor_gles.cc(147)) (regression between 3.32.0 and 3.35.x)[/+] on Oct 4, 2025
  3. darshankawar commented on Oct 6, 2025

    @darshankawar
    Member

    @vinayhvaghamshi
    Please provide us complete runnable and reproducible code sample that shows the reported behavior. Also provide the device details (make and model) in which this crash occurs.

  4. added
    waiting for responseThe Flutter team cannot make further progress on this issue until the original reporter responds
    on Oct 6, 2025
  5. github-actions commented on Oct 27, 2025

    @github-actions

    Without additional information, we are unfortunately not sure how to resolve this issue. We are therefore reluctantly going to close this bug for now.
    If you find this problem please file a new issue with the same description, what happens, logs and the output of 'flutter doctor -v'. All system setups can be slightly different so it's always better to open new issues and reference the related ones.
    Thanks for your contribution.

  6. github-actions commented on Nov 10, 2025

    @github-actions

    This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

  7. locked as resolved and limited conversation to collaborators on Nov 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    in triagePresently being triaged by the triage teamwaiting for responseThe Flutter team cannot make further progress on this issue until the original reporter responds

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions