From a15a03cabd2a359eead6c93543338df0b78d7a0d Mon Sep 17 00:00:00 2001 From: Xc Date: Wed, 13 Aug 2025 17:03:30 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=84=E7=90=86=E4=BA=86node.clean=E7=9A=84?= =?UTF-8?q?=E8=BE=B9=E7=95=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- es/features/runningTree.js | 6 +++--- lib/features/runningTree.js | 6 +++--- src/features/runningTree.ts | 8 ++++---- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/es/features/runningTree.js b/es/features/runningTree.js index 7462d44a..db9c4c69 100644 --- a/es/features/runningTree.js +++ b/es/features/runningTree.js @@ -2500,13 +2500,13 @@ export class RunningTree extends Feature { const { root } = analyzePath(path); this.invalidateCachedOperations(root); while (true) { - const parent = node.getParent(); - if (parent && parent.checkIfClean(node)) { + const parent = node?.getParent(); + if (parent && node && parent.checkIfClean(node)) { node = parent; continue; } else { - node.clean(lsn, dontPublish); + node?.clean(lsn, dontPublish); break; } } diff --git a/lib/features/runningTree.js b/lib/features/runningTree.js index 438eca51..373e27c4 100644 --- a/lib/features/runningTree.js +++ b/lib/features/runningTree.js @@ -2503,13 +2503,13 @@ class RunningTree extends Feature_1.Feature { const { root } = analyzePath(path); this.invalidateCachedOperations(root); while (true) { - const parent = node.getParent(); - if (parent && parent.checkIfClean(node)) { + const parent = node?.getParent(); + if (parent && node && parent.checkIfClean(node)) { node = parent; continue; } else { - node.clean(lsn, dontPublish); + node?.clean(lsn, dontPublish); break; } } diff --git a/src/features/runningTree.ts b/src/features/runningTree.ts index a59dfa66..a069b14a 100644 --- a/src/features/runningTree.ts +++ b/src/features/runningTree.ts @@ -3065,18 +3065,18 @@ export class RunningTree extends Feature * @param dontPublish */ clean(path: string, lsn?: number, dontPublish?: true) { - let node = this.findNode(path)!; + let node = this.findNode(path); const { root } = analyzePath(path); this.invalidateCachedOperations(root); while (true) { - const parent = node.getParent(); - if (parent && parent.checkIfClean(node)) { + const parent = node?.getParent(); + if (parent && node && parent.checkIfClean(node)) { node = parent; continue; } else { - node.clean(lsn, dontPublish); + node?.clean(lsn, dontPublish); break; } }