cellog Fri Jun 5 04:44:55 2009 UTC Modified files: /php-src/ext/phar phar_object.c /php-src/ext/phar/tests phar_oo_011.phpt Log: fixed isset() on sub-directories (isset('blah') if file 'blah/foo.php' exists) http://cvs.php.net/viewvc.cgi/php-src/ext/phar/phar_object.c?r1=1.298&r2=1.299&diff_format=u Index: php-src/ext/phar/phar_object.c diff -u php-src/ext/phar/phar_object.c:1.298 php-src/ext/phar/phar_object.c:1.299 --- php-src/ext/phar/phar_object.c:1.298 Sun May 24 18:50:37 2009 +++ php-src/ext/phar/phar_object.c Fri Jun 5 04:44:55 2009 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: phar_object.c,v 1.298 2009/05/24 18:50:37 cellog Exp $ */ +/* $Id: phar_object.c,v 1.299 2009/06/05 04:44:55 cellog Exp $ */ #include "phar_internal.h" #include "func_interceptors.h" @@ -3526,6 +3526,9 @@ } RETURN_TRUE; } else { + if (zend_hash_exists(&phar_obj->arc.archive->virtual_dirs, fname, (uint) fname_len)) { + RETURN_TRUE; + } RETURN_FALSE; } } http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/phar_oo_011.phpt?r1=1.8&r2=1.9&diff_format=u Index: php-src/ext/phar/tests/phar_oo_011.phpt diff -u php-src/ext/phar/tests/phar_oo_011.phpt:1.8 php-src/ext/phar/tests/phar_oo_011.phpt:1.9 --- php-src/ext/phar/tests/phar_oo_011.phpt:1.8 Wed Feb 20 13:32:59 2008 +++ php-src/ext/phar/tests/phar_oo_011.phpt Fri Jun 5 04:44:55 2009 @@ -16,9 +16,10 @@ $phar = new Phar($fname); $phar->setInfoClass('SplFileObject'); -$phar['f.php'] = 'hi'; -var_dump(isset($phar['f.php'])); -echo $phar['f.php']; +$phar['hi/f.php'] = 'hi'; +var_dump(isset($phar['hi'])); +var_dump(isset($phar['hi/f.php'])); +echo $phar['hi/f.php']; echo "\n"; ?> @@ -30,5 +31,6 @@ ?> --EXPECT-- bool(true) +bool(true) hi ===DONE===
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php