-
Notifications
You must be signed in to change notification settings - Fork 65
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PLSRenderContext Crash! #300
Comments
Hi @y-daniel-1113, can you share a reproducible sample with us so we can more quickly investigate this issue? |
@HayesGordon There have been over 8700 crashes in the last month and we are considering returning to Lottie. |
Hi @y-daniel-1113, we'll take a look into this. The crash seems to be related to the Rive renderer. While we work on a fix, a temporary solution is switching from the Rive renderer to one of the others. Skia is currently the default renderer if none is configured manually. In your code where you're specifying the renderer, you can choose RenderContextManager.shared().defaultRenderer = RendererType.skiaRenderer More information can be found here: https://rive.app/community/doc/overview/docD20dU9Rod#specifying-a-renderer |
Hi @y-daniel-1113 , thank you for the crash logs. Based on what we see, I have high confidence that the root issue here has been fixed in version We are currently in the process of deploying device farm testing in order to make sure regressions like this don't happen in the future once we release the Rive renderer by default. |
@csmartdalton We checked the logs for this issue from versions 5.10.0 to 5.11.6. |
During testing, we again confirmed that the app crashed as soon as it was launched.
0 APP 0x25da9c FIRCLSProcessRecordAllThreads + 392 (FIRCLSProcess.c:392) |
Thanks for checking @y-daniel-1113 ! Are you able to provide a .riv file that reproduces the crash? Does Firebase tell you device information that the crash came from? This is currently P0 and I'll keep you posted on our end as we go. |
logo_splash.riv.zip |
@y-daniel-1113 -- we have now finished deploying our device farm golden testing for iOS and I have verified that I am able to render Could you please check Rive 5.14.1 and see if it works for you now? If it does not, would you be open to sharing a compilable code sample that reproduces the issue so we can track it down? |
@csmartdalton We are going to update the app soon |
@y-daniel-1113 Have you seen fewer crash reports with our latest releases? |
A crash occurs when using Rive animation on the splash screen after starting the app.
Rive Version : 5.10.0
Renderer : Rive Renderer
#0 (null) in __pthread_kill ()
#1 (null) in pthread_kill ()
#2 (null) in __abort ()
#3 (null) in abort ()
#4 (null) in abort_message ()
#5 (null) in demangling_terminate_handler() ()
#6 (null) in _objc_terminate() ()
#7 0x0000000104e4e9b4 in FIRCLSTerminateHandler() #8 (null) in std::__terminate(void ()()) ()
#9 (null) in __cxxabiv1::failed_throw(__cxxabiv1::__cxa_exception) ()
#10 (null) in __cxa_throw ()
#11 (null) in std::__1::__throw_system_error(int, char const*) ()
#12 (null) in std::__1::thread::join() ()
#13 (null) in rive::pls::BackgroundShaderCompiler::~BackgroundShaderCompiler() ()
#14 (null) in rive::pls::PLSRenderContextMetalImpl::~PLSRenderContextMetalImpl() ()
#15 (null) in make_pls_context_native(id)::PLSRenderContextNativeImpl::~PLSRenderContextNativeImpl() ()
#16 (null) in rive::pls::PLSRenderContext::~PLSRenderContext() ()
#17 (null) in rive::pls::PLSRenderContext::~PLSRenderContext() ()
#18 (null) in std::__1::unique_ptr<rive::pls::PLSRenderContext, std::__1::default_deleterive::pls::PLSRenderContext >::~unique_ptrabi:v160006 ()
#19 (null) in __cxa_finalize_ranges ()
#20 (null) in exit ()
#21 (null) in rive::pls::BackgroundShaderCompiler::threadMain() ()
#22 (null) in void* std::__1::__thread_proxy[abi:v160006]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_deletestd::__1::__thread_struct >, void (rive::pls::BackgroundShaderC... ()
#23 (null) in _pthread_start ()
#24 (null) in thread_start ()
-case2
#0 (null) in rive::pls::PLSRenderContext::beginFrame(rive::pls::PLSRenderContext::FrameDescriptor const&) ()
#1 (null) in -[RiveRendererContext beginFrame:] ()
#2 (null) in -[RiveRendererView drawRect:] ()
#3 (null) in -[MTKView draw] ()
#4 (null) in CA::Layer::layout_and_display_if_needed(CA::Transaction*) ()
#5 (null) in CA::Context::commit_transaction(CA::Transaction*, double, double*) ()
#6 (null) in CA::Transaction::commit() ()
#7 (null) in CA::Display::DisplayLink::dispatch_items(unsigned long long, unsigned long long, unsigned long long) ()
#8 (null) in CA::Display::DisplayLink::callback(_CADisplayTimer*, unsigned long long, unsigned long long, unsigned long long, bool, void*) ()
#9 (null) in display_timer_callback(__CFMachPort*, void*, long, void*) ()
#10 (null) in __CFMachPortPerform ()
#11 (null) in CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION ()
#12 (null) in __CFRunLoopDoSource1 ()
#13 (null) in __CFRunLoopRun ()
#14 (null) in CFRunLoopRunSpecific ()
#15 (null) in GSEventRunModal ()
#16 (null) in -[UIApplication _run] ()
#17 (null) in UIApplicationMain ()
#18 0x0000000104f490c4
#19 (null) in start ()
-case3
#0 (null) in rive::pls::PLSRenderContext::mapResourceBuffers(rive::pls::PLSRenderContext::ResourceAllocationCounts const&) ()
#1 (null) in rive::pls::PLSRenderContext::mapResourceBuffers(rive::pls::PLSRenderContext::ResourceAllocationCounts const&) ()
#2 (null) in rive::pls::PLSRenderContext::flush(rive::pls::PLSRenderContext::FlushResources const&) ()
#3 (null) in -[RiveRendererContext endFrame] ()
#4 (null) in -[RiveRendererView drawRect:] ()
#5 (null) in -[MTKView draw] ()
#6 (null) in CA::Layer::layout_and_display_if_needed(CA::Transaction*) ()
#7 (null) in CA::Context::commit_transaction(CA::Transaction*, double, double*) ()
#8 (null) in CA::Transaction::commit() ()
#9 (null) in CA::Transaction::flush_as_runloop_observer(bool) ()
#10 (null) in _UIApplicationFlushCATransaction ()
#11 (null) in _UIUpdateSequenceRun ()
#12 (null) in schedulerStepScheduledMainSection ()
#13 (null) in runloopSourceCallback ()
#14 (null) in CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION ()
#15 (null) in __CFRunLoopDoSource0 ()
#16 (null) in __CFRunLoopDoSources0 ()
#17 (null) in __CFRunLoopRun ()
#18 (null) in CFRunLoopRunSpecific ()
#19 (null) in GSEventRunModal ()
#20 (null) in -[UIApplication _run] ()
#21 (null) in UIApplicationMain ()
#22 0x00000001027590c4
#23 (null) in start ()
Fatal Exception: std::__1::system_error
thread::join failed: Resource deadlock avoided
Device & Versions (please complete the following information)
Additional context
Libraries added to the new version: Google Admob & Mediation
The text was updated successfully, but these errors were encountered: