diff options
author | Oneric <oneric@oneric.stub> | 2022-06-04 21:16:11 +0200 |
---|---|---|
committer | Oneric <oneric@oneric.stub> | 2022-07-03 16:19:51 +0200 |
commit | fe851c83867270ff2f71b15741ef2b7812e4ce6d (patch) | |
tree | 2fdc01408d7bb08ebc49d47bf5909d53b0d4a2c5 | |
parent | 903c55dcfd953a4c14dec58de97038790c9666f8 (diff) | |
download | libass-fe851c83867270ff2f71b15741ef2b7812e4ce6d.tar.bz2 libass-fe851c83867270ff2f71b15741ef2b7812e4ce6d.tar.xz |
fuzz: always probe log messages
In some admittedly not very rigorous perfomance tests, this seemed
to have no relevant impact (with only XORing the last char).
-rw-r--r-- | fuzz/fuzz.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/fuzz/fuzz.c b/fuzz/fuzz.c index 0c302cf..d6fb926 100644 --- a/fuzz/fuzz.c +++ b/fuzz/fuzz.c @@ -64,6 +64,14 @@ void msg_callback(int level, const char *fmt, va_list va, void *data) printf("libass: "); vprintf(fmt, va); printf("\n"); +#else + // still check for type-mismatches even when not printing + // (seems to be cheap enough from some simple perormance tests) + char msg[2048]; + int l = vsnprintf(msg, sizeof(msg), fmt, va) - 1; + l = l >= sizeof(msg) ? sizeof(msg) - 1 : l; + l = l < 0 ? 0 : l; + hval ^= *(msg + l); #endif } |