summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVincent Sanders <vince@kyllikki.org>2018-11-06 21:59:50 +0000
committerVincent Sanders <vince@kyllikki.org>2018-11-06 21:59:50 +0000
commit05ac4303058588a77b12e25951d378498a9b3449 (patch)
treee6452ed1db9daf63da4d4206552bc8123e542053
parent7264ff6f4da719671eb170cb23d80d7fe4c2d1fe (diff)
downloadnetsurf-05ac4303058588a77b12e25951d378498a9b3449.tar.gz
netsurf-05ac4303058588a77b12e25951d378498a9b3449.tar.bz2
ensure filename numeric is not truncated and hence cause output buffer overflow
-rw-r--r--utils/filename.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/utils/filename.c b/utils/filename.c
index f0e1bb0f5..00ade7409 100644
--- a/utils/filename.c
+++ b/utils/filename.c
@@ -96,7 +96,9 @@ const char *filename_request(void)
else
dir->high_used |= (1 << (i - 32));
- sprintf(filename_buffer, "%s%.2i", dir->prefix, i);
+ i = i % 99;
+
+ snprintf(filename_buffer, sizeof(filename_buffer), "%s%.2i", dir->prefix, i);
return filename_buffer;
}