diff options
Diffstat (limited to 'src/afl-fuzz-stats.c')
-rw-r--r-- | src/afl-fuzz-stats.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/afl-fuzz-stats.c b/src/afl-fuzz-stats.c index 713f3a3c..ef5c698c 100644 --- a/src/afl-fuzz-stats.c +++ b/src/afl-fuzz-stats.c @@ -1410,12 +1410,13 @@ void show_stats_pizza(afl_state_t *afl) { /* AFL_EXIT_ON_TIME. */ - if (unlikely(afl->last_find_time && !afl->non_instrumented_mode && - afl->afl_env.afl_exit_on_time && - (cur_ms - afl->last_find_time) > afl->exit_on_time)) { + /* If no coverage was found yet, check whether run time is greater than exit_on_time. */ + if (unlikely(!afl->non_instrumented_mode && afl->afl_env.afl_exit_on_time && + (afl->last_find_time && (cur_ms - afl->last_find_time) > afl->exit_on_time || + !afl->last_find_time && + (afl->prev_run_time + cur_ms - afl->start_time) > afl->exit_on_time))) { afl->stop_soon = 2; - } if (unlikely(afl->total_crashes && afl->afl_env.afl_bench_until_crash)) { |