mirror of
https://github.com/php/php-src.git
synced 2025-08-17 14:38:49 +02:00
Overflow check
This commit is contained in:
parent
5e001c34ec
commit
d4b3f89c53
1 changed files with 6 additions and 1 deletions
|
@ -107,6 +107,8 @@ static ZEND_INI_MH(OnUpdateMemoryConsumption)
|
||||||
#else
|
#else
|
||||||
char *base = (char *) ts_resource(*((int *) mh_arg2));
|
char *base = (char *) ts_resource(*((int *) mh_arg2));
|
||||||
#endif
|
#endif
|
||||||
|
zend_long overflow;
|
||||||
|
double dummy;
|
||||||
|
|
||||||
/* keep the compiler happy */
|
/* keep the compiler happy */
|
||||||
(void)entry; (void)mh_arg2; (void)mh_arg3; (void)stage;
|
(void)entry; (void)mh_arg2; (void)mh_arg3; (void)stage;
|
||||||
|
@ -130,7 +132,10 @@ static ZEND_INI_MH(OnUpdateMemoryConsumption)
|
||||||
|
|
||||||
ini_entry->value = zend_string_init(new_new_value, 1, 1);
|
ini_entry->value = zend_string_init(new_new_value, 1, 1);
|
||||||
}
|
}
|
||||||
*p = memsize * (1024 * 1024);
|
ZEND_SIGNED_MULTIPLY_LONG(memsize, 1024 * 1024, *p, dummy, overflow);
|
||||||
|
if (UNEXPECTED(overflow)) {
|
||||||
|
*p = ZEND_ULONG_MAX;
|
||||||
|
}
|
||||||
return SUCCESS;
|
return SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue