diff --git a/packages/rxjs/src/internal/scheduler/AnimationFrameAction.ts b/packages/rxjs/src/internal/scheduler/AnimationFrameAction.ts index e292df0344..bbcf18bf26 100644 --- a/packages/rxjs/src/internal/scheduler/AnimationFrameAction.ts +++ b/packages/rxjs/src/internal/scheduler/AnimationFrameAction.ts @@ -35,7 +35,9 @@ export class AnimationFrameAction extends AsyncAction { const { actions } = scheduler; if (id != null && actions[actions.length - 1]?.id !== id) { animationFrameProvider.cancelAnimationFrame(id as number); - scheduler._scheduled = undefined; + if (scheduler._scheduled === id) { + scheduler._scheduled = undefined; + } } // Return undefined so the action knows to request a new async id if it's rescheduled. return undefined;