diff options
Diffstat (limited to 'src/core')
| -rw-r--r-- | src/core/metrics/place.ts | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/core/metrics/place.ts b/src/core/metrics/place.ts index 091fe8f..2402e3e 100644 --- a/src/core/metrics/place.ts +++ b/src/core/metrics/place.ts @@ -111,8 +111,11 @@ export function interleaveTurnMetrics( } if (bestEntry >= 0) { usedEntries.add(bestEntry); - segmentEntry.set(seg, entries[bestEntry]!); - segmentEntryIndex.set(seg, bestEntry); + const e = entries[bestEntry]; + if (e !== undefined) { + segmentEntry.set(seg, e); + segmentEntryIndex.set(seg, bestEntry); + } } } @@ -123,8 +126,11 @@ export function interleaveTurnMetrics( while (nextUnused < K && usedEntries.has(nextUnused)) nextUnused++; if (nextUnused < K) { usedEntries.add(nextUnused); - segmentEntry.set(seg, entries[nextUnused]!); - segmentEntryIndex.set(seg, nextUnused); + const e = entries[nextUnused]; + if (e !== undefined) { + segmentEntry.set(seg, e); + segmentEntryIndex.set(seg, nextUnused); + } nextUnused++; } } |
