]> granicus.if.org Git - file/commitdiff
make sure we don't exceed the array sie if nbytes is odd. Found by oss-fuzz
authorChristos Zoulas <christos@zoulas.com>
Tue, 20 Dec 2016 03:15:16 +0000 (03:15 +0000)
committerChristos Zoulas <christos@zoulas.com>
Tue, 20 Dec 2016 03:15:16 +0000 (03:15 +0000)
src/softmagic.c

index 0e9d433ddd99b908b9388c305136fbac3efb69d7..2543dfec5dd6d9d10ffd2f6fcbf8d3471c161dc9 100644 (file)
@@ -32,7 +32,7 @@
 #include "file.h"
 
 #ifndef        lint
-FILE_RCSID("@(#)$File: softmagic.c,v 1.238 2016/10/24 18:02:17 christos Exp $")
+FILE_RCSID("@(#)$File: softmagic.c,v 1.239 2016/12/20 03:15:16 christos Exp $")
 #endif /* lint */
 
 #include "magic.h"
@@ -1260,7 +1260,8 @@ mcopy(struct magic_set *ms, union VALUETYPE *p, int type, int indir,
                                if (*dst == '\0') {
                                        if (type == FILE_BESTRING16 ?
                                            *(src - 1) != '\0' :
-                                           *(src + 1) != '\0')
+                                           ((src + 1 < esrc) &&
+                                           *(src + 1) != '\0'))
                                                *dst = ' ';
                                }
                        }