diff --git a/addon/decorators/stateful-function.js b/addon/decorators/stateful-function.js index f081a02..2e35672 100644 --- a/addon/decorators/stateful-function.js +++ b/addon/decorators/stateful-function.js @@ -2,7 +2,7 @@ import { StatefulPromise } from 'ember-stateful-promise/utils/stateful-promise'; import { CanceledPromise } from 'ember-stateful-promise/utils/canceled-promise'; import { DestroyableCanceledPromise } from 'ember-stateful-promise/utils/destroyable-canceled-promise'; import { tracked } from '@glimmer/tracking'; -import { registerDestructor } from '@ember/destroyable'; +import { registerDestructor, isDestroying } from '@ember/destroyable'; const CANCEL_PROMISE = Symbol('cancele-promise'); @@ -75,6 +75,10 @@ export function statefulFunction(options) { ); } + if (isDestroying(ctx)) { + return; + } + registerDestructor(ctx, () => { handler.reset(); handler.performCount = 0;