Skip to content

Commit 1550451

Browse files
committed
Update libmagic.patch [ci skip]
1 parent 3fd46e1 commit 1550451

File tree

1 file changed

+13
-34
lines changed

1 file changed

+13
-34
lines changed

ext/fileinfo/libmagic.patch

Lines changed: 13 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -951,7 +951,7 @@ diff -u libmagic.orig/ascmagic.c libmagic/ascmagic.c
951951
}
952952
diff -u libmagic.orig/cdf.c libmagic/cdf.c
953953
--- libmagic.orig/cdf.c 2017-05-08 20:10:13.000000000 +0200
954-
+++ libmagic/cdf.c 2018-11-04 00:59:30.775724767 +0100
954+
+++ libmagic/cdf.c 2018-11-07 19:06:50.045202539 +0100
955955
@@ -43,7 +43,17 @@
956956
#include <err.h>
957957
#endif
@@ -3205,7 +3205,7 @@ diff -u libmagic.orig/readcdf.c libmagic/readcdf.c
32053205
*ec = '\0';
32063206
diff -u libmagic.orig/softmagic.c libmagic/softmagic.c
32073207
--- libmagic.orig/softmagic.c 2017-05-08 20:10:13.000000000 +0200
3208-
+++ libmagic/softmagic.c 2018-11-05 20:23:12.586762678 +0100
3208+
+++ libmagic/softmagic.c 2018-11-10 13:08:23.811239067 +0100
32093209
@@ -43,6 +43,10 @@
32103210
#include <time.h>
32113211
#include "der.h"
@@ -3267,7 +3267,7 @@ diff -u libmagic.orig/softmagic.c libmagic/softmagic.c
32673267
- if (rc) {
32683268
- file_regerror(&rx, rc, ms);
32693269
+ (void)setlocale(LC_CTYPE, "C");
3270-
+ pattern = zend_string_init("~%[-0-9.]*s~", sizeof("~%[-0-9.]*s~") - 1, 0);
3270+
+ pattern = zend_string_init("~%[-0-9\\.]*s~", sizeof("~%[-0-9\\.]*s~") - 1, 0);
32713271
+ if ((pce = pcre_get_compiled_regex(pattern, &re_extra, &re_options)) == NULL) {
32723272
+ rv = -1;
32733273
} else {
@@ -3303,45 +3303,24 @@ diff -u libmagic.orig/softmagic.c libmagic/softmagic.c
33033303
private int32_t
33043304
mprint(struct magic_set *ms, struct magic *m)
33053305
{
3306-
@@ -667,19 +657,18 @@
3307-
t = ms->offset + sizeof(double);
3308-
break;
3309-
3310-
- case FILE_SEARCH:
3311-
case FILE_REGEX: {
3306+
@@ -672,14 +662,10 @@
33123307
char *cp;
33133308
int rval;
33143309

33153310
- cp = strndup((const char *)ms->search.s, ms->search.rm_len);
3311+
- if (cp == NULL) {
3312+
- file_oomem(ms, ms->search.rm_len);
3313+
- return -1;
3314+
- }
33163315
+ cp = estrndup((const char *)ms->search.s, ms->search.rm_len);
3317-
if (cp == NULL) {
3318-
file_oomem(ms, ms->search.rm_len);
3319-
return -1;
3320-
}
33213316
rval = file_printf(ms, F(ms, m, "%s"),
33223317
file_printable(sbuf, sizeof(sbuf), cp));
33233318
- free(cp);
33243319
+ efree(cp);
33253320

33263321
if (rval == -1)
33273322
return -1;
3328-
@@ -691,6 +680,15 @@
3329-
break;
3330-
}
3331-
3332-
+ case FILE_SEARCH:
3333-
+ if (file_printf(ms, F(ms, m, "%s"), m->value.s) == -1)
3334-
+ return -1;
3335-
+ if ((m->str_flags & REGEX_OFFSET_START))
3336-
+ t = ms->search.offset;
3337-
+ else
3338-
+ t = ms->search.offset + m->vallen;
3339-
+ break;
3340-
+
3341-
case FILE_DEFAULT:
3342-
case FILE_CLEAR:
3343-
if (file_printf(ms, "%s", m->desc) == -1)
3344-
@@ -1373,9 +1371,6 @@
3323+
@@ -1373,9 +1359,6 @@
33453324
m->type, m->flag, offset, o, nbytes,
33463325
*indir_count, *name_count);
33473326
mdebug(offset, (char *)(void *)p, sizeof(union VALUETYPE));
@@ -3351,7 +3330,7 @@ diff -u libmagic.orig/softmagic.c libmagic/softmagic.c
33513330
}
33523331

33533332
if (m->flag & INDIR) {
3354-
@@ -1488,9 +1483,6 @@
3333+
@@ -1488,9 +1471,6 @@
33553334
if ((ms->flags & MAGIC_DEBUG) != 0) {
33563335
mdebug(offset, (char *)(void *)p,
33573336
sizeof(union VALUETYPE));
@@ -3361,7 +3340,7 @@ diff -u libmagic.orig/softmagic.c libmagic/softmagic.c
33613340
}
33623341
}
33633342

3364-
@@ -1572,15 +1564,15 @@
3343+
@@ -1572,15 +1552,15 @@
33653344
if (rv == 1) {
33663345
if ((ms->flags & MAGIC_NODESC) == 0 &&
33673346
file_printf(ms, F(ms, m, "%u"), offset) == -1) {
@@ -3380,7 +3359,7 @@ diff -u libmagic.orig/softmagic.c libmagic/softmagic.c
33803359
return rv;
33813360

33823361
case FILE_USE:
3383-
@@ -1703,6 +1695,41 @@
3362+
@@ -1703,6 +1683,41 @@
33843363
return file_strncmp(a, b, len, flags);
33853364
}
33863365

@@ -3422,7 +3401,7 @@ diff -u libmagic.orig/softmagic.c libmagic/softmagic.c
34223401
private int
34233402
magiccheck(struct magic_set *ms, struct magic *m)
34243403
{
3425-
@@ -1863,65 +1890,77 @@
3404+
@@ -1863,65 +1878,77 @@
34263405
break;
34273406
}
34283407
case FILE_REGEX: {

0 commit comments

Comments
 (0)