Commit Graph

110 Commits

Author SHA1 Message Date
Steph Fox
27340e60fc - Fixed config.w32 to keep Elizabeth happy
- NB This whole lot still might disappear, OpenSSL patch review pending
2008-07-07 01:13:14 +00:00
Steph Fox
2c9df0990d - We forgot to check that the phar exists before trying to extract files from it :) 2008-07-07 01:11:07 +00:00
Steph Fox
5db08e7d1f Duplicate tests to accommodate parameter parsing fixes in 5_3 core
(NB the 5_2 tests will fail currently due to name changes, will fix tomorrow)
2008-07-07 01:09:21 +00:00
Greg Beaver
37c684ab3d in preparation for a performance optimization that involves
eliminating phar's interception of zend_compile in favor of a new to-be-added hook in PHP 5.3+,
allow "include 'phar:///path/to/my.phar';" to work as equivalent to
php /path/to/my.phar
this slight change in scripting still allows inclusion and execution of phar stub, but removes the need to
check and modify path in zend_compile, which allows us to play much nicer with external tools like
debuggers/opcode caches
2008-06-27 01:21:12 +00:00
Greg Beaver
8bf72978b3 fix several issues:
1) segfault in phar_buildfromdirectoryiterator8.phpt
2) tests failing because SKIPDOTS is default on 64 bit, not on 32
3) Marcus, you really need to add SKIPDOTS as a class constant, so we don't have to use 0x00001000
2008-06-24 01:11:27 +00:00
Steph Fox
b9e8695e75 - One solution for the openssl issues
- config.m4 needs bringing into line with config.w32, there may be broken behaviour under *nix until this is done
2008-06-23 19:18:01 +00:00
Steph Fox
019c586191 - Wrong SKIPIF message 2008-06-23 17:48:23 +00:00
Greg Beaver
10f6d9a556 true fix for potential segfault in phar_build 2008-06-23 04:00:23 +00:00
Greg Beaver
fb448c5c28 fix tar-related failures 2008-06-23 03:55:50 +00:00
Steph Fox
c68a82ac7d - Revert the two blocks of code that implement the phar_build optimization, causes segfaults under *nix
- Leave the new structure in place to make re-implementation trivial
2008-06-22 16:35:26 +00:00
Steph Fox
f3844ecd17 - Revert the tar.c part of the inode calculation fix
- All tests now pass under win32, please test under *nix/osx (4 known fails at present)
2008-06-22 14:46:10 +00:00
Steph Fox
332a185e08 - ws, typo fix 2008-06-22 13:10:03 +00:00
Greg Beaver
3a8b14f83f fix inode calculation, we need fname to be set for phar/tar formats prior to manifest parsing 2008-06-22 00:50:32 +00:00
Greg Beaver
0ad165e402 new tests for phar.cache_list 2008-06-22 00:49:54 +00:00
Steph Fox
0e5b3a3527 - Don't free stuff you still need 2008-06-21 21:37:39 +00:00
Steph Fox
35e0565a4b - Kill a couple of double frees and a memleak
@Greg: You may want to run valgrind over the filestat functions before release..
2008-06-21 20:47:35 +00:00
Steph Fox
ad20b9e6bb - pefree pemalloc'd filename 2008-06-21 20:14:43 +00:00
Steph Fox
22fb73c71e - Fix macro definition syntax
- Remove pre-existing workaround
2008-06-21 19:40:41 +00:00
Steph Fox
f43a2be8cd - fix for segfault in 5.2 (patch from Greg) 2008-06-21 19:15:46 +00:00
Steph Fox
b964ec6e5d - ws 2008-06-21 18:57:53 +00:00
Greg Beaver
4b77c2baa5 define ALLOC_PERMANENT_ZVAL for PHP 5.2 2008-06-21 17:05:32 +00:00
Greg Beaver
eb0a98939a PHP 5.2 fixes to direct include of compressed archives 2008-06-21 17:05:18 +00:00
Greg Beaver
baee4e6028 close stream on failure 2008-06-21 06:55:56 +00:00
Greg Beaver
529aa19cc7 82x(./profile2) speedup for buildFrom*() 2008-06-21 06:53:10 +00:00
Greg Beaver
14c26d05ba fix leak 2008-06-21 06:21:58 +00:00
Steph Fox
97cf2a15da - 5_2 compatibility stuff (so we can stay in sync with PECL) 2008-06-20 16:29:36 +00:00
Steph Fox
c88e99d9ea - Use SKIP_SLOW_TESTS where it's most useful 2008-06-20 14:42:04 +00:00
Steph Fox
6ef7aef1d4 - Kill the last compiler warning under 5.3 (release-only) 2008-06-20 14:40:53 +00:00
Steph Fox
fc08a7cc2f The only reason that particular 'real solution' wasn't applied in the first place was that it also breaks the shared build
Maybe we don't need to call a non-existent dtor if we're going to physically apply zend_hash_graceful_reverse_destroy()?
- This works on my box, please test under *nix/OSX
2008-06-20 12:21:32 +00:00
Johannes Schlüter
62726c967c - Fix ZTS build (not required on HEAD, patch by Uwe Pries) 2008-06-20 09:17:53 +00:00
Greg Beaver
aff3636d9c minor performance improvement 2008-06-20 06:37:14 +00:00
Greg Beaver
7cc6b9f3f5 making progress - up to 42/phar vs. 48/disk with these optimizations 2008-06-20 05:42:58 +00:00
Greg Beaver
5233505043 revert really bad solution to the zend_init_rsrc_list/zend_destroy_rsrc_list problem, replace with real solution 2008-06-20 04:50:11 +00:00
Steph Fox
5d4eed8f47 - inherited methods don't unixify paths along the way. Allow for it. 2008-06-18 16:48:18 +00:00
Steph Fox
aa694b8b51 - Kill 10 MSVC compiler warnings due to type conflict
- Make cached manifest test platform agnostic
- Comment out zend_(init|destroy)_rsrc_list() and associated references

@Greg: cached manifest test (now) passes here regardless, make of that what you will
2008-06-18 15:06:50 +00:00
Pierre Joye
e5e9be2d1a - really fix the windows builds, don't cast many times when only the hash function requires void **
- copy/paste evilness with TSRM_CC/DC
(tests still pass but would be nice to speed them up...)
2008-06-18 10:20:47 +00:00
Greg Beaver
cbe23b9f20 fix windows build and more performance jumps (these are minor)
implement real copy-on-write
use virtual_dirs for wrapper stat
2008-06-18 06:38:47 +00:00
Greg Beaver
d8d31bc591 remove unused variables in phar_fix_filepath
copy virtual_dirs to avoid segfault on multi-process
fix metadata reading for phar.cache_list
initialize manifest to exact size needed (performance increase)
fix freeing of signature on error to use the correct persist value (fixes segfault on error in cache.list)
reset EG(regular_list) so it is identical to how we found it
2008-06-16 04:10:53 +00:00
Greg Beaver
4e65a58146 fix hashtable creation for tar to be estimated size needed 2008-06-16 04:09:20 +00:00
Greg Beaver
03b9673ba2 fix hashtable creation for zip to be exact size needed, fix endian issue for loading manifest 2008-06-16 04:06:59 +00:00
Greg Beaver
c353e9277e minor performance improvement 2008-06-15 23:00:46 +00:00
Greg Beaver
5e3f592d88 fix memleak 2008-06-15 22:51:46 +00:00
Greg Beaver
4104786072 another optimization - move inode hash to initial manifest parsing, improves runtime perf of stat slightly 2008-06-15 21:42:20 +00:00
Greg Beaver
d8ed660a02 minor optimization 2008-06-15 21:15:29 +00:00
Greg Beaver
04e257a8e1 HUGE speed improvement, from 19 req/sec to 27 req/sec for phpMyAdmin - now speed with apc+phar.cache_list = on-disk speedcvs diff -u |less This is by generating a list of virtual directories and using those in stat calls instead of scanning the whole manifest hash table. on-disk phpMyAdmin = 28 req/sec 2008-06-15 18:15:48 +00:00
Felipe Pena
c772aca929 - Fix build (ZTS) 2008-06-13 22:28:55 +00:00
Greg Beaver
4f9daeed11 [DOC] implement full signature support for tar-based archives. By default, data archives do
not have a signature, but can have one set via setSignatureAlgorithm()
2008-06-13 22:07:44 +00:00
Greg Beaver
5ff4deaa53 full refactor of signatures complete - now to implement them for tar as a starting point 2008-06-13 20:15:19 +00:00
Greg Beaver
09e1f0249e PHP_5_2 compat - add pestrndup if undefined 2008-06-13 15:59:13 +00:00
Felipe Pena
d61f32d021 - Fix build (ZTS) 2008-06-13 13:06:46 +00:00