-
Notifications
You must be signed in to change notification settings - Fork 222
Open
Labels
Description
Description
My flutter app crashes on Android devices after remaining idle for some time. This happens when I use Factory.rive riveFactor instead of Factory.flutter. I use the feathering features on Rive and it is disabled when I use Factory.flutter.
Steps To Reproduce
Steps to reproduce the behavior:
- Run the app on Android
- Load a rive file that has feathering enabled
- Wait a few seconds
- App will freeze and will be unusuable
Logs
E/flutter (29988): [ERROR:flutter/impeller/renderer/backend/vu
lkan/swapchain/khr/khr_swapchain_impl_vk.cc(483)] Break on
'ImpellerValidationBreak' to inspect point of failure: Could not present
queue: ErrorInitializationFailed
5
E/RiveNative(29988): (12291) EGL_BAD_ALLOC -
../../../../platform/android/rive_native_android.cpp:292
E/ProcessState(29988): readDriverFeatureFile: cannot open
/dev/binderfs/features/extended_error: Too many open files
E/GraphicBufferAllocator(29988): Failed to allocate (273 x 105) layerCount
1 format 1 usage 40000000000300: -129
E/BufferQueueProducer(29988):
[ImageReader-273x105f22m5-29988-36](id:752400000026,api:1,p:29988,c:29988)
dequeueBuffer: createGraphicBuffer failed
E/GraphicBufferAllocator(29988): Failed to allocate (273 x 105) layerCount
1 format 1 usage 40000000000300: -129
E/BufferQueueProducer(29988):
[ImageReader-273x105f22m5-29988-36](id:752400000026,api:1,p:29988,c:29988)
dequeueBuffer: createGraphicBuffer failed
E/RiveNative(29988): (12301) EGL_BAD_SURFACE -
../../../../platform/android/rive_native_android.cpp:292
5
E/RiveNative(29988): (12291) EGL_BAD_ALLOC -
../../../../platform/android/rive_native_android.cpp:292
E/flutter (29988): [ERROR:flutter/impeller/renderer/backend/vulkan/swapcha
in/khr/khr_swapchain_impl_vk.cc(208)] Break on 'ImpellerValidationBreak'
to inspect point of failure: Could not create swapchain:
ErrorNativeWindowInUseKHR
E/Surface (29988): freeAllBuffers: 1 buffers were freed while being
dequeued!
E/flutter (29988): [ERROR:flutter/impeller/renderer/backend/vulkan/swapcha
in/khr/khr_swapchain_vk.cc(73)] Break on 'ImpellerValidationBreak' to
inspect point of failure: Could not update swapchain.
2
E/flutter (29988):
[ERROR:flutter/shell/gpu/gpu_surface_vulkan_impeller.cc(95)] No surface
available.
Expected behavior
- It should not be crashing. The exact file and code works fine on iOS
Device & Versions (please complete the following information)
- Device: Google Pixel 9a
- OS: Android 16
- Flutter Version:
Flutter 3.29.3 • channel [user-branch] • unknown source
Framework • revision ea121f8859 (5 months ago) • 2025-04-11 19:10:07 +0000
Engine • revision cf56914b32
Tools • Dart 3.7.2 • DevTools 2.42.3
- Rive SDK version:
rive: ^0.14.0-dev.6
Additional context
This only happens on Android. It works fine on iOS.
andrewpmoore and InvertedX