Fixed bug #76754 (parent private constant in extends class memory leak)

This commit is contained in:
Xinchen Hui 2018-08-17 13:35:15 +08:00
parent 64c88c1e16
commit 04c4854fdf
3 changed files with 21 additions and 1 deletions

2
NEWS
View file

@ -3,6 +3,8 @@ PHP NEWS
?? ??? ????, PHP 7.1.22
- Core:
. Fixed bug #76754 (parent private constant in extends class memory leak).
(Laruence)
. Fixed bug #72443 (Generate enabled extension). (petk)
- Bz2:

18
Zend/tests/bug76754.phpt Normal file
View file

@ -0,0 +1,18 @@
--TEST--
Bug #76754 (parent private constant in extends class memory leak)
--INI--
opcache.enable=0
opcache.enable_cli=0
--FILE--
<?php
class FOO
{
private const FOO = 'BAR';
}
class BAR extends FOO { }
?>
okey
--EXPECT--
okey

View file

@ -296,8 +296,8 @@ ZEND_API void destroy_zend_class(zval *zv)
}
}
} ZEND_HASH_FOREACH_END();
zend_hash_destroy(&ce->constants_table);
}
zend_hash_destroy(&ce->constants_table);
if (ce->num_interfaces > 0 && ce->interfaces) {
efree(ce->interfaces);
}