Commit Graph

960 Commits

Author SHA1 Message Date
Dmitry Stogov
77ed819430 Fixed bug #54323 (Accessing unset()'ed ArrayObject's property causes crash) 2011-04-07 14:52:30 +00:00
Pierrick Charron
1368364469 Fix common typos in the source code (Reported in Bug #54065)
# External libraries were excluded
# Thanks eitan at eitanadler dot com for the first patch :)
2011-04-03 21:46:52 +00:00
Gustavo André dos Santos Lopes
f7b7b6aa9e - Improved upon r309729.
- Extented strategy to remaining the classes on spl_directory.c, even those that don't crash.
- UPGRADING.
- Better bug54384.phpt, with all the classes covered.
2011-03-27 22:44:34 +00:00
Arnaud Le Blanc
b83e243c23 Added CallbackFilterIterator and RecursiveCallbackFilterIterator classes
[DOC] This is a concrete FilterIterator which takes a callback as
constructor parameter, and uses this callback for filtering. This allows
to use FilterIterator without extending it.

CallbackFilterIterator Example:

$it = new ArrayIterator(range(1,100));
$it = new CallbackFilterIterator($it, function($value) {
	return $value % 2;
});
foreach($it as $value) // ...

RecursiveCallbackFilterIterator Example:

$it = new RecursiveDirectoryIterator("/");
$it = new RecursiveCallbackFilterIterator($it, function($file, $k, $it) {
	return $it->hasChildren() || $file->getSize() > 1024;
});
foreach(new RecursiveIteratorIterator($it) as $file) // ...

The callback takes the current value, the current key and the inner
iterator as parameters.
2011-03-27 20:13:27 +00:00
Gustavo André dos Santos Lopes
c2fe893985 - Fixed bug #54384: Several SPL classes crash when parent constructor is
not called.
#Merge to 5.3 pending (slight BC break on AppendIterator, as it's no
#longer possible to defer the call to the parent constructor until
#after the constructor is performed).
#Bugs fixed in an atypical way for SPL. The parent constructor call
#check is performed at construction time by using a wrapper constructor
#instead of a check on the beginning of each instance method.
#Perhaps this should be uniformized in trunk; this method was mainly
#applied only to the ones crashing, except a few iterators (at least
#AppendIterator and RecursiveIteratorIterator).
2011-03-27 04:21:06 +00:00
Felipe Pena
39e0aa4dc6 - Fixed bug #54292 (Wrong parameter causes crash in SplFileObject::__construct()) 2011-03-23 22:46:04 +00:00
Felipe Pena
11c4a5b96a - Fixed bug #54281 (Crash in non-initialized RecursiveIteratorIterator) 2011-03-22 22:41:16 +00:00
Gustavo André dos Santos Lopes
8deb11c0c3 - Fixed bug #54291 (Crash iterating DirectoryIterator for dir name starting
with \0).
2011-03-19 23:15:04 +00:00
Felipe Pena
67fa13a3ca - Fixed bug #49608 (Using CachingIterator on DirectoryIterator instance segfaults) 2011-03-08 19:56:29 +00:00
Felipe Pena
18097605b7 - Fixed SplObjectStorage::offsetSet arginfo, reported in bug #54118 2011-03-01 00:13:23 +00:00
Felipe Pena
a47eb9a4d6 - Fixed memory leak in DirectoryIterator::getExtension() and SplFileInfo::getExtension() 2011-02-20 16:33:53 +00:00
Felipe Pena
c4850dbf88 - Fixed bug #54040 (Logical && where & probably needed in spl_iterators) 2011-02-20 16:09:50 +00:00
Adam Harvey
6bc25ca285 Fix bug #53914 (SPL assumes HAVE_GLOB is defined). Original patch by Chris
Jones; test updates by myself.
2011-02-04 10:49:49 +00:00
Adam Harvey
3571c955b5 Implement request #53659 (Implementing RegexIterator::getRegex() method). Patch
by Joshua Thijssen.
2011-01-06 02:32:02 +00:00
Adam Harvey
e7a1d5004e Remove empty files left when r306542 was reverted in r306552. 2011-01-06 02:24:49 +00:00
Etienne Kneuss
78728e33fa Implement SplObjectStorage::removeAllExcept (Patch by Matthey Turland) 2011-01-05 15:01:18 +00:00
Felipe Pena
0203cc3d44 - Year++ 2011-01-01 02:17:06 +00:00
Eyal Teutsch
83ef8850a0 SplFileObject_fgetcsv files: SplFileObject__fgetcsv.csv used instead of SplFileObject::fgetcsv.csv, as to make this naming convetion windows legitimate 2010-12-26 13:29:29 +00:00
Peter Cowburn
064a254483 Implemented FR #48767 (SplFileInfo::getExtension()) 2010-12-23 22:32:52 +00:00
Gustavo André dos Santos Lopes
9b698dbcea - Revert of revision 306542, turns out the semantics of compare() are
different in SplMinHeap and SplMaxHeap.
2010-12-21 19:52:17 +00:00
Gustavo André dos Santos Lopes
4a11d76a75 - Fixed bug #53588 (SplMinHeap bad sorting with custom compare
function).
2010-12-21 17:29:14 +00:00
Eyal Teutsch
8e2475a787 moved the second unlink() to the CLEAN section in the SplFileObject_fwrite_variation* tests 2010-12-12 07:24:51 +00:00
Pierre Joye
a7ffa09e18 - add PHP_INSTALL_HEADERS to all parts (core&exts) exposing headers, generate the install-headers cmd 2010-12-11 22:18:10 +00:00
Felipe Pena
13c99651fc - Fixed bug #53515 (property_exists incorrect on ArrayObject null and 0 values) 2010-12-10 23:58:33 +00:00
Dmitry Stogov
c35fc78890 Fixed bug #53511 (Exceptions are lost in case an exception is thrown in catch operator) 2010-12-09 16:38:37 +00:00
Eyal Teutsch
f69051602a test bug42364 included a superfluous ?> 2010-12-09 12:39:21 +00:00
Felipe Pena
9608da9443 - Fixed bug #53362 (Segmentation fault when extending SplFixedArray) 2010-11-19 20:07:32 +00:00
Jani Taskinen
6d7fa61843 - Fix test 2010-11-17 14:54:37 +00:00
Felipe Pena
8192f0f771 - Added missing void arg checks 2010-11-14 18:40:08 +00:00
Adam Harvey
6cb7ea4089 Implemented FR #53264 (Add fputcsv method to SplFileObject). 2010-11-09 15:07:50 +00:00
Adam Harvey
150a741fee Fix bug #53279 (SplFileObject doesn't initialise default CSV escape character). 2010-11-09 14:53:23 +00:00
Felipe Pena
590ad22361 - Fix the fix (wrong behavior) 2010-11-08 20:26:14 +00:00
Felipe Pena
d31e4e7f8e - Fixed bug #50579 (RegexIterator::REPLACE doesn't work) 2010-11-06 00:09:50 +00:00
Gustavo André dos Santos Lopes
21d704063d - Small optimization of the fix of bug #53071. It's not necessary to destroy
the debug info as it's not holding references anymore (the fix removed
  the refcount increments).
