diff --git a/web/src/engine/predictive-text/worker-thread/src/main/correction/distance-modeler.ts b/web/src/engine/predictive-text/worker-thread/src/main/correction/distance-modeler.ts index 1b0c9ab633..31e62eff38 100644 --- a/web/src/engine/predictive-text/worker-thread/src/main/correction/distance-modeler.ts +++ b/web/src/engine/predictive-text/worker-thread/src/main/correction/distance-modeler.ts @@ -657,12 +657,14 @@ export async function *getBestMatches(searchModules: SearchQuotientNode[], timer do { const entry: SearchResult = timer.time(() => { if((priorResultsQueue.peek()?.totalCost ?? Number.POSITIVE_INFINITY) < spaceQueue.peek().currentCost) { - return priorResultsQueue.dequeue(); + const result = priorResultsQueue.dequeue(); + currentReturns[result.node.resultKey] = result.node; + return result; } - let bestQueue = spaceQueue.dequeue(); - let newResult: PathResult = bestQueue.handleNextNode(); - spaceQueue.enqueue(bestQueue); + let lowestCostSource = spaceQueue.dequeue(); + let newResult: PathResult = lowestCostSource.handleNextNode(); + spaceQueue.enqueue(lowestCostSource); if(newResult.type == 'none') { return null;