Skip to content

[iOS] Crash on impeller::HostBuffer::Emplace(void const*, unsigned long, unsigned long) #151084

@tlb-brunoreginato

Description

@tlb-brunoreginato

Steps to reproduce

Unfortunately we couldn't reproduce.

Expected results

Not crash.

Actual results

Crash.

Code sample

Code sample
[Paste your code here]

Screenshots or Video

Screenshots / Video demonstration Screenshot 2024-07-01 at 8 58 05 AM

Logs

Logs
Crashed: SingleEngine.4.raster
0  Flutter                        0x3617d8 impeller::HostBuffer::Emplace(void const*, unsigned long, unsigned long) + 162 (host_buffer.cc:162)
1  Flutter                        0x51e6f8 impeller::RectGeometry::GetPositionBuffer(impeller::ContentContext const&, impeller::Entity const&, impeller::RenderPass&) const + 16 (range.h:16)
2  Flutter                        0x50abbc impeller::SolidColorContents::Render(impeller::ContentContext const&, impeller::Entity const&, impeller::RenderPass&) const + 188 (color_source_contents.h:188)
3  Flutter                        0x5190b0 impeller::EntityPass::RenderElement(impeller::Entity&, unsigned long, impeller::InlinePassContext&, int, impeller::ContentContext&, impeller::EntityPassClipStack&, impeller::TPoint<float>) const + 866 (entity_pass.cc:866)
4  Flutter                        0x517ec0 impeller::EntityPass::OnRender(impeller::ContentContext&, impeller::Capture&, impeller::TSize<long long>, impeller::EntityPassTarget&, impeller::TPoint<float>, impeller::TPoint<float>, unsigned int, impeller::EntityPassClipStack&, unsigned long, std::_fl::shared_ptr<impeller::Contents>, std::_fl::optional<impeller::InlinePassContext::RenderPassResult> const&) const + 1022 (entity_pass.cc:1022)
5  Flutter                        0x4b95b0 impeller::AiksContext::Render(impeller::Picture const&, impeller::RenderTarget&, bool) + 532 (entity_pass.cc:532)
6  Flutter                        0x372390 impeller::Renderer::Render(std::_fl::unique_ptr<impeller::Surface, std::_fl::default_delete<impeller::Surface>>, std::_fl::function<bool (impeller::RenderTarget&)> const&) const + 46 (renderer.cc:46)
7  Flutter                        0x5d17f8 std::_fl::__function::__func<fml::internal::CopyableLambda<flutter::GPUSurfaceMetalImpeller::AcquireFrameFromCAMetalLayer(SkISize const&)::$_0>, std::_fl::allocator<fml::internal::CopyableLambda<flutter::GPUSurfaceMetalImpeller::AcquireFrameFromCAMetalLayer(SkISize const&)::$_0>>, bool (flutter::SurfaceFrame&, flutter::DlCanvas*)>::operator()(flutter::SurfaceFrame&, flutter::DlCanvas*&&) + 169 (gpu_surface_metal_impeller.mm:169)
8  Flutter                        0x4b7fdc flutter::SurfaceFrame::Submit() + 51 (surface_frame.cc:51)
9  Flutter                        0x3f2698 flutter::Rasterizer::DrawToSurfacesUnsafe(flutter::FrameTimingsRecorder&, std::_fl::vector<std::_fl::unique_ptr<flutter::LayerTreeTask, std::_fl::default_delete<flutter::LayerTreeTask>>, std::_fl::allocator<std::_fl::unique_ptr<flutter::LayerTreeTask, std::_fl::default_delete<flutter::LayerTreeTask>>>>) + 763 (rasterizer.cc:763)
10 Flutter                        0x3f2b84 std::_fl::__function::__func<flutter::Rasterizer::DrawToSurfaces(flutter::FrameTimingsRecorder&, std::_fl::vector<std::_fl::unique_ptr<flutter::LayerTreeTask, std::_fl::default_delete<flutter::LayerTreeTask>>, std::_fl::allocator<std::_fl::unique_ptr<flutter::LayerTreeTask, std::_fl::default_delete<flutter::LayerTreeTask>>>>)::$_1, std::_fl::allocator<flutter::Rasterizer::DrawToSurfaces(flutter::FrameTimingsRecorder&, std::_fl::vector<std::_fl::unique_ptr<flutter::LayerTreeTask, std::_fl::default_delete<flutter::LayerTreeTask>>, std::_fl::allocator<std::_fl::unique_ptr<flutter::LayerTreeTask, std::_fl::default_delete<flutter::LayerTreeTask>>>>)::$_1>, void ()>::operator()() + 562 (rasterizer.cc:562)
11 Flutter                        0x2ecec0 fml::SyncSwitch::Execute(fml::SyncSwitch::Handlers const&) const + 29 (shared_mutex.h:29)
12 Flutter                        0x3f1dd0 flutter::Rasterizer::DrawToSurfaces(flutter::FrameTimingsRecorder&, std::_fl::vector<std::_fl::unique_ptr<flutter::LayerTreeTask, std::_fl::default_delete<flutter::LayerTreeTask>>, std::_fl::allocator<std::_fl::unique_ptr<flutter::LayerTreeTask, std::_fl::default_delete<flutter::LayerTreeTask>>>>) + 470 (function.h:470)
13 Flutter                        0x3f3a04 std::_fl::__function::__func<flutter::Rasterizer::Draw(std::_fl::shared_ptr<flutter::Pipeline<flutter::FrameItem>> const&)::$_0, std::_fl::allocator<flutter::Rasterizer::Draw(std::_fl::shared_ptr<flutter::Pipeline<flutter::FrameItem>> const&)::$_0>, void (std::_fl::unique_ptr<flutter::FrameItem, std::_fl::default_delete<flutter::FrameItem>>)>::operator()(std::_fl::unique_ptr<flutter::FrameItem, std::_fl::default_delete<flutter::FrameItem>>&&) + 423 (vector:423)
14 Flutter                        0x3f3220 flutter::Rasterizer::Draw(std::_fl::shared_ptr<flutter::Pipeline<flutter::FrameItem>> const&) + 259 (unique_ptr.h:259)
15 Flutter                        0x40c924 std::_fl::__function::__func<fml::internal::CopyableLambda<flutter::Shell::OnAnimatorDraw(std::_fl::shared_ptr<flutter::Pipeline<flutter::FrameItem>>)::$_0>, std::_fl::allocator<fml::internal::CopyableLambda<flutter::Shell::OnAnimatorDraw(std::_fl::shared_ptr<flutter::Pipeline<flutter::FrameItem>>)::$_0>>, void ()>::operator()() + 1277 (shell.cc:1277)
16 Flutter                        0x2eb47c fml::MessageLoopImpl::FlushTasks(fml::FlushType) + 128 (message_loop_impl.cc:128)
17 Flutter                        0x2ee9f4 fml::MessageLoopDarwin::OnTimerFire(__CFRunLoopTimer*, fml::MessageLoopDarwin*) + 86 (message_loop_darwin.mm:86)
18 CoreFoundation                 0xc1bb0 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 28
19 CoreFoundation                 0x82de4 __CFRunLoopDoTimer + 884
20 CoreFoundation                 0x2c0fc __CFRunLoopDoTimers + 284
21 CoreFoundation                 0x755bc __CFRunLoopRun + 1940
22 CoreFoundation                 0x79d20 CFRunLoopRunSpecific + 584
23 Flutter                        0x2eeae0 fml::MessageLoopDarwin::Run() + 52 (message_loop_darwin.mm:52)
24 Flutter                        0x2ee728 std::_fl::__function::__func<fml::Thread::Thread(std::_fl::function<void (fml::Thread::ThreadConfig const&)> const&, fml::Thread::ThreadConfig const&)::$_0, std::_fl::allocator<fml::Thread::Thread(std::_fl::function<void (fml::Thread::ThreadConfig const&)> const&, fml::Thread::ThreadConfig const&)::$_0>, void ()>::operator()() + 94 (message_loop_impl.cc:94)
25 Flutter                        0x2ee438 fml::ThreadHandle::ThreadHandle(std::_fl::function<void ()>&&)::$_0::__invoke(void*) + 470 (function.h:470)
26 libsystem_pthread.dylib        0x30ec _pthread_start + 116
27 libsystem_pthread.dylib        0x172c thread_start + 8

Flutter Doctor output

Doctor output
[✓] Flutter (Channel stable, 3.22.2, on macOS 14.4.1 23E224 darwin-arm64, locale en-AE)
    • Flutter version 3.22.2 on channel stable at /Users/brunoreginato/fvm/versions/3.22.2
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 761747bfc5 (4 weeks ago), 2024-06-05 22:15:13 +0200
    • Engine revision edd8546116
    • Dart version 3.4.3
    • DevTools version 2.34.3

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Important issues not at the top of the work lista: productionIssues experienced in live production appsc: crashStack traces logged to the consolee: impellerImpeller rendering backend issues and features requestsengineflutter/engine related. See also e: labels.needs repro infoAutomated crash report whose cause isn't yet knownplatform-iosiOS applications specificallyteam-engineOwned by Engine teamtriaged-engineTriaged by Engine team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions