diff options
author | vanhauser-thc <vh@thc.org> | 2023-04-15 08:33:50 +0200 |
---|---|---|
committer | vanhauser-thc <vh@thc.org> | 2023-04-15 09:11:33 +0200 |
commit | 8f6d9d66ef96286661dab876d9b57a36982b2a4d (patch) | |
tree | ccaca87f422b3fbff7d82df8dc3d246124504086 | |
parent | 2b81d2d63f5fbbf130a38e8838b46e995a11237b (diff) | |
download | afl++-8f6d9d66ef96286661dab876d9b57a36982b2a4d.tar.gz |
fix post_process
-rw-r--r-- | src/afl-fuzz-run.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/afl-fuzz-run.c b/src/afl-fuzz-run.c index 26e8549d..4d56f3a7 100644 --- a/src/afl-fuzz-run.c +++ b/src/afl-fuzz-run.c @@ -135,8 +135,11 @@ write_to_testcase(afl_state_t *afl, void **mem, u32 len, u32 fix) { if (new_mem != *mem && new_mem != NULL && new_size > 0) { - *mem = afl_realloc((void **)mem, new_size); - memmove(*mem, new_mem, new_size); + u8 *new_buf = afl_realloc(AFL_BUF_PARAM(out_scratch), new_size); + if (unlikely(!new_buf)) { PFATAL("alloc"); } + *mem = new_buf; + memcpy(*mem, new_mem, new_size); + afl_swap_bufs(AFL_BUF_PARAM(out), AFL_BUF_PARAM(out_scratch)); } |