From 28db2c8e7ca9ffc6d4cc6845fbceb3e3de20510c Mon Sep 17 00:00:00 2001 From: ShikiSuen Date: Wed, 21 Jun 2023 00:38:13 +0800 Subject: [PATCH] Megrez // Clean walkedNodes everytime it walks. --- Packages/vChewing_Megrez/Sources/Megrez/2_Walker.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Packages/vChewing_Megrez/Sources/Megrez/2_Walker.swift b/Packages/vChewing_Megrez/Sources/Megrez/2_Walker.swift index d3f771f4..a79edacd 100644 --- a/Packages/vChewing_Megrez/Sources/Megrez/2_Walker.swift +++ b/Packages/vChewing_Megrez/Sources/Megrez/2_Walker.swift @@ -19,10 +19,10 @@ public extension Megrez.Compositor { /// - Returns: 爬軌結果+該過程是否順利執行。 @discardableResult mutating func walk() -> [Megrez.Node] { defer { Self.reinitVertexNetwork() } + walkedNodes.removeAll() sortAndRelax() guard !spans.isEmpty else { return [] } var iterated: Megrez.Node? = Megrez.Node.leadingNode - walkedNodes.removeAll() while let itPrev = iterated?.prev { // 此處必須得是 Copy,讓組字器外部對此的操作影響不到組字器內部的節點。 walkedNodes.insert(itPrev.copy, at: 0)