]> granicus.if.org Git - php/commit
Remove bogus generator iterator dtor
authorNikita Popov <nikita.ppv@gmail.com>
Tue, 30 Jun 2020 15:28:47 +0000 (17:28 +0200)
committerNikita Popov <nikita.ppv@gmail.com>
Tue, 30 Jun 2020 15:32:42 +0000 (17:32 +0200)
commit187a72d563914a0f9a0f97d26956aff4fb5c3fe6
tree707c403ef626c87d9ceebc92c6c69291036082e2
parentfc6f53d426bde3e3ab4e73d44abba54fdb9891f7
Remove bogus generator iterator dtor

Fixes a use-after-free encountered in Symfony's SecurityBundle.
I don't have a reproducer for this, and believe the issue can only
occur if we leak an iterator (the leak is a separate issue).

We should not free the generator iterator here, because we do not
own it. The code that fetched the iterator is responsible for
releasing it. In the rare case where we do hit this code-path,
we cause a use-after-free.
Zend/zend_generators.c