aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/afl-fuzz-run.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/afl-fuzz-run.c b/src/afl-fuzz-run.c
index b97a8e6a..d1ffb46c 100644
--- a/src/afl-fuzz-run.c
+++ b/src/afl-fuzz-run.c
@@ -107,7 +107,7 @@ write_to_testcase(afl_state_t *afl, void **mem, u32 len, u32 fix) {
new_size =
el->afl_custom_post_process(el->data, new_mem, new_size, &new_buf);
- if (unlikely(!new_buf && new_size <= 0)) {
+ if (unlikely(!new_buf || new_size <= 0)) {
new_size = 0;
new_buf = new_mem;
@@ -226,14 +226,18 @@ static void write_with_gap(afl_state_t *afl, u8 *mem, u32 len, u32 skip_at,
new_size =
el->afl_custom_post_process(el->data, new_mem, new_size, &new_buf);
- if (unlikely(!new_buf || new_size <= 0)) {
+ if (unlikely(!new_buf && new_size <= 0)) {
- FATAL("Custom_post_process failed (ret: %lu)",
- (long unsigned)new_size);
+ new_size = 0;
+ new_buf = new_mem;
+ // FATAL("Custom_post_process failed (ret: %lu)", (long
+ // unsigned)new_size);
- }
+ } else {
- new_mem = new_buf;
+ new_mem = new_buf;
+
+ }
}