Skip to content

SKWasm renderer. Low-level Runtime Error. The interface blocked completely after 1-2 min on mobile Chrome #182367

Description

@vrubzov1957

Steps to reproduce

  1. Start Flutter app in WEB WASM mode: flutter run -d web-server --wasm
  2. Run testing in mobile browser (google chrome 144.0.7559.132, android 12)
  3. Test my app 1-2 min.
  4. Throw in console "RuntimeError: operation does not support unaligned accesses".
  5. After this we also see many runtime errors like:
  • "RenderBox.size accessed beyond the scope of resize, layout, or permitted parent access. RenderBox can always access its own size, otherwise, the only object that is allowed to read RenderBox.size is its parent, if they have said they will. It you hit this assert trying to access a child's size, pass "parentUsesSize: true" to that child's layout() in RenderTapRegionSurface.performLayout."
  • Out of boundary errors.
  • And other types of errors, because of cascade crush

Before crash App works good, without freezes. After this Runtime error - Interface completely freezes, but main thread works good (other business-logic logs system add to console; and our test js-overlay fps counter, what works in JS in index.html entry point, not freezing and works good)


Memory Profiling Analysis of the UI Freeze

In addition to the runtime errors, we have conducted a memory analysis using the Chrome DevTools Memory profiler, which has revealed a strong correlation between the UI freeze and a specific memory allocation event.

Observations:

At the exact moment the application's UI becomes unresponsive, we observe a sudden and significant memory allocation.

  1. Large Memory Spike: A SharedArrayBuffer constructor (e.g., SharedArrayBuffer@4299775) abruptly allocates approximately 30 MB of memory. This is a major anomaly, as other object allocations are typically orders of magnitude smaller (usually less than 500 KB each).

  2. Persistent Allocation: This ~30 MB memory block is not released and is held for the duration of the freeze. The memory profiler indicates it is retained in the heap.

  3. Difficulty with Inspection: When inspecting the heap snapshot, tracing the origin of this SharedArrayBuffer back to our Dart code is challenging. The object's property tree contains low-level, internal references that do not map directly to our application logic. These references include:

    • backing_store::system / JSArrayBufferData@4320355
    • map::system / Map@414411
    • prototype::SharedArrayBuffer@843133
    • constructor::SharedArrayBuffer()@843109

Hypothesis:

We suspect that the UI freeze is triggered by a low-level operation within the Flutter Web engine (likely the SKWasm renderer) that allocates a large SharedArrayBuffer for a rendering task (such as handling a large texture, complex shader, or render target). A subsequent error, possibly one of the RuntimeError exceptions seen in the console, occurs during or after this allocation, leaving the memory allocated but preventing the rendering engine from completing the frame, thus freezing the UI.

Here heaptimeline dump (you can see when freezed - after 2.3 min of work we have big 30MB SharedArrayBuffer object):
https://drive.google.com/file/d/1PVo4mU-6eEkWNzldF13rQvfruyVdfB77/view?usp=sharing

Expected results

App works without total freezing interface

Actual results

App every time get total freezing interface after 1-2 min works

Code sample

Code sample
(not dart code, mostly in https://www.gstatic.com/flutter-canvaskit/3452d735bd38224ef2db85ca763d862d6326b17f/skwasm_heavy.wasm)

Screenshots or Video

Screenshots / Video demonstration

[Upload media here]

Logs

Logs
14:41:08 | DEBUG   | Router   | 🔀 ROUTER REDIRECT: status=AuthStatus.authenticated, isAuth=true, path=/, isAuthRoute=false
skwasm_heavy.wasm:0xc7b92 Uncaught RuntimeError: operation does not support unaligned accesses
    at skwasm_heavy.wasm:0xc7b92
    at skwasm_heavy.wasm:0x806cf
    at skwasm_heavy.wasm:0x17741
    at skwasm_heavy.wasm:0x7f644
    at skwasm_heavy.wasm:0xb6b6c
    at skwasm_heavy.wasm:0x12e0d6
    at skwasm_heavy.wasm:0x12e044
    at skwasm_heavy.wasm:0x1342b2
    at skwasm_heavy.wasm:0x312762
    at skwasm_heavy.wasm:0x181ca
$func3926 @ skwasm_heavy.wasm:0xc7b92
$func2710 @ skwasm_heavy.wasm:0x806cf
$func470 @ skwasm_heavy.wasm:0x17741
$func2676 @ skwasm_heavy.wasm:0x7f644
$func3632 @ skwasm_heavy.wasm:0xb6b6c
$func5550 @ skwasm_heavy.wasm:0x12e0d6
$func5548 @ skwasm_heavy.wasm:0x12e044
$func5695 @ skwasm_heavy.wasm:0x1342b2
$func13045 @ skwasm_heavy.wasm:0x312762
$func490 @ skwasm_heavy.wasm:0x181ca
$func490 @ skwasm_heavy.wasm:0x181b0
$func490 @ skwasm_heavy.wasm:0x185e5
$func490 @ skwasm_heavy.wasm:0x185e5
$func1992 @ skwasm_heavy.wasm:0x5af32
$func10059 @ skwasm_heavy.wasm:0x268e47
$func2716 @ skwasm_heavy.wasm:0x808be
$func7693 @ skwasm_heavy.wasm:0x1d3326
$func4440 @ skwasm_heavy.wasm:0xed127
$func13934 @ skwasm_heavy.wasm:0x334722
$func4893 @ skwasm_heavy.wasm:0x1099c2
$func4893 @ skwasm_heavy.wasm:0x10991e
$func4893 @ skwasm_heavy.wasm:0x10991e
$func4893 @ skwasm_heavy.wasm:0x10991e
$func4893 @ skwasm_heavy.wasm:0x10991e
$func8800 @ skwasm_heavy.wasm:0x224009
$func8826 @ skwasm_heavy.wasm:0x22944a
$func14080 @ skwasm_heavy.wasm:0x338379
$func468 @ skwasm_heavy.wasm:0x1721d
$func14410 @ skwasm_heavy.wasm:0x348a4f
$func6172 @ skwasm_heavy.wasm:0x14e490
$func4944 @ skwasm_heavy.wasm:0x10db55
$func2106 @ skwasm_heavy.wasm:0x6035c
$func8875 @ skwasm_heavy.wasm:0x22b94a
$func12395 @ skwasm_heavy.wasm:0x2f0009
$surface_renderPicturesOnWorker @ skwasm_heavy.wasm:0x256458
(anonymous) @ skwasm_heavy.js:33
(anonymous) @ skwasm_heavy.js:32
requestAnimationFrame
_694 @ main.dart.mjs:189
$DomWindow|requestAnimationFrame @ main.dart.wasm:0x3f57a1
$FrameService.scheduleFrame @ frame_service.dart:91
$EnginePlatformDispatcher.scheduleFrame @ platform_dispatcher.dart:693
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.scheduleFrame @ binding.dart:957
$Ticker.scheduleTick @ ticker.dart:296
$Ticker._tick @ ticker.dart:282
$Ticker._tick tear-off trampoline @ main.dart.wasm:0x42688b
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._invokeFrameCallback @ binding.dart:1430
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 @ binding.dart:1263
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 trampoline @ main.dart.wasm:0x3f64eb
$_DefaultMap&_HashFieldBase&MapMixin&_HashBase&_OperatorEqualsAndHashCode&_LinkedHashMapMixin.forEach @ compact_hash.dart:682
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame @ binding.dart:1261
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame @ binding.dart:1177
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame tear-off trampoline @ main.dart.wasm:0x3f61b4
$invoke1 @ platform_dispatcher.dart:1704
$EnginePlatformDispatcher.invokeOnBeginFrame @ platform_dispatcher.dart:242
$FrameService._renderFrame @ frame_service.dart:190
$FrameService.scheduleFrame closure at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 @ frame_service.dart:117
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 trampoline @ main.dart.wasm:0x3f577e
$_RootZone.runUnary @ zone.dart:962
$_RootZone.bindUnaryCallback closure at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 @ zone.dart:917
$closure wrapper at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 trampoline @ main.dart.wasm:0x36e438
$_693 @ main.dart.wasm:0x3f5843
(anonymous) @ main.dart.mjs:188
requestAnimationFrame
_694 @ main.dart.mjs:189
$DomWindow|requestAnimationFrame @ main.dart.wasm:0x3f57a1
$FrameService.scheduleFrame @ frame_service.dart:91
$EnginePlatformDispatcher.scheduleFrame @ platform_dispatcher.dart:693
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.scheduleFrame @ binding.dart:957
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.ensureVisualUpdate @ binding.dart:910
$_BindingPipelineManifold.requestVisualUpdate @ binding.dart:829
$PipelineOwner.requestVisualUpdate @ object.dart:1072
$RenderObject.markNeedsLayout @ object.dart:2536
$RenderBox.markNeedsLayout @ box.dart:2860
$RenderBox.markNeedsLayout tear-off trampoline @ main.dart.wasm:0x5ca849
$ChangeNotifier.notifyListeners @ change_notifier.dart:432
$ScrollPosition.notifyListeners @ scroll_position.dart:1123
$ScrollPosition.setPixels @ scroll_position.dart:392
$ScrollPositionWithSingleContext.setPixels @ scroll_position_with_single_context.dart:87
$ScrollPositionWithSingleContext.applyUserOffset @ scroll_position_with_single_context.dart:131
$ScrollDragController.update @ scroll_activity.dart:415
$ScrollableState._handleDragUpdate @ scrollable.dart:884
$ScrollableState._handleDragUpdate tear-off trampoline @ main.dart.wasm:0x959606
$DragGestureRecognizer._checkUpdate closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/gestures/monodrag.dart:871:40 @ monodrag.dart:871
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/gestures/monodrag.dart:871:40 trampoline @ main.dart.wasm:0x5c7749
$GestureRecognizer.invokeCallback @ recognizer.dart:345
$DragGestureRecognizer._checkUpdate @ monodrag.dart:871
$DragGestureRecognizer.handleEvent @ monodrag.dart:713
$DragGestureRecognizer.handleEvent tear-off trampoline @ main.dart.wasm:0x5c6dd3
$PointerRouter._dispatch @ pointer_router.dart:97
$PointerRouter._dispatchEventToRoutes closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/gestures/pointer_router.dart:138:26 @ pointer_router.dart:140
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/gestures/pointer_router.dart:138:26 trampoline @ main.dart.wasm:0x3ef066
$_DefaultMap&_HashFieldBase&MapMixin&_HashBase&_OperatorEqualsAndHashCode&_LinkedHashMapMixin.forEach @ compact_hash.dart:682
$PointerRouter._dispatchEventToRoutes @ pointer_router.dart:138
$PointerRouter.route @ pointer_router.dart:128
$_MixinApplication192&BindingBase&GestureBinding.handleEvent @ binding.dart:528
$_MixinApplication192&BindingBase&GestureBinding.dispatchEvent @ binding.dart:498
$_MixinApplication197&BindingBase&GestureBinding&SchedulerBinding&ServicesBinding&PaintingBinding&SemanticsBinding&RendererBinding.dispatchEvent @ binding.dart:473
$_MixinApplication192&BindingBase&GestureBinding._handlePointerEventImmediately @ binding.dart:437
$_MixinApplication192&BindingBase&GestureBinding.handlePointerEvent @ binding.dart:394
$_MixinApplication192&BindingBase&GestureBinding._flushPointerEventQueue @ binding.dart:341
$_MixinApplication192&BindingBase&GestureBinding._handlePointerDataPacket @ binding.dart:308
$_MixinApplication192&BindingBase&GestureBinding._handlePointerDataPacket tear-off trampoline @ main.dart.wasm:0x98beb6
$invoke1 @ platform_dispatcher.dart:1704
$EnginePlatformDispatcher.invokeOnPointerDataPacket @ platform_dispatcher.dart:292
$ClickDebouncer._sendToFramework @ pointer_binding.dart:451
$ClickDebouncer.onPointerData @ pointer_binding.dart:233
$_PointerAdapter.setup closure at org-dartlang-sdk:///lib/_engine/engine/pointer_binding.dart:1016:60 @ pointer_binding.dart:1043
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/pointer_binding.dart:1016:60 trampoline @ main.dart.wasm:0x3966c6
$_PointerAdapter._addPointerEventListener closure at org-dartlang-sdk:///lib/_engine/engine/pointer_binding.dart:948:41 @ pointer_binding.dart:953
$_BaseAdapter.addEventListener closure loggedHandler at org-dartlang-sdk:///lib/_engine/engine/pointer_binding.dart:558:23 @ pointer_binding.dart:576
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/pointer_binding.dart:558:23 trampoline @ main.dart.wasm:0x39693a
$_RootZone.runUnary @ zone.dart:962
$_RootZone.bindUnaryCallback closure at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 @ zone.dart:917
$closure wrapper at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 trampoline @ main.dart.wasm:0x36e438
$_734 @ main.dart.wasm:0x36e3c3
(anonymous) @ main.dart.mjs:216Understand this error
skwasm_heavy.wasm:0xcfdc6 Uncaught RuntimeError: function signature mismatch
    at skwasm_heavy.wasm:0xcfdc6
    at skwasm_heavy.wasm:0x2d06fc
    at skwasm_heavy.wasm:0xcfdc6
    at skwasm_heavy.wasm:0x2d06fc
    at skwasm_heavy.wasm:0xcfdc6
    at skwasm_heavy.wasm:0xcfd3a
    at skwasm_heavy.wasm:0x18b2d0
    at skwasm_heavy.wasm:0x1abc8f
    at skwasm_heavy.wasm:0x8d3e9
    at skwasm_heavy.wasm:0x2f4dd7
$func4069 @ skwasm_heavy.wasm:0xcfdc6
$func11794 @ skwasm_heavy.wasm:0x2d06fc
$func4069 @ skwasm_heavy.wasm:0xcfdc6
$func11794 @ skwasm_heavy.wasm:0x2d06fc
$func4069 @ skwasm_heavy.wasm:0xcfdc6
$func4068 @ skwasm_heavy.wasm:0xcfd3a
$func6739 @ skwasm_heavy.wasm:0x18b2d0
$func7173 @ skwasm_heavy.wasm:0x1abc8f
$func2915 @ skwasm_heavy.wasm:0x8d3e9
$func12467 @ skwasm_heavy.wasm:0x2f4dd7
$func12464 @ skwasm_heavy.wasm:0x2f3a37
$func9964 @ skwasm_heavy.wasm:0x26767d
$func2717 @ skwasm_heavy.wasm:0x808da
$func9961 @ skwasm_heavy.wasm:0x265ae6
$func5615 @ skwasm_heavy.wasm:0x12fdc8
$func9958 @ skwasm_heavy.wasm:0x2657ea
$func10214 @ skwasm_heavy.wasm:0x273ca7
$paragraph_layout @ skwasm_heavy.wasm:0x2bb1e1
$paragraphLayout @ main.dart.wasm:0x438f90
$SkwasmParagraph.layout @ paragraph.dart:131
$TextPainter.layout @ text_painter.dart:1265
$RenderParagraph._layoutTextWithConstraints @ paragraph.dart:852
$RenderParagraph.performLayout @ paragraph.dart:915
$RenderObject.layout @ object.dart:2768
$RenderPadding.performLayout @ shifted_box.dart:262
$RenderObject.layout @ object.dart:2768
$_MixinApplication7&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout @ proxy_box.dart:118
$RenderObject.layout @ object.dart:2768
$_MixinApplication7&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout @ proxy_box.dart:118
$RenderObject.layout @ object.dart:2768
$RenderSliverMultiBoxAdaptor.insertAndLayoutChild @ sliver_multi_box_adaptor.dart:520
$RenderSliverList.performLayout closure advance at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/rendering/sliver_list.dart:223:17 @ sliver_list.dart:238
$RenderSliverList.performLayout @ sliver_list.dart:278
$RenderObject.layout @ object.dart:2768
$RenderSliverEdgeInsetsPadding.performLayout @ sliver_padding.dart:133
$RenderSliverPadding.performLayout @ sliver_padding.dart:368
$RenderObject.layout @ object.dart:2768
$RenderViewportBase.layoutChildSequence @ viewport.dart:673
$RenderViewport._attemptLayout @ viewport.dart:1684
$RenderViewport.performLayout @ viewport.dart:1575
$RenderObject._layoutWithoutResize @ object.dart:2616
$PipelineOwner.flushLayout @ object.dart:1174
$PipelineOwner.flushLayout @ object.dart:1187
$_MixinApplication197&BindingBase&GestureBinding&SchedulerBinding&ServicesBinding&PaintingBinding&SemanticsBinding&RendererBinding.drawFrame @ binding.dart:629
$_MixinApplication198&BindingBase&GestureBinding&SchedulerBinding&ServicesBinding&PaintingBinding&SemanticsBinding&RendererBinding&WidgetsBinding.drawFrame @ binding.dart:1304
$_MixinApplication197&BindingBase&GestureBinding&SchedulerBinding&ServicesBinding&PaintingBinding&SemanticsBinding&RendererBinding._handlePersistentFrameCallback @ binding.dart:495
$_MixinApplication197&BindingBase&GestureBinding&SchedulerBinding&ServicesBinding&PaintingBinding&SemanticsBinding&RendererBinding._handlePersistentFrameCallback tear-off trampoline @ main.dart.wasm:0x9631ff
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._invokeFrameCallback @ binding.dart:1430
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleDrawFrame @ binding.dart:1345
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleDrawFrame @ binding.dart:1198
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleDrawFrame tear-off trampoline @ main.dart.wasm:0x3f5b89
$invoke @ platform_dispatcher.dart:1689
$EnginePlatformDispatcher.invokeOnDrawFrame @ platform_dispatcher.dart:265
$FrameService._renderFrame @ frame_service.dart:209
$FrameService.scheduleFrame closure at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 @ frame_service.dart:117
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 trampoline @ main.dart.wasm:0x3f577e
$_RootZone.runUnary @ zone.dart:962
$_RootZone.bindUnaryCallback closure at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 @ zone.dart:917
$closure wrapper at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 trampoline @ main.dart.wasm:0x36e438
$_693 @ main.dart.wasm:0x3f5843
(anonymous) @ main.dart.mjs:188
requestAnimationFrame
_694 @ main.dart.mjs:189
$DomWindow|requestAnimationFrame @ main.dart.wasm:0x3f57a1
$FrameService.scheduleFrame @ frame_service.dart:91
$EnginePlatformDispatcher.scheduleFrame @ platform_dispatcher.dart:693
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.scheduleFrame @ binding.dart:957
$Ticker.scheduleTick @ ticker.dart:296
$Ticker._tick @ ticker.dart:282
$Ticker._tick tear-off trampoline @ main.dart.wasm:0x42688b
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._invokeFrameCallback @ binding.dart:1430
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 @ binding.dart:1263
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 trampoline @ main.dart.wasm:0x3f64eb
$_DefaultMap&_HashFieldBase&MapMixin&_HashBase&_OperatorEqualsAndHashCode&_LinkedHashMapMixin.forEach @ compact_hash.dart:682
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame @ binding.dart:1261
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame @ binding.dart:1177
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame tear-off trampoline @ main.dart.wasm:0x3f61b4
$invoke1 @ platform_dispatcher.dart:1704
$EnginePlatformDispatcher.invokeOnBeginFrame @ platform_dispatcher.dart:242
$FrameService._renderFrame @ frame_service.dart:190
$FrameService.scheduleFrame closure at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 @ frame_service.dart:117
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 trampoline @ main.dart.wasm:0x3f577e
$_RootZone.runUnary @ zone.dart:962
$_RootZone.bindUnaryCallback closure at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 @ zone.dart:917
$closure wrapper at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 trampoline @ main.dart.wasm:0x36e438
$_693 @ main.dart.wasm:0x3f5843
(anonymous) @ main.dart.mjs:188
requestAnimationFrame
_694 @ main.dart.mjs:189
$DomWindow|requestAnimationFrame @ main.dart.wasm:0x3f57a1
$FrameService.scheduleFrame @ frame_service.dart:91
$EnginePlatformDispatcher.scheduleFrame @ platform_dispatcher.dart:693
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.scheduleFrame @ binding.dart:957
$Ticker.scheduleTick @ ticker.dart:296
$Ticker._tick @ ticker.dart:282
$Ticker._tick tear-off trampoline @ main.dart.wasm:0x42688b
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._invokeFrameCallback @ binding.dart:1430
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 @ binding.dart:1263
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 trampoline @ main.dart.wasm:0x3f64eb
$_DefaultMap&_HashFieldBase&MapMixin&_HashBase&_OperatorEqualsAndHashCode&_LinkedHashMapMixin.forEach @ compact_hash.dart:682
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame @ binding.dart:1261
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame @ binding.dart:1177
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame tear-off trampoline @ main.dart.wasm:0x3f61b4
$invoke1 @ platform_dispatcher.dart:1704
$EnginePlatformDispatcher.invokeOnBeginFrame @ platform_dispatcher.dart:242
$FrameService._renderFrame @ frame_service.dart:190
$FrameService.scheduleFrame closure at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 @ frame_service.dart:117
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 trampoline @ main.dart.wasm:0x3f577e
$_RootZone.runUnary @ zone.dart:962
$_RootZone.bindUnaryCallback closure at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 @ zone.dart:917
$closure wrapper at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 trampoline @ main.dart.wasm:0x36e438
$_693 @ main.dart.wasm:0x3f5843
(anonymous) @ main.dart.mjs:188
requestAnimationFrame
_694 @ main.dart.mjs:189
$DomWindow|requestAnimationFrame @ main.dart.wasm:0x3f57a1
$FrameService.scheduleFrame @ frame_service.dart:91
$EnginePlatformDispatcher.scheduleFrame @ platform_dispatcher.dart:693
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.scheduleFrame @ binding.dart:957
$Ticker.scheduleTick @ ticker.dart:296
$Ticker._tick @ ticker.dart:282
$Ticker._tick tear-off trampoline @ main.dart.wasm:0x42688b
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._invokeFrameCallback @ binding.dart:1430
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 @ binding.dart:1263
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 trampoline @ main.dart.wasm:0x3f64eb
$_DefaultMap&_HashFieldBase&MapMixin&_HashBase&_OperatorEqualsAndHashCode&_LinkedHashMapMixin.forEach @ compact_hash.dart:682
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame @ binding.dart:1261
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame @ binding.dart:1177
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame tear-off trampoline @ main.dart.wasm:0x3f61b4
$invoke1 @ platform_dispatcher.dart:1704
$EnginePlatformDispatcher.invokeOnBeginFrame @ platform_dispatcher.dart:242
$FrameService._renderFrame @ frame_service.dart:190
$FrameService.scheduleFrame closure at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 @ frame_service.dart:117
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 trampoline @ main.dart.wasm:0x3f577e
$_RootZone.runUnary @ zone.dart:962
$_RootZone.bindUnaryCallback closure at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 @ zone.dart:917
$closure wrapper at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 trampoline @ main.dart.wasm:0x36e438
$_693 @ main.dart.wasm:0x3f5843
(anonymous) @ main.dart.mjs:188
requestAnimationFrame
_694 @ main.dart.mjs:189
$DomWindow|requestAnimationFrame @ main.dart.wasm:0x3f57a1
$FrameService.scheduleFrame @ frame_service.dart:91
$EnginePlatformDispatcher.scheduleFrame @ platform_dispatcher.dart:693
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.scheduleFrame @ binding.dart:957
$Ticker.scheduleTick @ ticker.dart:296
$Ticker._tick @ ticker.dart:282
$Ticker._tick tear-off trampoline @ main.dart.wasm:0x42688b
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._invokeFrameCallback @ binding.dart:1430
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 @ binding.dart:1263
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 trampoline @ main.dart.wasm:0x3f64eb
$_DefaultMap&_HashFieldBase&MapMixin&_HashBase&_OperatorEqualsAndHashCode&_LinkedHashMapMixin.forEach @ compact_hash.dart:682
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame @ binding.dart:1261
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame @ binding.dart:1177
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame tear-off trampoline @ main.dart.wasm:0x3f61b4
$invoke1 @ platform_dispatcher.dart:1704
$EnginePlatformDispatcher.invokeOnBeginFrame @ platform_dispatcher.dart:242
$FrameService._renderFrame @ frame_service.dart:190
$FrameService.scheduleFrame closure at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 @ frame_service.dart:117
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 trampoline @ main.dart.wasm:0x3f577e
$_RootZone.runUnary @ zone.dart:962
$_RootZone.bindUnaryCallback closure at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 @ zone.dart:917
$closure wrapper at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 trampoline @ main.dart.wasm:0x36e438
$_693 @ main.dart.wasm:0x3f5843
(anonymous) @ main.dart.mjs:188
requestAnimationFrame
_694 @ main.dart.mjs:189
$DomWindow|requestAnimationFrame @ main.dart.wasm:0x3f57a1
$FrameService.scheduleFrame @ frame_service.dart:91
$EnginePlatformDispatcher.scheduleFrame @ platform_dispatcher.dart:693
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.scheduleFrame @ binding.dart:957
$Ticker.scheduleTick @ ticker.dart:296
$Ticker._tick @ ticker.dart:282
$Ticker._tick tear-off trampoline @ main.dart.wasm:0x42688b
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._invokeFrameCallback @ binding.dart:1430
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 @ binding.dart:1263
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 trampoline @ main.dart.wasm:0x3f64eb
$_DefaultMap&_HashFieldBase&MapMixin&_HashBase&_OperatorEqualsAndHashCode&_LinkedHashMapMixin.forEach @ compact_hash.dart:682
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame @ binding.dart:1261
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame @ binding.dart:1177
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame tear-off trampoline @ main.dart.wasm:0x3f61b4
$invoke1 @ platform_dispatcher.dart:1704
$EnginePlatformDispatcher.invokeOnBeginFrame @ platform_dispatcher.dart:242
$FrameService._renderFrame @ frame_service.dart:190
$FrameService.scheduleFrame closure at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 @ frame_service.dart:117
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 trampoline @ main.dart.wasm:0x3f577e
$_RootZone.runUnary @ zone.dart:962
$_RootZone.bindUnaryCallback closure at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 @ zone.dart:917
$closure wrapper at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 trampoline @ main.dart.wasm:0x36e438
$_693 @ main.dart.wasm:0x3f5843
(anonymous) @ main.dart.mjs:188
requestAnimationFrame
_694 @ main.dart.mjs:189
$DomWindow|requestAnimationFrame @ main.dart.wasm:0x3f57a1
$FrameService.scheduleFrame @ frame_service.dart:91
$EnginePlatformDispatcher.scheduleFrame @ platform_dispatcher.dart:693
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.scheduleFrame @ binding.dart:957
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.ensureVisualUpdate @ binding.dart:910
$_BindingPipelineManifold.requestVisualUpdate @ binding.dart:829
$PipelineOwner.requestVisualUpdate @ object.dart:1072
$RenderObject.markNeedsLayout @ object.dart:2536
$RenderBox.markNeedsLayout @ box.dart:2860
$RenderBox.markNeedsLayout tear-off trampoline @ main.dart.wasm:0x5ca849
$ChangeNotifier.notifyListeners @ change_notifier.dart:432
$ScrollPosition.notifyListeners @ scroll_position.dart:1123
$ScrollPosition.setPixels @ scroll_position.dart:392
$ScrollPositionWithSingleContext.setPixels @ scroll_position_with_single_context.dart:87
$ScrollPositionWithSingleContext.applyUserOffset @ scroll_position_with_single_context.dart:131
$ScrollDragController.update @ scroll_activity.dart:415
$ScrollableState._handleDragUpdate @ scrollable.dart:884
$ScrollableState._handleDragUpdate tear-off trampoline @ main.dart.wasm:0x959606
$DragGestureRecognizer._checkUpdate closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/gestures/monodrag.dart:871:40 @ monodrag.dart:871
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/gestures/monodrag.dart:871:40 trampoline @ main.dart.wasm:0x5c7749
$GestureRecognizer.invokeCallback @ recognizer.dart:345
$DragGestureRecognizer._checkUpdate @ monodrag.dart:871
$DragGestureRecognizer.handleEvent @ monodrag.dart:713
$DragGestureRecognizer.handleEvent tear-off trampoline @ main.dart.wasm:0x5c6dd3
$PointerRouter._dispatch @ pointer_router.dart:97
$PointerRouter._dispatchEventToRoutes closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/gestures/pointer_router.dart:138:26 @ pointer_router.dart:140
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/gestures/pointer_router.dart:138:26 trampoline @ main.dart.wasm:0x3ef066
$_DefaultMap&_HashFieldBase&MapMixin&_HashBase&_OperatorEqualsAndHashCode&_LinkedHashMapMixin.forEach @ compact_hash.dart:682
$PointerRouter._dispatchEventToRoutes @ pointer_router.dart:138
$PointerRouter.route @ pointer_router.dart:128
$_MixinApplication192&BindingBase&GestureBinding.handleEvent @ binding.dart:528
$_MixinApplication192&BindingBase&GestureBinding.dispatchEvent @ binding.dart:498
$_MixinApplication197&BindingBase&GestureBinding&SchedulerBinding&ServicesBinding&PaintingBinding&SemanticsBinding&RendererBinding.dispatchEvent @ binding.dart:473
$_MixinApplication192&BindingBase&GestureBinding._handlePointerEventImmediately @ binding.dart:437
$_MixinApplication192&BindingBase&GestureBinding.handlePointerEvent @ binding.dart:394
$_MixinApplication192&BindingBase&GestureBinding._flushPointerEventQueue @ binding.dart:341
$_MixinApplication192&BindingBase&GestureBinding._handlePointerDataPacket @ binding.dart:308
$_MixinApplication192&BindingBase&GestureBinding._handlePointerDataPacket tear-off trampoline @ main.dart.wasm:0x98beb6
$invoke1 @ platform_dispatcher.dart:1704
$EnginePlatformDispatcher.invokeOnPointerDataPacket @ platform_dispatcher.dart:292
$ClickDebouncer._sendToFramework @ pointer_binding.dart:451
$ClickDebouncer.onPointerData @ pointer_binding.dart:233
$_PointerAdapter.setup closure at org-dartlang-sdk:///lib/_engine/engine/pointer_binding.dart:1016:60 @ pointer_binding.dart:1043
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/pointer_binding.dart:1016:60 trampoline @ main.dart.wasm:0x3966c6
$_PointerAdapter._addPointerEventListener closure at org-dartlang-sdk:///lib/_engine/engine/pointer_binding.dart:948:41 @ pointer_binding.dart:953
$_BaseAdapter.addEventListener closure loggedHandler at org-dartlang-sdk:///lib/_engine/engine/pointer_binding.dart:558:23 @ pointer_binding.dart:576
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/pointer_binding.dart:558:23 trampoline @ main.dart.wasm:0x39693a
$_RootZone.runUnary @ zone.dart:962
$_RootZone.bindUnaryCallback closure at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 @ zone.dart:917
$closure wrapper at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 trampoline @ main.dart.wasm:0x36e438
$_734 @ main.dart.wasm:0x36e3c3
(anonymous) @ main.dart.mjs:216Understand this error
errors_patch.dart:39 Uncaught Exception {}
$Error._throw @ errors_patch.dart:39
$Error._throwWithCurrentStackTrace @ errors_patch.dart:19
$AssertionError._throwWithMessage @ errors_patch.dart:269
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame @ binding.dart:1253
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame @ binding.dart:1177
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame tear-off trampoline @ main.dart.wasm:0x3f61b4
$invoke1 @ platform_dispatcher.dart:1704
$EnginePlatformDispatcher.invokeOnBeginFrame @ platform_dispatcher.dart:242
$FrameService._renderFrame @ frame_service.dart:190
$FrameService.scheduleFrame closure at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 @ frame_service.dart:117
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 trampoline @ main.dart.wasm:0x3f577e
$_RootZone.runUnary @ zone.dart:962
$_RootZone.bindUnaryCallback closure at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 @ zone.dart:917
$closure wrapper at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 trampoline @ main.dart.wasm:0x36e438
$_693 @ main.dart.wasm:0x3f5843
(anonymous) @ main.dart.mjs:188
requestAnimationFrame
_694 @ main.dart.mjs:189
$DomWindow|requestAnimationFrame @ main.dart.wasm:0x3f57a1
$FrameService.scheduleFrame @ frame_service.dart:91
$EnginePlatformDispatcher.scheduleFrame @ platform_dispatcher.dart:693
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.scheduleFrame @ binding.dart:957
$Ticker.scheduleTick @ ticker.dart:296
$Ticker._tick @ ticker.dart:282
$Ticker._tick tear-off trampoline @ main.dart.wasm:0x42688b
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._invokeFrameCallback @ binding.dart:1430
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 @ binding.dart:1263
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 trampoline @ main.dart.wasm:0x3f64eb
$_DefaultMap&_HashFieldBase&MapMixin&_HashBase&_OperatorEqualsAndHashCode&_LinkedHashMapMixin.forEach @ compact_hash.dart:682
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame @ binding.dart:1261
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame @ binding.dart:1177
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame tear-off trampoline @ main.dart.wasm:0x3f61b4
$invoke1 @ platform_dispatcher.dart:1704
$EnginePlatformDispatcher.invokeOnBeginFrame @ platform_dispatcher.dart:242
$FrameService._renderFrame @ frame_service.dart:190
$FrameService.scheduleFrame closure at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 @ frame_service.dart:117
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 trampoline @ main.dart.wasm:0x3f577e
$_RootZone.runUnary @ zone.dart:962
$_RootZone.bindUnaryCallback closure at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 @ zone.dart:917
$closure wrapper at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 trampoline @ main.dart.wasm:0x36e438
$_693 @ main.dart.wasm:0x3f5843
(anonymous) @ main.dart.mjs:188
requestAnimationFrame
_694 @ main.dart.mjs:189
$DomWindow|requestAnimationFrame @ main.dart.wasm:0x3f57a1
$FrameService.scheduleFrame @ frame_service.dart:91
$EnginePlatformDispatcher.scheduleFrame @ platform_dispatcher.dart:693
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.scheduleFrame @ binding.dart:957
$Ticker.scheduleTick @ ticker.dart:296
$Ticker._tick @ ticker.dart:282
$Ticker._tick tear-off trampoline @ main.dart.wasm:0x42688b
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._invokeFrameCallback @ binding.dart:1430
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 @ binding.dart:1263
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 trampoline @ main.dart.wasm:0x3f64eb
$_DefaultMap&_HashFieldBase&MapMixin&_HashBase&_OperatorEqualsAndHashCode&_LinkedHashMapMixin.forEach @ compact_hash.dart:682
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame @ binding.dart:1261
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame @ binding.dart:1177
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame tear-off trampoline @ main.dart.wasm:0x3f61b4
$invoke1 @ platform_dispatcher.dart:1704
$EnginePlatformDispatcher.invokeOnBeginFrame @ platform_dispatcher.dart:242
$FrameService._renderFrame @ frame_service.dart:190
$FrameService.scheduleFrame closure at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 @ frame_service.dart:117
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 trampoline @ main.dart.wasm:0x3f577e
$_RootZone.runUnary @ zone.dart:962
$_RootZone.bindUnaryCallback closure at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 @ zone.dart:917
$closure wrapper at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 trampoline @ main.dart.wasm:0x36e438
$_693 @ main.dart.wasm:0x3f5843
(anonymous) @ main.dart.mjs:188
requestAnimationFrame
_694 @ main.dart.mjs:189
$DomWindow|requestAnimationFrame @ main.dart.wasm:0x3f57a1
$FrameService.scheduleFrame @ frame_service.dart:91
$EnginePlatformDispatcher.scheduleFrame @ platform_dispatcher.dart:693
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.scheduleFrame @ binding.dart:957
$Ticker.scheduleTick @ ticker.dart:296
$Ticker._tick @ ticker.dart:282
$Ticker._tick tear-off trampoline @ main.dart.wasm:0x42688b
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._invokeFrameCallback @ binding.dart:1430
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 @ binding.dart:1263
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 trampoline @ main.dart.wasm:0x3f64eb
$_DefaultMap&_HashFieldBase&MapMixin&_HashBase&_OperatorEqualsAndHashCode&_LinkedHashMapMixin.forEach @ compact_hash.dart:682
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame @ binding.dart:1261
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame @ binding.dart:1177
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame tear-off trampoline @ main.dart.wasm:0x3f61b4
$invoke1 @ platform_dispatcher.dart:1704
$EnginePlatformDispatcher.invokeOnBeginFrame @ platform_dispatcher.dart:242
$FrameService._renderFrame @ frame_service.dart:190
$FrameService.scheduleFrame closure at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 @ frame_service.dart:117
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 trampoline @ main.dart.wasm:0x3f577e
$_RootZone.runUnary @ zone.dart:962
$_RootZone.bindUnaryCallback closure at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 @ zone.dart:917
$closure wrapper at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 trampoline @ main.dart.wasm:0x36e438
$_693 @ main.dart.wasm:0x3f5843
(anonymous) @ main.dart.mjs:188
requestAnimationFrame
_694 @ main.dart.mjs:189
$DomWindow|requestAnimationFrame @ main.dart.wasm:0x3f57a1
$FrameService.scheduleFrame @ frame_service.dart:91
$EnginePlatformDispatcher.scheduleFrame @ platform_dispatcher.dart:693
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.scheduleFrame @ binding.dart:957
$Ticker.scheduleTick @ ticker.dart:296
$Ticker._tick @ ticker.dart:282
$Ticker._tick tear-off trampoline @ main.dart.wasm:0x42688b
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._invokeFrameCallback @ binding.dart:1430
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 @ binding.dart:1263
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 trampoline @ main.dart.wasm:0x3f64eb
$_DefaultMap&_HashFieldBase&MapMixin&_HashBase&_OperatorEqualsAndHashCode&_LinkedHashMapMixin.forEach @ compact_hash.dart:682
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame @ binding.dart:1261
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame @ binding.dart:1177
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame tear-off trampoline @ main.dart.wasm:0x3f61b4
$invoke1 @ platform_dispatcher.dart:1704
$EnginePlatformDispatcher.invokeOnBeginFrame @ platform_dispatcher.dart:242
$FrameService._renderFrame @ frame_service.dart:190
$FrameService.scheduleFrame closure at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 @ frame_service.dart:117
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 trampoline @ main.dart.wasm:0x3f577e
$_RootZone.runUnary @ zone.dart:962
$_RootZone.bindUnaryCallback closure at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 @ zone.dart:917
$closure wrapper at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 trampoline @ main.dart.wasm:0x36e438
$_693 @ main.dart.wasm:0x3f5843
(anonymous) @ main.dart.mjs:188
requestAnimationFrame
_694 @ main.dart.mjs:189
$DomWindow|requestAnimationFrame @ main.dart.wasm:0x3f57a1
$FrameService.scheduleFrame @ frame_service.dart:91
$EnginePlatformDispatcher.scheduleFrame @ platform_dispatcher.dart:693
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.scheduleFrame @ binding.dart:957
$Ticker.scheduleTick @ ticker.dart:296
$Ticker._tick @ ticker.dart:282
$Ticker._tick tear-off trampoline @ main.dart.wasm:0x42688b
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._invokeFrameCallback @ binding.dart:1430
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 @ binding.dart:1263
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 trampoline @ main.dart.wasm:0x3f64eb
$_DefaultMap&_HashFieldBase&MapMixin&_HashBase&_OperatorEqualsAndHashCode&_LinkedHashMapMixin.forEach @ compact_hash.dart:682
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame @ binding.dart:1261
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame @ binding.dart:1177
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame tear-off trampoline @ main.dart.wasm:0x3f61b4
$invoke1 @ platform_dispatcher.dart:1704
$EnginePlatformDispatcher.invokeOnBeginFrame @ platform_dispatcher.dart:242
$FrameService._renderFrame @ frame_service.dart:190
$FrameService.scheduleFrame closure at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 @ frame_service.dart:117
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 trampoline @ main.dart.wasm:0x3f577e
$_RootZone.runUnary @ zone.dart:962
$_RootZone.bindUnaryCallback closure at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 @ zone.dart:917
$closure wrapper at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 trampoline @ main.dart.wasm:0x36e438
$_693 @ main.dart.wasm:0x3f5843
(anonymous) @ main.dart.mjs:188
requestAnimationFrame
_694 @ main.dart.mjs:189
$DomWindow|requestAnimationFrame @ main.dart.wasm:0x3f57a1
$FrameService.scheduleFrame @ frame_service.dart:91
$EnginePlatformDispatcher.scheduleFrame @ platform_dispatcher.dart:693
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.scheduleFrame @ binding.dart:957
$Ticker.scheduleTick @ ticker.dart:296
$Ticker._tick @ ticker.dart:282
$Ticker._tick tear-off trampoline @ main.dart.wasm:0x42688b
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._invokeFrameCallback @ binding.dart:1430
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 @ binding.dart:1263
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/scheduler/binding.dart:1261:25 trampoline @ main.dart.wasm:0x3f64eb
$_DefaultMap&_HashFieldBase&MapMixin&_HashBase&_OperatorEqualsAndHashCode&_LinkedHashMapMixin.forEach @ compact_hash.dart:682
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.handleBeginFrame @ binding.dart:1261
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame @ binding.dart:1177
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding._handleBeginFrame tear-off trampoline @ main.dart.wasm:0x3f61b4
$invoke1 @ platform_dispatcher.dart:1704
$EnginePlatformDispatcher.invokeOnBeginFrame @ platform_dispatcher.dart:242
$FrameService._renderFrame @ frame_service.dart:190
$FrameService.scheduleFrame closure at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 @ frame_service.dart:117
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/frame_service.dart:91:37 trampoline @ main.dart.wasm:0x3f577e
$_RootZone.runUnary @ zone.dart:962
$_RootZone.bindUnaryCallback closure at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 @ zone.dart:917
$closure wrapper at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 trampoline @ main.dart.wasm:0x36e438
$_693 @ main.dart.wasm:0x3f5843
(anonymous) @ main.dart.mjs:188
requestAnimationFrame
_694 @ main.dart.mjs:189
$DomWindow|requestAnimationFrame @ main.dart.wasm:0x3f57a1
$FrameService.scheduleFrame @ frame_service.dart:91
$EnginePlatformDispatcher.scheduleFrame @ platform_dispatcher.dart:693
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.scheduleFrame @ binding.dart:957
$_MixinApplication193&BindingBase&GestureBinding&SchedulerBinding.ensureVisualUpdate @ binding.dart:910
$_BindingPipelineManifold.requestVisualUpdate @ binding.dart:829
$PipelineOwner.requestVisualUpdate @ object.dart:1072
$RenderObject.markNeedsLayout @ object.dart:2536
$RenderBox.markNeedsLayout @ box.dart:2860
$RenderBox.markNeedsLayout tear-off trampoline @ main.dart.wasm:0x5ca849
$ChangeNotifier.notifyListeners @ change_notifier.dart:432
$ScrollPosition.notifyListeners @ scroll_position.dart:1123
$ScrollPosition.setPixels @ scroll_position.dart:392
$ScrollPositionWithSingleContext.setPixels @ scroll_position_with_single_context.dart:87
$ScrollPositionWithSingleContext.applyUserOffset @ scroll_position_with_single_context.dart:131
$ScrollDragController.update @ scroll_activity.dart:415
$ScrollableState._handleDragUpdate @ scrollable.dart:884
$ScrollableState._handleDragUpdate tear-off trampoline @ main.dart.wasm:0x959606
$DragGestureRecognizer._checkUpdate closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/gestures/monodrag.dart:871:40 @ monodrag.dart:871
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/gestures/monodrag.dart:871:40 trampoline @ main.dart.wasm:0x5c7749
$GestureRecognizer.invokeCallback @ recognizer.dart:345
$DragGestureRecognizer._checkUpdate @ monodrag.dart:871
$DragGestureRecognizer.handleEvent @ monodrag.dart:713
$DragGestureRecognizer.handleEvent tear-off trampoline @ main.dart.wasm:0x5c6dd3
$PointerRouter._dispatch @ pointer_router.dart:97
$PointerRouter._dispatchEventToRoutes closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/gestures/pointer_router.dart:138:26 @ pointer_router.dart:140
$closure wrapper at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/gestures/pointer_router.dart:138:26 trampoline @ main.dart.wasm:0x3ef066
$_DefaultMap&_HashFieldBase&MapMixin&_HashBase&_OperatorEqualsAndHashCode&_LinkedHashMapMixin.forEach @ compact_hash.dart:682
$PointerRouter._dispatchEventToRoutes @ pointer_router.dart:138
$PointerRouter.route @ pointer_router.dart:128
$_MixinApplication192&BindingBase&GestureBinding.handleEvent @ binding.dart:528
$_MixinApplication192&BindingBase&GestureBinding.dispatchEvent @ binding.dart:498
$_MixinApplication197&BindingBase&GestureBinding&SchedulerBinding&ServicesBinding&PaintingBinding&SemanticsBinding&RendererBinding.dispatchEvent @ binding.dart:473
$_MixinApplication192&BindingBase&GestureBinding._handlePointerEventImmediately @ binding.dart:437
$_MixinApplication192&BindingBase&GestureBinding.handlePointerEvent @ binding.dart:394
$_MixinApplication192&BindingBase&GestureBinding._flushPointerEventQueue @ binding.dart:341
$_MixinApplication192&BindingBase&GestureBinding._handlePointerDataPacket @ binding.dart:308
$_MixinApplication192&BindingBase&GestureBinding._handlePointerDataPacket tear-off trampoline @ main.dart.wasm:0x98beb6
$invoke1 @ platform_dispatcher.dart:1704
$EnginePlatformDispatcher.invokeOnPointerDataPacket @ platform_dispatcher.dart:292
$ClickDebouncer._sendToFramework @ pointer_binding.dart:451
$ClickDebouncer.onPointerData @ pointer_binding.dart:233
$_PointerAdapter.setup closure at org-dartlang-sdk:///lib/_engine/engine/pointer_binding.dart:1016:60 @ pointer_binding.dart:1043
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/pointer_binding.dart:1016:60 trampoline @ main.dart.wasm:0x3966c6
$_PointerAdapter._addPointerEventListener closure at org-dartlang-sdk:///lib/_engine/engine/pointer_binding.dart:948:41 @ pointer_binding.dart:953
$_BaseAdapter.addEventListener closure loggedHandler at org-dartlang-sdk:///lib/_engine/engine/pointer_binding.dart:558:23 @ pointer_binding.dart:576
$closure wrapper at org-dartlang-sdk:///lib/_engine/engine/pointer_binding.dart:558:23 trampoline @ main.dart.wasm:0x39693a
$_RootZone.runUnary @ zone.dart:962
$_RootZone.bindUnaryCallback closure at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 @ zone.dart:917
$closure wrapper at org-dartlang-sdk:///dart-sdk/lib/async/zone.dart:917:12 trampoline @ main.dart.wasm:0x36e438
$_734 @ main.dart.wasm:0x36e3c3
(anonymous) @ main.dart.mjs:216Understand this error
main.dart.mjs:73 �[38;5;9m14:41:19 | ERROR   | MAIN     | Flutter Error
error: Assertion failed: file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/rendering/box.dart:2267:9
sizeAccessAllowed
"RenderBox.size accessed beyond the scope of resize, layout, or permitted parent access. RenderBox can always access its own size, otherwise, the only object that is allowed to read RenderBox.size is its parent, if they have said they will. It you hit this assert trying to access a child's size, pass \"parentUsesSize: true\" to that child's layout() in RenderTapRegionSurface.performLayout."
    at module0.Error._throwWithCurrentStackTrace (errors_patch.dart:19:39)
    at module0.AssertionError._throwWithMessage (errors_patch.dart:269:5)
    at module0.RenderBox.size closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/rendering/box.dart:2252:12 (box.dart:2267:9)
    at module0.RenderBox.size (box.dart:2302:6)
    at module0.RenderTapRegionSurface.hitTest (tap_region.dart:230:10)
    at module0._MixinApplication7&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.hitTestChildren (proxy_box.dart:131:19)
    at module0.RenderBox.hitTest (box.dart:2953:11)
    at :8080/module0._MixinApplication7&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.hitTestChildren (http://192.168.3.202:8080/main.dart.wasm:wasm-function[12964]:0x4216e1)�[0m
main.dart.mjs:73 �[38;5;9m14:41:19 | ERROR   | MAIN     | Flutter Error
error: Assertion failed: file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/rendering/box.dart:2267:9
sizeAccessAllowed
"RenderBox.size accessed beyond the scope of resize, layout, or permitted parent access. RenderBox can always access its own size, otherwise, the only object that is allowed to read RenderBox.size is its parent, if they have said they will. It you hit this assert trying to access a child's size, pass \"parentUsesSize: true\" to that child's layout() in RenderTapRegionSurface.performLayout."
    at module0.Error._throwWithCurrentStackTrace (errors_patch.dart:19:39)
    at module0.AssertionError._throwWithMessage (errors_patch.dart:269:5)
    at module0.RenderBox.size closure at file:///Users/user/.flutter-sdk/flutter/packages/flutter/lib/src/rendering/box.dart:2252:12 (box.dart:2267:9)
    at module0.RenderBox.size (box.dart:2302:6)
    at module0.RenderTapRegionSurface.hitTest (tap_region.dart:230:10)
    at module0._MixinApplication7&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.hitTestChildren (proxy_box.dart:131:19)
    at module0.RenderBox.hitTest (box.dart:2953:11)
    at :8080/module0._MixinApplication7&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.hitTestChildren (http://192.168.3.202:8080/main.dart.wasm:wasm-function[12964]:0x4216e1)�[0m
main.dart.mjs:73 �[38;5;9m14:41:19 | ERROR   | MAIN     | 

Flutter Doctor output

Doctor output
flutter doctor -v
[✓] Flutter (Channel stable, 3.41.0, on macOS 26.2 25C56 darwin-arm64, locale ru-RU)
    [568ms]
    • Flutter version 3.41.0 on channel stable at /Users/user/.flutter-sdk/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 44a626f4f0 (3 days ago), 2026-02-10 10:16:12 -0800
    • Engine revision 3452d735bd
    • Dart version 3.11.0
    • DevTools version 2.54.1
    • Feature flags: enable-web, enable-linux-desktop, enable-macos-desktop,
      enable-windows-desktop, enable-android, enable-ios, cli-animations,
      enable-native-assets, omit-legacy-version-file, enable-lldb-debugging,
      enable-uiscene-migration

[✓] Android toolchain - develop for Android devices (Android SDK version 36.1.0) [17,4s]
    • Android SDK at /Users/user/Library/Android/sdk
    • Emulator version 36.2.12.0 (build_id 14214601) (CL:N/A)
    • Platform android-36, build-tools 36.1.0
    • ANDROID_HOME = /Users/user/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.8+-14196175-b1038.72)
    • All Android licenses accepted.

[!] Xcode - develop for iOS and macOS (Xcode 26.2) [705ms]
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 17C52
    ✗ CocoaPods installed but not working.
        You appear to have CocoaPods installed but it is not working.
        This can happen if the version of Ruby that CocoaPods was installed with is
        different from the one being used to invoke it.
        This can usually be fixed by re-installing CocoaPods.
      For re-installation instructions, see
      https://guides.cocoapods.org/using/getting-started.html#installation

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

[✓] Connected device (4 available) [11,4s]
    • SM G973F (mobile)                   • RF8N326GSDY               • android-arm64  •
      Android 12 (API 31)

    • macOS (desktop)                     • macos                     • darwin-arm64   •
      macOS 26.2 25C56 darwin-arm64
    • Chrome (web)                        • chrome                    • web-javascript •
      Google Chrome 144.0.7559.133

[✓] Network resources [12,1s]
    • All expected network resources are available.

! Doctor found issues in 1 category.

Metadata

Metadata

Labels

P1High-priority issues at the top of the work listassigned for triageissue is assigned to a domain expert for further triagec: crashStack traces logged to the consolee: wasmIssues related to the wasm build of Flutter Web.engineflutter/engine related. See also e: labels.platform-androidAndroid applications specificallyplatform-webWeb applications specificallyteam-webOwned by Web platform team

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions