diff options
Diffstat (limited to 'executor')
| -rw-r--r-- | executor/common.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/executor/common.h b/executor/common.h index f0e6306e0..6fc798280 100644 --- a/executor/common.h +++ b/executor/common.h @@ -80,7 +80,9 @@ __attribute__((noreturn)) void fail(const char* msg, ...) vfprintf(stderr, msg, args); va_end(args); fprintf(stderr, " (errno %d)\n", e); - doexit(kFailStatus); + // ENOMEM is frequent cause of failures in fuzzing context, + // so handle it here as non-fatal error. + doexit(e == ENOMEM ? kRetryStatus : kFailStatus); } #if defined(SYZ_EXECUTOR) |
