krille-chan / fluffychat

The cutest instant messenger in the [matrix]
https://fluffychat.im/
GNU Affero General Public License v3.0
1.1k stars 192 forks source link

[BUG]: Error Widget (long-tapping a reaction counter causes an error) #1241

Open Seirdy opened 2 months ago

Seirdy commented 2 months ago

Happens on FluffyChat iOS when long-tapping on a reaction counter (two ❤️ reactions). I get an "Oh no. Something went wrong popup with the following log, in front of an orange screen with a thin blue "X" overlaid on it.

Null check operator used on a null value
#0      _AdaptableReactorsDialog.build (package:fluffychat/pages/chat/events/message_reactions.dart:219)
#1      StatelessElement.build (package:flutter/src/widgets/framework.dart:5557)
#2      ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5487)
#3      Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#4      ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#5      ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#6      Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#7      Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#8      ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#9      Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#10     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#11     ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#12     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#13     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#14     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6769)
#15     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#16     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#17     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#18     Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#19     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#20     ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#21     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#22     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#23     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6769)
#24     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#25     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#26     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#27     Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#28     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#29     ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#30     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#31     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#32     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6769)
#33     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#34     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#35     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6769)
#36     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#37     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#38     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#39     StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5650)
#40     Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#41     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#42     StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:5641)
#43     ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#44     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#45     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#46     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6769)
#47     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#48     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#49     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#50     StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5650)
#51     Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#52     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#53     StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:5641)
#54     ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#55     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#56     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#57     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6769)
#58     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#59     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#60     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#61     StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5650)
#62     Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#63     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#64     StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:5641)
#65     ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#66     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#67     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#68     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6769)
#69     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#70     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#71     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#72     Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#73     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#74     ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#75     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#76     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#77     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6769)
#78     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#79     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#80     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#81     StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5650)
#82     Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#83     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#84     StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:5641)
#85     ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#86     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#87     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#88     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#89     Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#90     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#91     ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#92     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#93     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#94     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#95     Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#96     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#97     ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#98     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#99     Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#100    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#101    StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5650)
#102    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#103    ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#104    StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:5641)
#105    ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#106    Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#107    Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#108    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#109    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#110    ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#111    ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#112    Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#113    Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#114    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#115    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#116    ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#117    ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#118    Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#119    Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#120    SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6769)
#121    Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#122    Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#123    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#124    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#125    ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#126    ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#127    Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#128    Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#129    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#130    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#131    ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#132    ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#133    Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#134    Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#135    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#136    StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5650)
#137    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#138    ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#139    StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:5641)
#140    ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#141    Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#142    Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#143    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#144    StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5650)
#145    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#146    ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#147    StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:5641)
#148    ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#149    Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#150    Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#151    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#152    StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5650)
#153    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#154    ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#155    StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:5641)
#156    ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#157    Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#158    Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#159    SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6769)
#160    Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#161    Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#162    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#163    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#164    ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#165    ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#166    Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#167    Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#168    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#169    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#170    ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#171    ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#172    Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#173    Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#174    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#175    StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5650)
#176    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#177    ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#178    StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:5641)
#179    ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#180    Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#181    Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#182    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#183    StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5650)
#184    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#185    ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5469)
#186    StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:5641)
#187    ComponentElement.mount (package:flutter/src/widgets/framework.dart:5463)
#188    Element.inflateWidget (package:flutter/src/widgets/framework.dart:4340)
#189    MultiChildRenderObjectElement.inflateWidget (package:flutter/src/widgets/framework.dart:6904)
#190    Element.updateChild (package:flutter/src/widgets/framework.dart:3849)
#191    Element.updateChildren (package:flutter/src/widgets/framework.dart:4036)
#192    MultiChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6929)
#193    Element.updateChild (package:flutter/src/widgets/framework.dart:3827)
#194    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#195    StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5650)
#196    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#197    StatefulElement.update (package:flutter/src/widgets/framework.dart:5673)
#198    Element.updateChild (package:flutter/src/widgets/framework.dart:3827)
#199    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#200    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#201    ProxyElement.update (package:flutter/src/widgets/framework.dart:5816)
#202    Element.updateChild (package:flutter/src/widgets/framework.dart:3827)
#203    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#204    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#205    ProxyElement.update (package:flutter/src/widgets/framework.dart:5816)
#206    _InheritedNotifierElement.update (package:flutter/src/widgets/inherited_notifier.dart:105)
#207    Element.updateChild (package:flutter/src/widgets/framework.dart:3827)
#208    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#209    StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5650)
#210    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#211    StatefulElement.update (package:flutter/src/widgets/framework.dart:5673)
#212    Element.updateChild (package:flutter/src/widgets/framework.dart:3827)
#213    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#214    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#215    ProxyElement.update (package:flutter/src/widgets/framework.dart:5816)
#216    _InheritedNotifierElement.update (package:flutter/src/widgets/inherited_notifier.dart:105)
#217    Element.updateChild (package:flutter/src/widgets/framework.dart:3827)
#218    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#219    StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5650)
#220    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#221    StatefulElement.update (package:flutter/src/widgets/framework.dart:5673)
#222    Element.updateChild (package:flutter/src/widgets/framework.dart:3827)
#223    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#224    StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5650)
#225    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#226    StatefulElement.update (package:flutter/src/widgets/framework.dart:5673)
#227    Element.updateChild (package:flutter/src/widgets/framework.dart:3827)
#228    SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6776)
#229    Element.updateChild (package:flutter/src/widgets/framework.dart:3827)
#230    SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6776)
#231    Element.updateChild (package:flutter/src/widgets/framework.dart:3827)
#232    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#233    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#234    ProxyElement.update (package:flutter/src/widgets/framework.dart:5816)
#235    Element.updateChild (package:flutter/src/widgets/framework.dart:3827)
#236    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#237    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#238    ProxyElement.update (package:flutter/src/widgets/framework.dart:5816)
#239    Element.updateChild (package:flutter/src/widgets/framework.dart:3827)
#240    ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5512)
#241    StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5650)
#242    Element.rebuild (package:flutter/src/widgets/framework.dart:5203)
#243    BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2905)
#244    WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:1136)
#245    RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:443)
#246    SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1392)
#247    SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1313)
#248    SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:1171)
#249    _invoke (dart:ui/hooks.dart:312)
#250    PlatformDispatcher._drawFrame (dart:ui/platform_dispatcher.dart:419)
#251    _drawFrame (dart:ui/hooks.dart:283)

Version 1.21.2 (44) on TestFlight.

everypizza1 commented 13 hours ago

This seems to happen whenever a user who reacted doesn't have a display name set, or if their join event is missing.