diff options
author | Robert Swiecki <robert@swiecki.net> | 2019-02-11 00:04:13 +0100 |
---|---|---|
committer | Robert Swiecki <robert@swiecki.net> | 2019-02-11 00:04:13 +0100 |
commit | a31b60b9a9cf6602eb1a06d35e48e25282913abc (patch) | |
tree | a6af973101d41d60aea1e3d7e370c86962f3e629 /input.c | |
parent | a95a8f8e3a46714d0e275df9a2e4920ac61570c3 (diff) | |
download | honggfuzz-a31b60b9a9cf6602eb1a06d35e48e25282913abc.tar.gz |
input: set remaining file size to ' '/\x00 if resized
Diffstat (limited to 'input.c')
-rw-r--r-- | input.c | 11 |
1 files changed, 7 insertions, 4 deletions
@@ -56,11 +56,14 @@ void input_setSize(run_t* run, size_t sz) { if (sz > run->global->mutate.maxFileSz) { PLOG_F("Too large size requested: %zu > maxSize: %zu", sz, run->global->mutate.maxFileSz); } - size_t old_sz = run->dynamicFileSz; - run->dynamicFileSz = sz; - if (run->global->cfg.only_printable && old_sz < sz) { - memset(run->dynamicFile, ' ', sz - old_sz); + if (sz < run->dynamicFileSz) { + if (run->global->cfg.only_printable) { + memset(&run->dynamicFile[sz], ' ', run->dynamicFileSz - sz); + } else { + memset(&run->dynamicFile[sz], '\x00', run->dynamicFileSz - sz); + } } + run->dynamicFileSz = sz; } static bool input_getDirStatsAndRewind(honggfuzz_t* hfuzz) { |