Bug #79987 [Opn->Asn]: Memory leak in SplFileInfo because of missing zend_restore_error_handling()
| From: | dmitry@php.net | Date: | Tue, 18 Aug 2020 08:00:53 +0000 |
| Subject: | Bug #79987 [Opn->Asn]: Memory leak in SplFileInfo because of missing zend_restore_error_handling() | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-228631@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=79987&edit=1
ID: 79987
Updated by: dmitry@php.net
Reported by: dmitry@php.net
Summary: Memory leak in SplFileInfo because of missing
zend_restore_error_handling()
-Status: Open
+Status: Assigned
Type: Bug
Package: SPL related
Operating System: *
PHP Version: 8.0Git-2020-08-18 (Git)
-Assigned To:
+Assigned To: dmitry
Block user comment: N
Private report: N
Previous Comments:
------------------------------------------------------------------------
[2020-08-18 08:00:31] dmitry@php.net
Description:
------------
Some SplFileInfo methods don't restore original error handler in exceptional cases.
This leads to memory leaks.
Test script:
---------------
<?php
class BadSplFileInfo extends SplFileInfo {
public function __construct() {
}
}
$x = new BadSplFileInfo();
set_error_handler(function ($type, $msg, $file, $line, $context = []) {
echo "ops\n";
});
try {
var_dump($x->getLinkTarget());
} catch (Throwable $e) {
echo $e->getMessage() . "\n";
}
?>
Expected result:
----------------
Object not initialized
Actual result:
--------------
Object not initialized
Zend/zend_closures.c(479) : Freeing 0xf3c5d380 (204 bytes)
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=79987&edit=1