fix(editor): invoke subscriber.unsubscribe() during cleanup (#12628)

This commit is contained in:
congzhou09
2025-05-29 22:30:55 +08:00
committed by GitHub
parent 31a1841e25
commit 517aec79ba

View File

@@ -132,12 +132,13 @@ export class DocEngine {
this.logger
);
cleanUp.push(
state.mainPeer.onStatusChange.subscribe(() => {
if (!signal.aborted)
this.updateSyncingState(state.mainPeer, state.shadowPeers);
}).unsubscribe
);
const subscriber = state.mainPeer.onStatusChange.subscribe(() => {
if (!signal.aborted)
this.updateSyncingState(state.mainPeer, state.shadowPeers);
});
cleanUp.push(() => {
subscriber.unsubscribe();
});
this.updateSyncingState(state.mainPeer, state.shadowPeers);
@@ -152,12 +153,15 @@ export class DocEngine {
this.priorityTarget,
this.logger
);
cleanUp.push(
peer.onStatusChange.subscribe(() => {
if (!signal.aborted)
this.updateSyncingState(state.mainPeer, state.shadowPeers);
}).unsubscribe
);
const subscriber = peer.onStatusChange.subscribe(() => {
if (!signal.aborted)
this.updateSyncingState(state.mainPeer, state.shadowPeers);
});
cleanUp.push(() => {
subscriber.unsubscribe();
});
return peer;
});