Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] WarningLog is output : setState() called after dispose() #248

Closed
manabu0926 opened this issue Jun 9, 2020 · 0 comments
Closed

[BUG] WarningLog is output : setState() called after dispose() #248

manabu0926 opened this issue Jun 9, 2020 · 0 comments
Assignees
Labels
bug Something isn't working

Comments

@manabu0926
Copy link

Describe the bug
I had this problem after upgrading the version to 7.0.0+3 .
This problem did not occur in version 6.1.1.
But the video does play.

 setState() called after dispose(): _ImageState

please see warning.

version
youtube_player_flutter: ^7.0.0+3
Flutter 1.17.3 • channel stable • https://github.com/flutter/flutter.git
Framework • revision b041144f83 (5 days ago) • 2020-06-04 09:26:11 -0700
Engine • revision ee76268252
Tools • Dart 2.8.4

WarningLog
flutter: ══╡ EXCEPTION CAUGHT BY IMAGE RESOURCE SERVICE ╞════════════════════════════════════════════════════
flutter: The following assertion was thrown when reporting an error to an image listener:
flutter: setState() called after dispose(): _ImageState#ccc2a(lifecycle state: defunct, not mounted, stream:
flutter: ImageStream#9cf34(MultiFrameImageStreamCompleter#5532e, unresolved, 3 listeners), pixels: null,
flutter: loadingProgress: null, frameNumber: null, wasSynchronouslyLoaded: false)
flutter: This error happens if you call setState() on a State object for a widget that no longer appears in
flutter: the widget tree (e.g., whose parent widget no longer includes the widget in its build). This error
flutter: can occur when code calls setState() from a timer or an animation callback.
flutter: The preferred solution is to cancel the timer or stop listening to the animation in the dispose()
flutter: callback. Another solution is to check the "mounted" property of this object before calling
flutter: setState() to ensure the object is still in the tree.
flutter: This error might indicate a memory leak if setState() is being called because another object is
flutter: retaining a reference to this State object after it has been removed from the tree. To avoid memory
flutter: leaks, consider breaking the reference to this object during dispose().
flutter:
flutter: When the exception was thrown, this was the stack:
flutter: #0 State.setState. (package:flutter/src/widgets/framework.dart:1197:9)
flutter: #1 State.setState (package:flutter/src/widgets/framework.dart:1232:6)
flutter: #2 _ImageState._getListener. (package:flutter/src/widgets/image.dart:1116:13)
flutter: #3 ImageStreamCompleter.reportError (package:flutter/src/painting/image_stream.dart:504:24)
flutter: #4 new MultiFrameImageStreamCompleter. (package:flutter/src/painting/image_stream.dart:620:7)
flutter: #12 NetworkImage._loadAsync (package:flutter/src/painting/_network_image_io.dart)
flutter:
flutter: #13 NetworkImage.load (package:flutter/src/painting/_network_image_io.dart:48:14)
flutter: #14 ImageProvider.resolveStreamForKey. (package:flutter/src/painting/image_provider.dart:501:13)
flutter: #15 ImageCache.putIfAbsent (package:flutter/src/painting/image_cache.dart:359:22)
flutter: #16 ImageProvider.resolveStreamForKey (package:flutter/src/painting/image_provider.dart:499:80)
flutter: #17 ScrollAwareImageProvider.resolveStreamForKey (package:flutter/src/widgets/scroll_aware_image_provider.dart:106:19)
flutter: #18 ImageProvider.resolve. (package:flutter/src/painting/image_provider.dart:330:9)
flutter: #19 ImageProvider._createErrorHandlerAndKey.. (package:flutter/src/painting/image_provider.dart:460:26)
flutter: #20 SynchronousFuture.then (package:flutter/src/foundation/synchronous_future.dart:41:29)
flutter: #21 ImageProvider._createErrorHandlerAndKey. (package:flutter/src/painting/image_provider.dart:457:11)
flutter: #25 ImageProvider._createErrorHandlerAndKey (package:flutter/src/painting/image_provider.dart:449:16)
flutter: #26 ImageProvider.resolve (package:flutter/src/painting/image_provider.dart:327:5)
flutter: #27 _ImageState._resolveImage (package:flutter/src/widgets/image.dart:1099:16)
flutter: #28 _ImageState.didChangeDependencies (package:flutter/src/widgets/image.dart:1052:5)
flutter: #29 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4661:12)
flutter: #30 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4476:5)
flutter: ... Normal element mounting (12 frames)
flutter: #42 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
flutter: #43 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
flutter: ... Normal element mounting (72 frames)
flutter: #115 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
flutter: #116 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
flutter: ... Normal element mounting (13 frames)
flutter: #129 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
flutter: #130 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
flutter: ... Normal element mounting (9 frames)
flutter: #139 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
flutter: #140 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
flutter: ... Normal element mounting (13 frames)
flutter: #153 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
flutter: #154 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
flutter: ... Normal element mounting (66 frames)
flutter: #220 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
flutter: #221 Element.updateChild (package:flutter/src/widgets/framework.dart:3214:18)
flutter: #222 _SliverPersistentHeaderElement._build. (package:flutter/src/widgets/sliver_persistent_header.dart:217:15)
flutter: #223 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2607:19)
flutter: #224 _SliverPersistentHeaderElement._build (package:flutter/src/widgets/sliver_persistent_header.dart:216:11)
flutter: #225 _RenderSliverPersistentHeaderForWidgetsMixin.updateChild (package:flutter/src/widgets/sliver_persistent_header.dart:298:14)
flutter: #226 RenderSliverPersistentHeader.layoutChild. (package:flutter/src/rendering/sliver_persistent_header.dart:163:9)
flutter: #227 RenderObject.invokeLayoutCallback. (package:flutter/src/rendering/object.dart:1866:58)
flutter: #228 PipelineOwner._enableMutationsToDirtySubtrees (package:flutter/src/rendering/object.dart:918:15)
flutter: #229 RenderObject.invokeLayoutCallback (package:flutter/src/rendering/object.dart:1866:13)
flutter: #230 RenderSliverPersistentHeader.layoutChild (package:flutter/src/rendering/sliver_persistent_header.dart:161:7)
flutter: #231 RenderSliverPinnedPersistentHeader.performLayout (package:flutter/src/rendering/sliver_persistent_header.dart:377:5)
flutter: #232 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #233 RenderViewportBase.layoutChildSequence (package:flutter/src/rendering/viewport.dart:452:13)
flutter: #234 RenderViewport._attemptLayout (package:flutter/src/rendering/viewport.dart:1444:12)
flutter: #235 RenderViewport.performLayout (package:flutter/src/rendering/viewport.dart:1353:20)
flutter: #236 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #237 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
flutter: #238 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #239 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
flutter: #240 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #241 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
flutter: #242 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #243 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
flutter: #244 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #245 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
flutter: #246 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #247 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
flutter: #248 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #249 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
flutter: #250 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #251 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
flutter: #252 _RenderCustomClip.performLayout (package:flutter/src/rendering/proxy_box.dart:1248:11)
flutter: #253 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #254 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
flutter: #255 RenderOffstage.performLayout (package:flutter/src/rendering/proxy_box.dart:3225:13)
flutter: #256 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #257 RenderConstrainedBox.performLayout (package:flutter/src/rendering/proxy_box.dart:266:13)
flutter: #258 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #259 MultiChildLayoutDelegate.layoutChild (package:flutter/src/rendering/custom_layout.dart:171:11)
flutter: #260 _ScaffoldLayout.performLayout (package:flutter/src/material/scaffold.dart:484:7)
flutter: #261 MultiChildLayoutDelegate._callPerformLayout (package:flutter/src/rendering/custom_layout.dart:240:7)
flutter: #262 RenderCustomMultiChildLayoutBox.performLayout (package:flutter/src/rendering/custom_layout.dart:399:14)
flutter: #263 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #264 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
flutter: #265 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #266 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
flutter: #267 _RenderCustomClip.performLayout (package:flutter/src/rendering/proxy_box.dart:1248:11)
flutter: #268 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #269 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
flutter: #270 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #271 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
flutter: #272 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #273 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
flutter: #274 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #275 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
flutter: #276 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #277 RenderOffstage.performLayout (package:flutter/src/rendering/proxy_box.dart:3223:14)
flutter: #278 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
flutter: #279 _RenderTheatre.performLayout (package:flutter/src/widgets/overlay.dart:700:15)
flutter: #280 RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1630:7)
flutter: #281 PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:887:18)
flutter: #282 RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:402:19)
flutter: #283 WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:884:13)
flutter: #284 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:284:5)
flutter: #285 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1113:15)
flutter: #286 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1052:9)
flutter: #287 SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:968:5)
flutter: #291 _invoke (dart:ui/hooks.dart:261:10)
flutter: #292 _drawFrame (dart:ui/hooks.dart:219:3)
flutter: (elided 13 frames from dart:async and dart:async-patch)
flutter: ════════════════════════════════════════════════════════════════════════════════════════════════════
flutter: Another exception was thrown: setState() called after dispose(): _ImageState#bc24b(lifecycle state: defunct, not mounted, stream: ImageStream#cf646(MultiFrameImageStreamCompleter#5532e, unresolved, 3 listeners), pixels: null, loadingProgress: null, frameNumber: null, wasSynchronouslyLoaded: false)
flutter: A YoutubePlayerController was used after being disposed.
Once you have called dispose() on a YoutubePlayerController, it can no longer be used.

@manabu0926 manabu0926 added the bug Something isn't working label Jun 9, 2020
@manabu0926 manabu0926 changed the title [BUG] WarningLog is outputsetState() called after dispose() [BUG] WarningLog is output : setState() called after dispose() Jun 9, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants