mirror of
https://github.com/php/php-src.git
synced 2025-08-18 15:08:55 +02:00
restore good patch parts
This commit is contained in:
parent
9e3be05e32
commit
1a7798c786
1 changed files with 8 additions and 14 deletions
|
@ -624,11 +624,12 @@ mprint(struct magic_set *ms, struct magic *m)
|
|||
t = ms->offset + sizeof(double);
|
||||
break;
|
||||
|
||||
case FILE_SEARCH:
|
||||
case FILE_REGEX: {
|
||||
char *cp;
|
||||
int rval;
|
||||
|
||||
cp = zend_strndup((const char *)ms->search.s, ms->search.rm_len);
|
||||
cp = estrndup((const char *)ms->search.s, ms->search.rm_len);
|
||||
if (cp == NULL) {
|
||||
file_oomem(ms, ms->search.rm_len);
|
||||
return -1;
|
||||
|
@ -647,15 +648,6 @@ mprint(struct magic_set *ms, struct magic *m)
|
|||
break;
|
||||
}
|
||||
|
||||
case FILE_SEARCH:
|
||||
if (file_printf(ms, F(ms, m, "%s"), m->value.s) == -1)
|
||||
return -1;
|
||||
if ((m->str_flags & REGEX_OFFSET_START))
|
||||
t = ms->search.offset;
|
||||
else
|
||||
t = ms->search.offset + m->vallen;
|
||||
break;
|
||||
|
||||
case FILE_DEFAULT:
|
||||
case FILE_CLEAR:
|
||||
if (file_printf(ms, "%s", m->desc) == -1)
|
||||
|
@ -1643,7 +1635,7 @@ mget(struct magic_set *ms, const unsigned char *s, struct magic *m,
|
|||
break;
|
||||
|
||||
case FILE_REGEX:
|
||||
if (nbytes < offset)
|
||||
if (OFFSET_OOB(nbytes, offset, 0))
|
||||
return 0;
|
||||
break;
|
||||
|
||||
|
@ -1652,8 +1644,7 @@ mget(struct magic_set *ms, const unsigned char *s, struct magic *m,
|
|||
offset += CAST(uint32_t, o);
|
||||
if (offset == 0)
|
||||
return 0;
|
||||
|
||||
if (nbytes < offset)
|
||||
if (OFFSET_OOB(nbytes, offset, 0))
|
||||
return 0;
|
||||
|
||||
if ((pb = file_push_buffer(ms)) == NULL)
|
||||
|
@ -1684,7 +1675,7 @@ mget(struct magic_set *ms, const unsigned char *s, struct magic *m,
|
|||
return rv;
|
||||
|
||||
case FILE_USE:
|
||||
if (nbytes < offset)
|
||||
if (OFFSET_OOB(nbytes, offset, 0))
|
||||
return 0;
|
||||
rbuf = m->value.s;
|
||||
if (*rbuf == '^') {
|
||||
|
@ -1908,6 +1899,7 @@ magiccheck(struct magic_set *ms, struct magic *m)
|
|||
break;
|
||||
|
||||
default:
|
||||
matched = 0;
|
||||
file_magerror(ms, "cannot happen with float: invalid relation `%c'",
|
||||
m->reln);
|
||||
return -1;
|
||||
|
@ -1941,6 +1933,7 @@ magiccheck(struct magic_set *ms, struct magic *m)
|
|||
break;
|
||||
|
||||
default:
|
||||
matched = 0;
|
||||
file_magerror(ms, "cannot happen with double: invalid relation `%c'", m->reln);
|
||||
return -1;
|
||||
}
|
||||
|
@ -2189,6 +2182,7 @@ magiccheck(struct magic_set *ms, struct magic *m)
|
|||
break;
|
||||
|
||||
default:
|
||||
matched = 0;
|
||||
file_magerror(ms, "cannot happen: invalid relation `%c'",
|
||||
m->reln);
|
||||
return -1;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue