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