Mercurial > hg-stable
changeset 49189:8c59d8adcf5b
rust-dirstatemap: use a checked sub instead of a potentially underflowing one
This was missed in 2593873cda0f
Differential Revision: https://phab.mercurial-scm.org/D12532
author | Raphaël Gomès <rgomes@octobus.net> |
---|---|
date | Fri, 08 Apr 2022 18:10:12 +0200 |
parents | 23a5659125c8 |
children | a1fce5003ff4 |
files | rust/hg-core/src/dirstate_tree/dirstate_map.rs |
diffstat | 1 files changed, 3 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/rust/hg-core/src/dirstate_tree/dirstate_map.rs Fri Apr 08 17:55:03 2022 +0200 +++ b/rust/hg-core/src/dirstate_tree/dirstate_map.rs Fri Apr 08 18:10:12 2022 +0200 @@ -1337,7 +1337,9 @@ )? .and_then(|node| { if let Some(source) = &node.copy_source { - *count -= 1; + *count = count + .checked_sub(1) + .expect("nodes_with_copy_source_count should be >= 0"); DirstateMap::count_dropped_path(unreachable_bytes, source); } node.copy_source.take().map(Cow::into_owned)