From 5c46c52f0964d7434cf8191ee966e6b6fc073119 Mon Sep 17 00:00:00 2001 From: Antony Dovgal Date: Wed, 5 Mar 2008 12:09:33 +0000 Subject: [PATCH] apply better fix, so that the default handle would be closed when closing its reference --- ext/standard/dir.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/ext/standard/dir.c b/ext/standard/dir.c index 64d1049ece4..42140297ee3 100644 --- a/ext/standard/dir.c +++ b/ext/standard/dir.c @@ -278,13 +278,15 @@ PHP_FUNCTION(closedir) { zval **id, **tmp, *myself; php_stream *dirp; + int rsrc_id; FETCH_DIRP(); - if (dirp->rsrc_id == DIRG(default_dir)) { + rsrc_id = dirp->rsrc_id; + zend_list_delete(dirp->rsrc_id); + + if (rsrc_id == DIRG(default_dir)) { php_set_default_dir(-1 TSRMLS_CC); - } else { - zend_list_delete(dirp->rsrc_id); } } /* }}} */