2d-inc/developer_quest

Assertion thrown in Color.withOpacity / FlutterActorImage.draw

Closed this issue · 3 comments

Cannot investigate, so I'm just capturing.

In this state (after the first task got completed and after I tapped to add a new task):

screenshot-1556062370334

I got this assertion error

I/flutter ( 6244): ══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════
I/flutter ( 6244): The following assertion was thrown during paint():
I/flutter ( 6244): 'dart:ui/painting.dart': Failed assertion: line 187: '<optimized out>': is not true.
I/flutter ( 6244): 
I/flutter ( 6244): Either the assertion indicates an error in the framework itself, or we should provide substantially
I/flutter ( 6244): more information in this error message to help you determine and fix the underlying cause.
I/flutter ( 6244): In either case, please report this assertion by filing a bug on GitHub:
I/flutter ( 6244):   https://github.com/flutter/flutter/issues/new?template=BUG.md
I/flutter ( 6244): 
I/flutter ( 6244): When the exception was thrown, this was the stack:
I/flutter ( 6244): #2      Color.withOpacity (dart:ui/painting.dart:187:12)
I/flutter ( 6244): #3      FlutterActorImage.draw (package:flare_flutter/flare.dart:1009:33)
I/flutter ( 6244): #4      FlutterActorArtboard.draw (package:flare_flutter/flare.dart:675:44)
I/flutter ( 6244): #5      HiringBustRenderObject.paintFlare (package:dev_rpg/src/widgets/flare/hiring_bust.dart:190:16)
I/flutter ( 6244): #6      FlareRenderBox.paint (package:flare_flutter/flare_render_box.dart:192:7)
I/flutter ( 6244): #7      RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2104:7)
I/flutter ( 6244): #8      PaintingContext.paintChild (package:flutter/src/rendering/object.dart:173:13)
I/flutter ( 6244): #9      _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:123:15)
I/flutter ( 6244): #10     RenderDecoratedBox.paint (package:flutter/src/rendering/proxy_box.dart:1945:11)
I/flutter ( 6244): #11     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2104:7)
I/flutter ( 6244): #12     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:173:13)
I/flutter ( 6244): #13     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:123:15)
I/flutter ( 6244): #14     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2104:7)
I/flutter ( 6244): #15     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:173:13)
I/flutter ( 6244): #16     _RenderWrap&RenderBox&ContainerRenderObjectMixin&RenderBoxContainerDefaultsMixin.defaultPaint (package:flutter/src/rendering/box.dart:2273:15)
I/flutter ( 6244): #17     RenderWrap.paint (package:flutter/src/rendering/wrap.dart:762:7)
I/flutter ( 6244): #18     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2104:7)
I/flutter ( 6244): #19     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:173:13)
I/flutter ( 6244): #20     _RenderFlex&RenderBox&ContainerRenderObjectMixin&RenderBoxContainerDefaultsMixin.defaultPaint (package:flutter/src/rendering/box.dart:2273:15)
I/flutter ( 6244): #21     RenderFlex.paint (package:flutter/src/rendering/flex.dart:942:7)
I/flutter ( 6244): #22     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2104:7)
I/flutter ( 6244): #23     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:173:13)
I/flutter ( 6244): #24     _RenderFlex&RenderBox&ContainerRenderObjectMixin&RenderBoxContainerDefaultsMixin.defaultPaint (package:flutter/src/rendering/box.dart:2273:15)
I/flutter ( 6244): #25     RenderFlex.paint (package:flutter/src/rendering/flex.dart:942:7)
I/flutter ( 6244): #26     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2104:7)
I/flutter ( 6244): #27     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:173:13)
I/flutter ( 6244): #28     RenderShiftedBox.paint (package:flutter/src/rendering/shifted_box.dart:70:15)
I/flutter ( 6244): #29     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2104:7)
I/flutter ( 6244): #30     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:173:13)
I/flutter ( 6244): #31     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:123:15)
I/flutter ( 6244): #32     RenderPointerListener.paint (package:flutter/src/rendering/proxy_box.dart:2608:11)
I/flutter ( 6244): #33     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2104:7)
I/flutter ( 6244): #34     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:173:13)
I/flutter ( 6244): #35     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:123:15)
I/flutter ( 6244): #36     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2104:7)
I/flutter ( 6244): #37     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:173:13)
I/flutter ( 6244): #38     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:123:15)
I/flutter ( 6244): #39     _RenderInkFeatures.paint (package:flutter/src/material/material.dart:510:11)
I/flutter ( 6244): #40     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2104:7)
I/flutter ( 6244): #41     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:173:13)
I/flutter ( 6244): #42     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:123:15)
I/flutter ( 6244): #43     RenderCustomPaint.paint (package:flutter/src/rendering/custom_paint.dart:564:11)
I/flutter ( 6244): #44     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2104:7)
I/flutter ( 6244): #45     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:173:13)
I/flutter ( 6244): #46     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:123:15)
I/flutter ( 6244): #47     PaintingContext.pushClipPath.<anonymous closure> (package:flutter/src/rendering/object.dart:444:81)
I/flutter ( 6244): #48     ClipContext._clipAndPaint (package:flutter/src/painting/clip.dart:29:12)
I/flutter ( 6244): #49     ClipContext.clipPathAndPaint (package:flutter/src/painting/clip.dart:41:5)
I/flutter ( 6244): #50     PaintingContext.pushClipPath (package:flutter/src/rendering/object.dart:444:7)
I/flutter ( 6244): #51     RenderClipPath.paint (package:flutter/src/rendering/proxy_box.dart:1493:15)
I/flutter ( 6244): #52     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2104:7)
I/flutter ( 6244): #53     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:173:13)
I/flutter ( 6244): #54     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:123:15)
I/flutter ( 6244): #55     RenderDecoratedBox.paint (package:flutter/src/rendering/proxy_box.dart:1945:11)
I/flutter ( 6244): #56     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2104:7)
I/flutter ( 6244): #57     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:173:13)
I/flutter ( 6244): #58     RenderShiftedBox.paint (package:flutter/src/rendering/shifted_box.dart:70:15)
I/flutter ( 6244): #59     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2104:7)
I/flutter ( 6244): #60     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:173:13)
I/flutter ( 6244): #61     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:123:15)
I/flutter ( 6244): #62     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2104:7)
I/flutter ( 6244): #63     PaintingContext._repaintCompositedChild (package:flutter/src/rendering/object.dart:128:11)
I/flutter ( 6244): #64     PaintingContext.repaintCompositedChild (package:flutter/src/rendering/object.dart:96:5)
I/flutter ( 6244): #65     PipelineOwner.flushPaint (package:flutter/src/rendering/object.dart:859:29)
I/flutter ( 6244): #66     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:349:19)
I/flutter ( 6244): #67     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding&WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:701:13)
I/flutter ( 6244): #68     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:286:5)
I/flutter ( 6244): #69     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1012:15)
I/flutter ( 6244): #70     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:952:9)
I/flutter ( 6244): #71     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:864:5)
I/flutter ( 6244): #75     _invoke (dart:ui/hooks.dart:219:10)
I/flutter ( 6244): #76     _drawFrame (dart:ui/hooks.dart:178:3)
I/flutter ( 6244): (elided 5 frames from class _AssertionError and package dart:async)
I/flutter ( 6244): 
I/flutter ( 6244): The following RenderObject was being processed when the exception was fired:
I/flutter ( 6244):   HiringBustRenderObject#4aafe
I/flutter ( 6244):   creator: HiringBust ← DecoratedBox ← ConstrainedBox ← Container ← Wrap ← WorkTeam ← Column ←
I/flutter ( 6244):   TeamProgressIndicator ← Column ← Padding ← Listener ← _GestureSemantics ← ⋯
I/flutter ( 6244):   parentData: <none> (can use size)
I/flutter ( 6244):   constraints: BoxConstraints(w=71.0, h=71.0)
I/flutter ( 6244):   size: Size(71.0, 71.0)
I/flutter ( 6244): This RenderObject has no descendants.
I/flutter ( 6244): ════════════════════════════════════════════════════════════════════════════════════════════════════
I/flutter ( 6244): Another exception was thrown: 'dart:ui/painting.dart': Failed assertion: line 187: '<optimized out>': is not true.
I/chatty  ( 6244): uid=10192(dev.flutter.devRpg) 1.ui identical 12 lines
I/flutter ( 6244): Another exception was thrown: 'dart:ui/painting.dart': Failed assertion: line 187: '<optimized out>': is not true.
I/flutter ( 6244): Another exception was thrown: 'dart:ui/painting.dart': Failed assertion: line 187: '<optimized out>': is not true.
I/chatty  ( 6244): uid=10192(dev.flutter.devRpg) 1.ui identical 4 lines
I/flutter ( 6244): Another exception was thrown: 'dart:ui/painting.dart': Failed assertion: line 187: '<optimized out>': is not true.
I/flutter ( 6244): Another exception was thrown: 'dart:ui/painting.dart': Failed assertion: line 187: '<optimized out>': is not true.
I/chatty  ( 6244): uid=10192(dev.flutter.devRpg) 1.ui identical 16 lines
I/flutter ( 6244): Another exception was thrown: 'dart:ui/painting.dart': Failed assertion: line 187: '<optimized out>': is not true.
I/flutter ( 6244): Another exception was thrown: 'dart:ui/painting.dart': Failed assertion: line 187: '<optimized out>': is not true.
I/chatty  ( 6244): uid=10192(dev.flutter.devRpg) 1.ui identical 10 lines

It's an assertion, so won't show up in production, but it definitely signifies something fishy. Especially since it's thrown from dart:ui/painting.dart. Unfortunately, the exact line is optimized out (even though we're in debug mode, which is a surprise to me).

For completeness:

this happens on current head (1171d65) and with Flutter 1.5.4 • channel dev.

Thanks for reporting this. I have a fix incoming with the next Flare update, I'll update the dependency in my next PR.

dlero commented

Hi
The number here withOpacity(N) must be between 0 and 1