projects
/
emacs.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
fbfc3bd
)
Fix buffer overflow in xbm_scan (bug#47094)
author
Alan Third
<alan@idiocy.org>
Sat, 13 Mar 2021 21:59:59 +0000
(21:59 +0000)
committer
Alan Third
<alan@idiocy.org>
Sat, 13 Mar 2021 22:01:31 +0000
(22:01 +0000)
* src/image.c (xbm_scan): Ensure reading a string doesn't overflow the
buffer.
src/image.c
patch
|
blob
|
history
diff --git
a/src/image.c
b/src/image.c
index 6d493f6cdd4c1222212113d136150111405edb51..b85418c690d6a522e56f3cd3fda211101b7fa9c0 100644
(file)
--- a/
src/image.c
+++ b/
src/image.c
@@
-3392,6
+3392,7
@@
static int
xbm_scan (char **s, char *end, char *sval, int *ival)
{
unsigned char c UNINIT;
+ char *sval_end = sval + BUFSIZ;
loop:
@@
-3451,7
+3452,7
@@
xbm_scan (char **s, char *end, char *sval, int *ival)
else if (c_isalpha (c) || c == '_')
{
*sval++ = c;
- while (*s < end
+ while (*s < end
&& sval < sval_end
&& (c = *(*s)++, (c_isalnum (c) || c == '_')))
*sval++ = c;
*sval = 0;