diff --git a/fuzzers/FRET/src/systemstate/report.rs b/fuzzers/FRET/src/systemstate/report.rs index 3ef4f62f8e..fc639accce 100644 --- a/fuzzers/FRET/src/systemstate/report.rs +++ b/fuzzers/FRET/src/systemstate/report.rs @@ -98,7 +98,7 @@ where { const PRUNE_THRESHOLD: usize = 200; if state.corpus().count() > PRUNE_THRESHOLD*vc { - println!("Pruning corpus, keeping {} / {}", PRUNE_THRESHOLD*vc, state.corpus().count()); + println!("Pruning corpus, keeping {} / {}", usize::max(1,vc)*PRUNE_THRESHOLD/2, state.corpus().count()); let corpus = state.corpus_mut(); let currid = corpus.current(); let ids : Vec<_> = corpus.ids().filter_map(|x| { @@ -109,7 +109,7 @@ where } else { Some((x, tc.exec_time().clone())) } - }).sorted_by_key(|x| x.1).take(usize::saturating_sub(corpus.count(),(PRUNE_THRESHOLD/2)*vc)).sorted_by_key(|x| x.0).unique().rev().collect(); + }).sorted_by_key(|x| x.1).take(usize::saturating_sub(corpus.count(),usize::max(1,vc)*PRUNE_THRESHOLD/2)).sorted_by_key(|x| x.0).unique().rev().collect(); for (cid, _) in ids { let c = state.corpus_mut().remove(cid).unwrap(); fuzzer