about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/afl-forkserver.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/afl-forkserver.c b/src/afl-forkserver.c
index 962ca86d..a863efcc 100644
--- a/src/afl-forkserver.c
+++ b/src/afl-forkserver.c
@@ -319,10 +319,15 @@ void afl_fsrv_start(afl_forkserver_t *fsrv, char **argv) {
     u32 time = read_timed(fsrv->fsrv_st_fd, &status, rlen,
                           fsrv->exec_tmout * FORK_WAIT_MULT);
 
-    if (!time) {
+    if (time > fsrv->exec_tmout * FORK_WAIT_MULT) {
 
       fsrv->child_timed_out = 1;
-      kill(fsrv->child_pid, SIGKILL);
+      kill(fsrv->fsrv_pid, SIGKILL);
+
+    }
+    if (!time) {
+
+      kill(fsrv->fsrv_pid, SIGKILL);
 
     }