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

_FlutterPasswordStrengthState#61795(ticker active) was disposed with an active Ticker. #6

Closed
iamriajul opened this issue Jul 30, 2020 · 2 comments

Comments

@iamriajul
Copy link
Contributor

Steps to produce the error

When FlutterPasswordStrength widgets get hidden, this stack trace shows in logs.
image

Logs

`════════ Exception caught by widgets library ═══════════════════════════════════════════════════════
The following assertion was thrown while finalizing the widget tree:
_FlutterPasswordStrengthState#61795(ticker active) was disposed with an active Ticker.

_FlutterPasswordStrengthState created a Ticker via its SingleTickerProviderStateMixin, but at the time dispose() was called on the mixin, that Ticker was still active. The Ticker must be disposed before calling super.dispose().

Tickers used by AnimationControllers should be disposed by calling dispose() on the AnimationController itself. Otherwise, the ticker will leak.

The offending ticker was: Ticker(created by _FlutterPasswordStrengthState#61795(lifecycle state: created))
The stack trace when the Ticker was actually created was:
#0 new Ticker. (package:flutter/src/scheduler/ticker.dart:66:40)
#1 new Ticker (package:flutter/src/scheduler/ticker.dart:68:6)
#2 SingleTickerProviderStateMixin.createTicker (package:flutter/src/widgets/ticker_provider.dart:129:15)
#3 new AnimationController (package:flutter/src/animation/animation_controller.dart:247:21)
#4 _FlutterPasswordStrengthState.initState (package:flutter_password_strength/flutter_password_strength.dart:133:9)
#5 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4640:58)
#6 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4476:5)
... Normal element mounting (10 frames)
#16 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
#17 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
... Normal element mounting (4 frames)
#21 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
#22 Element.updateChild (package:flutter/src/widgets/framework.dart:3211:20)
#23 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)
#24 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)
#25 StatelessElement.update (package:flutter/src/widgets/framework.dart:4583:5)
#26 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)
#27 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)
#28 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4675:11)
#29 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)
#30 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2627:33)
#31 WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:883:20)
#32 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:284:5)
#33 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1113:15)
#34 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1052:9)
#35 SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:968:5)
#39 _invoke (dart:ui/hooks.dart:261:10)
#40 _drawFrame (dart:ui/hooks.dart:219:3)
(elided 3 frames from dart:async)

When the exception was thrown, this was the stack:
#0 SingleTickerProviderStateMixin.dispose. (package:flutter/src/widgets/ticker_provider.dart:142:7)
#1 SingleTickerProviderStateMixin.dispose (package:flutter/src/widgets/ticker_provider.dart:156:6)
#2 _FlutterPasswordStrengthState.dispose (package:flutter_password_strength/flutter_password_strength.dart:172:11)
#3 StatefulElement.unmount (package:flutter/src/widgets/framework.dart:4729:12)
#4 _InactiveElements._unmount (package:flutter/src/widgets/framework.dart:1922:13)
...
════════════════════════════════════════════════════════════════════════════════════════════════════`

@schillingdavid
Copy link
Contributor

schillingdavid commented Dec 14, 2020

@JinHoSo My PR (PR #7) should solve this issue. Please look into it if you find some time to review. :)

@JinHoSo
Copy link
Owner

JinHoSo commented Feb 1, 2021

@schillingdavid Thank you :)

@JinHoSo JinHoSo closed this as completed Feb 1, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants