diff options
| -rw-r--r-- | Zend/zend_language_scanner.l | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/Zend/zend_language_scanner.l b/Zend/zend_language_scanner.l index 54328906c9..b1573c58e6 100644 --- a/Zend/zend_language_scanner.l +++ b/Zend/zend_language_scanner.l @@ -281,6 +281,11 @@ int zend_compare_file_handles(zend_file_handle *fh1, zend_file_handle *fh2) ZEND_API void zend_destroy_file_handle(zend_file_handle *file_handle TSRMLS_DC) { zend_llist_del_element(&CG(open_files), file_handle, (int (*)(void *, void *)) zend_compare_file_handles); + /* zend_file_handle_dtor() operates on the copy, so we have to NULLify the original here */ + file_handle->opened_path = NULL; + if (file_handle->free_filename) { + file_handle->filename = NULL; + } } /* Convert one octal digit to a numeric value 0..7, or -1 on failure */ |
