mirror of
https://github.com/php/php-src.git
synced 2025-08-20 09:24:05 +02:00
Fix #80002: calc free space for new interned string is wrong
We need to calculate the free size in bytes. Patch contributed by t-matsuno. Closes GH-6024
This commit is contained in:
parent
b2a33ab06b
commit
fcd26ffcc3
2 changed files with 5 additions and 1 deletions
4
NEWS
4
NEWS
|
@ -6,6 +6,10 @@ PHP NEWS
|
|||
. Fixed bug #80007 (Potential type confusion in unixtojd() parameter parsing).
|
||||
(Andy Postnikov)
|
||||
|
||||
- OPcache:
|
||||
. Fixed bug #80002 (calc free space for new interned string is wrong).
|
||||
(t-matsuno)
|
||||
|
||||
03 Sep 2020, PHP 7.3.22
|
||||
|
||||
- Core:
|
||||
|
|
|
@ -487,7 +487,7 @@ zend_string* ZEND_FASTCALL accel_new_interned_string(zend_string *str)
|
|||
} while (pos != STRTAB_INVALID_POS);
|
||||
}
|
||||
|
||||
if (UNEXPECTED(ZCSG(interned_strings).end - ZCSG(interned_strings).top < STRTAB_STR_SIZE(str))) {
|
||||
if (UNEXPECTED((char*)ZCSG(interned_strings).end - (char*)ZCSG(interned_strings).top < STRTAB_STR_SIZE(str))) {
|
||||
/* no memory, return the same non-interned string */
|
||||
zend_accel_error(ACCEL_LOG_WARNING, "Interned string buffer overflow");
|
||||
return str;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue