Skip to content

[BUG] Crash due to MultipleTapGestureRecognizer #690

@jhass

Description

@jhass

I'm seeing the following crash:

Null check operator used on a null value

Stack trace:

#0 BaseTapGestureRecognizer._checkDown (package:flutter/src/gestures/tap.dart:287)
#1 BaseTapGestureRecognizer.acceptGesture (package:flutter/src/gestures/tap.dart:265)
#2 MultipleTapGestureRecognizer.rejectGesture (package:flutter_html/src/utils.dart:54)
#3 GestureArenaManager._resolve (package:flutter/src/gestures/arena.dart:214)
#4 GestureArenaEntry.resolve (package:flutter/src/gestures/arena.dart:53)
#5 OneSequenceGestureRecognizer.resolve (package:flutter/src/gestures/recognizer.dart:260)
#6 BaseTapGestureRecognizer.resolve (package:flutter/src/gestures/tap.dart:253)
#7 PrimaryPointerGestureRecognizer.handleEvent (package:flutter/src/gestures/recognizer.dart:472)
#8 PointerRouter._dispatch (package:flutter/src/gestures/pointer_router.dart:93)
#9 PointerRouter._dispatchEventToRoutes.<anonymous closure> (package:flutter/src/gestures/pointer_router.dart:138)
#10 _LinkedHashMapMixin.forEach (dart:collection-patch/compact_hash.dart:397)
#11 PointerRouter._dispatchEventToRoutes (package:flutter/src/gestures/pointer_router.dart:136)
#12 PointerRouter.route (package:flutter/src/gestures/pointer_router.dart:122)
#13 GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:381)
#14 GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:361)
#15 RendererBinding.dispatchEvent (package:flutter/src/rendering/binding.dart:278)
#16 GestureBinding._handlePointerEventImmediately (package:flutter/src/gestures/binding.dart:316)
#17 GestureBinding.handlePointerEvent (package:flutter/src/gestures/binding.dart:280)
#18 GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:238)
#19 GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:221)
#20 _rootRunUnary (dart:async/zone.dart:1370)
#21 _CustomZone.runUnary (dart:async/zone.dart:1265)
#22 _CustomZone.runUnaryGuarded (dart:async/zone.dart:1170)
#23 _invoke1 (dart:ui/hooks.dart:180)
#24 PlatformDispatcher._dispatchPointerDataPacket (dart:ui/platform_dispatcher.dart:276)
#25 _dispatchPointerDataPacket (dart:ui/hooks.dart:96)

This is caused by the current version of MultipleTapGestureRecognizer introduced at #631 and probably originating at https://gist.github.com/Nash0x7E2/08acca529096d93f3df0f60f9c034056

Given the crash happens in Flutter internal state I tried to convince upstream to handle this gracefully but failed to do so: flutter/flutter#82107

Unfortunately my request to suggest a supported solution remained unanswered.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions