cellog Fri Jun 20 06:37:15 2008 UTC Modified files: (Branch: PHP_5_3) /php-src/ext/phar phar.phar util.c Log: minor performance improvement http://cvs.php.net/viewvc.cgi/php-src/ext/phar/phar.phar?r1=1.7.2.21&r2=1.7.2.22&diff_format=u Index: php-src/ext/phar/phar.phar http://cvs.php.net/viewvc.cgi/php-src/ext/phar/util.c?r1=1.55.2.13&r2=1.55.2.14&diff_format=u Index: php-src/ext/phar/util.c diff -u php-src/ext/phar/util.c:1.55.2.13 php-src/ext/phar/util.c:1.55.2.14 --- php-src/ext/phar/util.c:1.55.2.13 Fri Jun 20 05:42:58 2008 +++ php-src/ext/phar/util.c Fri Jun 20 06:37:14 2008 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: util.c,v 1.55.2.13 2008/06/20 05:42:58 cellog Exp $ */ +/* $Id: util.c,v 1.55.2.14 2008/06/20 06:37:14 cellog Exp $ */ #include "phar_internal.h" #ifdef PHAR_HAVE_OPENSSL @@ -251,6 +251,12 @@ fname = zend_get_executed_filename(TSRMLS_C); fname_len = strlen(fname); + if (PHAR_G(last_phar) && !memcmp(fname, "phar://", 7) && fname_len - 7 >= PHAR_G(last_phar_name_len) && !memcmp(fname + 7, PHAR_G(last_phar_name), PHAR_G(last_phar_name_len))) { + arch = estrndup(PHAR_G(last_phar_name), PHAR_G(last_phar_name_len)); + arch_len = PHAR_G(last_phar_name_len); + phar = PHAR_G(last_phar); + goto splitted; + } if (fname_len < 7 || memcmp(fname, "phar://", 7) || SUCCESS != phar_split_fname(fname, strlen(fname), &arch, &arch_len, &entry, &entry_len, 1, 0 TSRMLS_CC)) { return phar_save_resolve_path(filename, filename_len TSRMLS_CC); } @@ -262,6 +268,7 @@ efree(arch); return phar_save_resolve_path(filename, filename_len TSRMLS_CC); } +splitted: if (pphar) { *pphar = phar; }
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php