(deopt: &mut Deopt)
| 227 | } |
| 228 | |
| 229 | pub fn sync_from_previous(deopt: &mut Deopt) -> Result<Self> { |
| 230 | let mut observer = Observer::new(deopt); |
| 231 | deopt.load_programs_from_seeds()?; |
| 232 | for program in deopt.seed_queue.iter() { |
| 233 | let coverage = deopt.get_seed_coverage(program.id)?; |
| 234 | let new_branches = observer.has_new_branch(&coverage); |
| 235 | if !new_branches.is_empty() { |
| 236 | observer.merge_new_branch(&new_branches); |
| 237 | } |
| 238 | } |
| 239 | log::info!("{}", observer.dump_global_states()); |
| 240 | Ok(observer) |
| 241 | } |
| 242 | |
| 243 | // Recompute the global branch coverage according current seed programs. |
| 244 | // typicall called after Fuzzer::Executor::recheck_seeds(); |
nothing calls this directly
no test coverage detected