Skip to content

Commit b2bca14

Browse files
committed
Handle crash when all 12-jump exact evaluations are skipped.
1 parent 22ec43d commit b2bca14

1 file changed

Lines changed: 4 additions & 2 deletions

File tree

lib_ts_chainalign/src/chaining_cost_function.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -268,7 +268,7 @@ impl<Cost: AStarCost> ChainingCostFunction<Cost> {
268268
let mut total_12_jump_exact_align_time = Duration::default();
269269
let mut total_12_jump_exact_evaluation_time = Duration::default();
270270
let mut total_12_jump_exact_evaluations = 0;
271-
let mut total_12_jump_exact_evaluation_opened_nodes = 0;
271+
let mut total_12_jump_exact_evaluation_opened_nodes = 0usize;
272272
for (ts_kind, jump_12) in TsKind::iter().zip(&mut jump_12s) {
273273
trace!("Filling 12-jumps to S{}", ts_kind.digits());
274274
for (from_index, from_anchor) in anchors.enumerate_primaries() {
@@ -360,7 +360,9 @@ impl<Cost: AStarCost> ChainingCostFunction<Cost> {
360360
);
361361
debug!(
362362
"Exact cost evaluation for 12-jumps opened on average {} nodes (without skipped evaluations)",
363-
total_12_jump_exact_evaluation_opened_nodes / total_12_jump_exact_evaluations,
363+
total_12_jump_exact_evaluation_opened_nodes
364+
.checked_div(total_12_jump_exact_evaluations)
365+
.unwrap_or(0),
364366
);
365367

366368
// Initialise 34-jumps with infinity.

0 commit comments

Comments
 (0)