diff --git a/src/operator/exhaustMap.ts b/src/operator/exhaustMap.ts index 94677d4728..34f3b9b15f 100644 --- a/src/operator/exhaustMap.ts +++ b/src/operator/exhaustMap.ts @@ -1,6 +1,7 @@ import {Operator} from '../Operator'; import {Observable, ObservableInput} from '../Observable'; import {Subscriber} from '../Subscriber'; +import {Subscription} from '../Subscription'; import {OuterSubscriber} from '../OuterSubscriber'; import {InnerSubscriber} from '../InnerSubscriber'; import {subscribeToResult} from '../util/subscribeToResult'; @@ -95,7 +96,9 @@ class SwitchFirstMapSubscriber extends OuterSubscriber { this.destination.error(err); } - notifyComplete(): void { + notifyComplete(innerSub: Subscription): void { + this.remove(innerSub); + this.hasSubscription = false; if (this.hasCompleted) { this.destination.complete();