Skip to content

Commit 2235c98

Browse files
committed
in cover_tree.rs i64::MIN - 1 causes overflow. FIXED.
1 parent c77781b commit 2235c98

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

src/algorithm/neighbour/cover_tree.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -290,7 +290,7 @@ impl<T: Debug + PartialEq, D: Distance<T>> CoverTree<T, D> {
290290
self.new_leaf(p)
291291
} else {
292292
let max_dist = self.max(point_set);
293-
let next_scale = (max_scale - 1).min(self.get_scale(max_dist));
293+
let next_scale = max_scale.checked_sub(1).map(|s| s.min(self.get_scale(max_dist))).unwrap_or(i64::MIN); // bugfix i64::MIN - 1 causes overflow
294294
if next_scale == i64::MIN {
295295
let mut children: Vec<Node> = Vec::new();
296296
let mut leaf = self.new_leaf(p);

0 commit comments

Comments
 (0)