1
0
mirror of https://github.com/php/php-src.git synced 2026-04-07 08:02:49 +02:00

Fix string offset signed int UB in jit as well

This commit is contained in:
Nikita Popov
2019-12-20 12:11:07 +01:00
parent ed372541da
commit 2bc0a6e97f

View File

@@ -610,7 +610,7 @@ try_string_offset:
offset = Z_LVAL_P(dim);
}
if (UNEXPECTED(Z_STRLEN_P(container) < (size_t)((offset < 0) ? -offset : (offset + 1)))) {
if (UNEXPECTED(Z_STRLEN_P(container) < ((offset < 0) ? -(size_t)offset : ((size_t)offset + 1)))) {
zend_error(E_WARNING, "Uninitialized string offset: " ZEND_LONG_FMT, offset);
ZVAL_EMPTY_STRING(result);
} else {
@@ -658,7 +658,7 @@ try_string_offset:
offset = Z_LVAL_P(dim);
}
if (UNEXPECTED(Z_STRLEN_P(container) < (size_t)((offset < 0) ? -offset : (offset + 1)))) {
if (UNEXPECTED(Z_STRLEN_P(container) < ((offset < 0) ? -(size_t)offset : ((size_t)offset + 1)))) {
ZVAL_NULL(result);
} else {
zend_uchar c;