about summary refs log tree commit diff
path: root/src/afl-fuzz-run.c
diff options
context:
space:
mode:
authorvan Hauser <vh@thc.org>2020-10-15 15:48:39 +0200
committervan Hauser <vh@thc.org>2020-10-15 15:48:39 +0200
commitf41aafa4f7aa446c3cb1cbe6d77364cf32a6c6cb (patch)
tree7d46730b4b7f3b74ef78e42dfc9fdccb18985e4e /src/afl-fuzz-run.c
parent354bda28465588e424c0a93b413af01a603191ce (diff)
downloadafl++-f41aafa4f7aa446c3cb1cbe6d77364cf32a6c6cb.tar.gz
retake from mem if possible
Diffstat (limited to 'src/afl-fuzz-run.c')
-rw-r--r--src/afl-fuzz-run.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/afl-fuzz-run.c b/src/afl-fuzz-run.c
index ab870319..dfd3abfb 100644
--- a/src/afl-fuzz-run.c
+++ b/src/afl-fuzz-run.c
@@ -711,7 +711,11 @@ u8 trim_case(afl_state_t *afl, struct queue_entry *q, u8 *in_buf) {
 
     });
 
-    if (orig_len != q->len) { queue_testcase_retake(afl, q, orig_len); }
+    if (orig_len != q->len || custom_trimmed) {
+
+      queue_testcase_retake(afl, q, orig_len);
+
+    }
 
     if (custom_trimmed) return trimmed_case;
 
@@ -846,7 +850,7 @@ u8 trim_case(afl_state_t *afl, struct queue_entry *q, u8 *in_buf) {
 
     close(fd);
 
-    if (orig_len != q->len) queue_testcase_retake(afl, q, orig_len);
+    queue_testcase_retake_mem(afl, q, in_buf, q->len, orig_len);
 
     memcpy(afl->fsrv.trace_bits, afl->clean_trace, afl->fsrv.map_size);
     update_bitmap_score(afl, q);