2010-10-25 02:03:20 +00:00
Gustavo André dos Santos Lopes
7fcce35f9b - Fixed bug #53071 (SPLObjectStorage defeats gc_collect_cycles). 2010-10-25 01:41:54 +00:00
Felipe Pena
f0d2559d26 - Fixed bug #53144 (SplObjectStorage::removeAll()) 2010-10-24 14:03:07 +00:00
Pierre Joye
b4368a76cd - Implement bug #51804, splFileInfo::getLinkTarget() on Windows 2010-09-10 14:17:40 +00:00
Felipe Pena
f3028b9226 - Improved fix for bug #52573 2010-08-18 01:59:37 +00:00
Felipe Pena
c10bb27254 - Fixed bug #52573 (SplFileObject::fscanf Segmentation fault) 2010-08-10 22:37:24 +00:00
Felipe Pena
84bc1c8593 - Fixed bug #50481 (Storing many SPLFixedArray in an array crashes) 2010-08-08 23:56:29 +00:00
Felipe Pena
c0c5c1ad4c - Fixed ZTS build 2010-07-07 22:46:54 +00:00
Etienne Kneuss
bb15b92d2d Fixed #51697 (Unsafe operations in free_storage of SPL iterators,
causes crashes during shutdown)
2010-07-07 21:55:17 +00:00
Johannes Schlüter
21d5041c03 Fix bug #52238: Crash when an Exception occured in iterator_to_array 2010-07-02 19:17:45 +00:00
Stanislav Malyshev
de8022e905 fix SplObjectStorage unserialization (CVE-2010-2225) 2010-06-29 00:58:31 +00:00
Ben Longden
45bd9b385e Added tests for SplFileObject::fgetcsv 2010-06-15 21:25:47 +00:00
Ben Longden
675a0539db Tests for SplTempFileObject
Basic usage (no params)
Basic usage (with max memory specified)
Variation (passing a neg value to the constructor)
Error (Passing a non long int value to constructor)
2010-06-15 10:50:53 +00:00
Felipe Pena
18dd664e5c - Fixed bug #51991 (spl_autoload and *nix support with namespace) 2010-06-04 00:10:15 +00:00
Felipe Pena
f4dcfef570 - Fix test 2010-06-03 23:22:39 +00:00
Michael Wallner
89e93723fb Added support for object references in recursive serialize() calls. FR #36424 2010-05-26 07:24:37 +00:00
Dmitry Stogov
c5237d82bf Added caches to eliminate repeatable run-time bindings of functions, classes, constants, methods and properties 2010-05-24 14:11:39 +00:00