MCPcopy Create free account
hub / github.com/MultiFuzz/MultiFuzz / remove_global_metadata

Method remove_global_metadata

hail-fuzz/src/queue.rs:241–262  ·  view source on GitHub ↗
(&mut self, id: InputId)

Source from the content-addressed store, hash-verified

239 }
240
241 fn remove_global_metadata(&mut self, id: InputId) {
242 let entry = &mut self.test_cases[id];
243 self.metadata.total_input_bytes -= entry.data.total_bytes();
244 self.metadata.total_instructions -= entry.metadata.instructions;
245
246 // @fixme: avoid this expensive loop
247 for entry in self.coverage_hits.values_mut() {
248 entry.retain(|x| *x != id);
249 }
250
251 for (key, entry) in &entry.data.streams {
252 if entry.bytes.is_empty() {
253 continue;
254 }
255 let Some(stream_metadata) = self.metadata.streams.get_mut(key)
256 else {
257 continue;
258 };
259 stream_metadata.num_inputs -= 1;
260 stream_metadata.total_bytes -= entry.bytes.len();
261 }
262 }
263}
264
265impl<D> std::ops::Index<InputId> for CorpusStore<D> {

Callers 1

replace_inputMethod · 0.80

Calls 4

total_bytesMethod · 0.80
is_emptyMethod · 0.80
get_mutMethod · 0.80
lenMethod · 0.45

Tested by

no test coverage detected