Skip to content

[Vector graphics] Canvas.drawPicture called with non-genuine Picture #162486

@krll-kov

Description

@krll-kov
2025-01-31 00:05:50] [FLUTTER] [Build: 3.5.109+1570] Canvas.drawPicture called with non-genuine Picture.; #0      _NativeCanvas.__drawPicture$Method$FfiNative (dart:ui/painting.dart)
#1      _NativeCanvas._drawPicture (dart:ui/painting.dart:6437)
#2      _NativeCanvas.drawPicture (dart:ui/painting.dart:6433)
#3      RenderPictureVectorGraphic.paint (package:vector_graphics/src/render_vector_graphic.dart:447)
#4      RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:3287)
#5      PaintingContext.paintChild (package:flutter/src/rendering/object.dart:261)
#6      RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:142)
#7      RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:3287)
#8      PaintingContext.paintChild (package:flutter/src/rendering/object.dart:261)
#9      RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:142)
#10     PaintingContext.pushTransform (package:flutter/src/rendering/object.dart:698)#11     RenderFittedBox._paintChildWithTransform (package:flutter/src/rendering/proxy_box.dart:2809)
#12     RenderFittedBox.paint (package:flutter/src/rendering/proxy_box.dart:2839)
#13     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:3287)
#14     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:261)
#15     RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:142)
#16     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:3287)
#17     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:261)
#18     RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:142)
#19     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:3287)
#20     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:261)
#21     RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:142)
#22     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:3287)
#23     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:261)
#24     RenderShiftedBox.paint (package:flutter/src/rendering/shifted_box.dart:81)
#25     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:3287)
#26     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:261)
#27     RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:142)
#28     RenderDecoratedBox.paint (package:flutter/src/rendering/proxy_box.dart:2341)
#29     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:3287)
#30     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:261)
#31     RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:142)
#32     PaintingContext.pushLayer (package:flutter/src/rendering/object.dart:497)
#33     RenderBackdropFilter.paint (package:flutter/src/rendering/proxy_box.dart:1280)
#34     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:3287)
#35     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:261)
#36     RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:142)
#37     PaintingContext.pushLayer (package:flutter/src/rendering/object.dart:497)
#38     PaintingContext.pushClipRRect (package:flutter/src/rendering/object.dart:596)
#39     RenderClipRRect.paint (package:flutter/src/rendering/proxy_box.dart:1676)
#40     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:3287)
#41     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:261)
#42     RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:142)
#43     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:3287)
#44     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:261)
#45     RenderBoxContainerDefaultsMixin.defaultPaint (package:flutter/src/rendering/box.dart:3171)
#46     RenderStack.paintStack (package:flutter/src/rendering/stack.dart:660)
#47     RenderStack.paint (package:flutter/src/rendering/stack.dart:676)
#48     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:3287)
#49     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:261)
#50     RenderShiftedBox.paint (package:flutter/src/rendering/shifted_box.dart:81)
#51     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:3287)
#52     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:261)
#53     RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:142)
#54     PaintingContext.pushLayer (package:flutter/src/rendering/object.dart:497)
#55     PaintingContext.pushClipPath (package:flutter/src/rendering/object.dart:635)
#56     RenderClipPath.paint (package:flutter/src/rendering/proxy_box.dart:1842)
#57     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:3287)
#58     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:261)
#59     RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:142)
#60     RenderDecoratedBox.paint (package:flutter/src/rendering/proxy_box.dart:2341)
#61     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:3287)
#62     PaintingContext.paintChild (package:flutter/src/rendering/object.dart:261)
#63     RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:142)
#64     RenderOpacity.paint (package:flutter/src/rendering/proxy_box.dart:970)
#65     RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:3287)
#66     PaintingContext._repaintCompositedChild (package:flutter/src/rendering/object.dart:177)
#67     PaintingContext.repaintCompositedChild (package:flutter/src/rendering/object.dart:120)
#68     PipelineOwner.flushPaint (package:flutter/src/rendering/object.dart:1193)
#69     PipelineOwner.flushPaint (package:flutter/src/rendering/object.dart:1203)
#70     RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:611)
#71     WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:1178)
#72     RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:475)
#73     SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1397)
#74     SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1318)
#75     SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:1176)
#76     _invoke (dart:ui/hooks.dart:312)
#77     PlatformDispatcher._drawFrame (dart:ui/platform_dispatcher.dart:427)
#78     _drawFrame (dart:ui/hooks.dart:283)

After update from flutter 3.24.5 and vector graphics 1.1.14 to latest versions, I started receiving dozens of thousands of these error messages from users via logs that are automatically sent with flutter.onError callback.

This happens on windows platform and I have no idea how to reproduce this, but according to logs amount this is a very popular problem on users PCs .

I literally changed nothing in my code that may be somehow related to svg, the SVG files are the same, but for some reason this error started to appear very often

Metadata

Metadata

Assignees

No one assigned

    Labels

    c: crashStack traces logged to the consoleneeds repro infoAutomated crash report whose cause isn't yet knownp: vector_graphicsThe vector_graphics package setpackageflutter/packages repository. See also p: labels.r: fixedIssue is closed as already fixed in a newer versionteam-engineOwned by Engine team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions