if c.canMinimize() && result.canMinimize && c.crashMinimizing == nil {
// Send back to workers to find a smaller value that preserves
// at least one new coverage bit.
-
c.queueForMinimization(result, keepCoverage)
} else {
// Update the coordinator's coverage mask and save the value.
func (c *coordinator) queueForMinimization(result fuzzResult, keepCoverage []byte) {
if shouldPrintDebugInfo() {
c.debugLogf(
- "queueing input for minimization, id: %s, crasher: %t",
+ "queueing input for minimization, id: %s, parent: %s, keepCoverage: %t, crasher: %t",
result.entry.Path,
+ result.entry.Parent,
+ keepCoverage,
result.crasherMsg != "",
)
}
result.crasherMsg = err.Error()
}
}
+ if shouldPrintDebugInfo() {
+ w.coordinator.debugLogf(
+ "input minimized, id: %s, original id: %s, crasher: %t, originally crasher: %t, minimizing took: %s",
+ result.entry.Path,
+ input.entry.Path,
+ result.crasherMsg != "",
+ input.crasherMsg != "",
+ result.totalDuration,
+ )
+ }
w.coordinator.resultC <- result
}
}