Commit Graph

281 Commits

Author SHA1 Message Date
Xinchen Hui
c0d060f5c0 Bump year 2014-01-03 11:04:26 +08:00
Dmitry Stogov
65fd18fd88 Merge branch 'PHP-5.6'
* PHP-5.6:
  Improved empty string handling. Now ZE uses an interned string instead of allocation new empty string each time. (Some extensions might need to be fixed using str_efree() instead of efree() to support interned strings).

Conflicts:
	NEWS
	Zend/zend_extensions.h
	Zend/zend_modules.h
2013-12-26 14:51:05 +04:00
Dmitry Stogov
03a37de9b3 Improved empty string handling. Now ZE uses an interned string instead of allocation new empty string each time. (Some extensions might need to be fixed using str_efree() instead of efree() to support interned strings). 2013-12-26 14:47:13 +04:00
Kalle Sommer Nielsen
d14670ccdb Eliminate another TSRMLS_FETCH() in i_zend_is_true()
# Affected extensions have all been updated, ext/opcache and ext/zip
# both have macros for cross version compatibility
2013-12-18 07:25:05 +01:00
Joshua Thijssen
5027fa79d7 Added recursivetreeiterator::setPostfix() method 2013-07-21 22:20:58 -07:00
Xinchen Hui
3f229f4364 Merge branch 'PHP-5.4' into PHP-5.5 2013-06-09 22:25:49 +08:00
Xinchen Hui
f338510c94 Merge branch 'PHP-5.3' into PHP-5.4 2013-06-09 22:25:07 +08:00
Xinchen Hui
75c57122e3 Fixed bug #64997 (Segfault while using RecursiveIteratorIterator on 64-bits systems) 2013-06-09 22:24:48 +08:00
Nikita Popov
fcc6611de9 Add support for non-scalar Iterator keys in foreach
RFC: https://wiki.php.net/rfc/foreach-non-scalar-keys
2013-03-12 17:27:31 +01:00
Xinchen Hui
a666285bc2 Happy New Year 2013-01-01 16:37:09 +08:00
Xinchen Hui
0a7395e009 Happy New Year 2013-01-01 16:28:54 +08:00
Xinchen Hui
a2045ff332 Happy New Year~ 2013-01-01 16:02:16 +08:00
Xinchen Hui
6284ef112e Fixed bug #63236 (Executable permission on various source files) 2012-10-09 13:28:31 +08:00
Xinchen Hui
e4a8fa6a15 Merge branch 'PHP-5.3' into PHP-5.4 2012-10-09 13:29:51 +08:00
Xinchen Hui
75a2c0d715 Merge branch 'PHP-5.4' 2012-10-09 13:30:22 +08:00
Xinchen Hui
7b5960b085 Merge branch 'PHP-5.4' 2012-09-01 14:38:33 +08:00
Xinchen Hui
f3108b5f81 Remove extra blank in notice message, should act as same as vm 2012-09-01 14:37:45 +08:00
Xinchen Hui
cc30524c89 Fixed bug #62616 (ArrayIterator::count() from IteratorIterator instance gives Segmentation fault) 2012-07-21 23:26:18 +08:00
Xinchen Hui
a580405f38 Merge branch 'PHP-5.4'
* PHP-5.4:
  Fixed bug #62616 (ArrayIterator::count() from IteratorIterator instance gives Segmentation fault)
2012-07-21 22:46:14 +08:00
Xinchen Hui
0c996613c0 Fixed bug #62616 (ArrayIterator::count() from IteratorIterator instance gives Segmentation fault) 2012-07-21 22:45:16 +08:00
Anatoliy Belsky
ed1f5b4dae Merge branch 'PHP-5.4'
* PHP-5.4:
  reverted news about #62477
  reverted changes for #62477

Conflicts:
	NEWS
2012-07-12 11:02:33 +02:00
Anatoliy Belsky
86428169d3 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  reverted changes for #62477
2012-07-12 10:57:26 +02:00
Anatoliy Belsky
ad7eeba3c1 reverted changes for #62477 2012-07-12 10:54:14 +02:00
Anatoliy Belsky
b530d6d790 Merge branch 'PHP-5.4'
* PHP-5.4:
  Fixed bug #62477 LimitIterator int overflow
2012-07-11 22:30:40 +02:00
Anatoliy Belsky
40f8010a13 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed bug #62477 LimitIterator int overflow
2012-07-11 22:29:45 +02:00
Anatoliy Belsky
b383ddf1e5 Fixed bug #62477 LimitIterator int overflow 2012-07-11 22:25:31 +02:00
Johannes Schlüter
b025b9d0cf Fix #62432 ReflectionMethod random corrupt memory on high concurrent
This fixes the same issue in multiple extensions. This isn't needed
in later branches as 5.4 introduced object_properties_init()
2012-06-27 23:26:33 +02:00
Felipe Pena
e4ca0ed09f - Year++ 2012-01-01 13:15:04 +00:00
Felipe Pena
8775a37559 - Year++ 2012-01-01 13:15:04 +00:00
Felipe Pena
4e19825281 - Year++ 2012-01-01 13:15:04 +00:00
Gustavo André dos Santos Lopes
32f7337bd4 - Reverted changes that required constructor overrides to invoke the parent
constructor in several SPL classes and applied 5.3 fixes instead.
  Related bugs: #54384, #55175 and #55300
2011-10-29 23:17:18 +00:00
Gustavo André dos Santos Lopes
41abc6d017 - Reverted changes that required constructor overrides to invoke the parent
constructor in several SPL classes and applied 5.3 fixes instead.
  Related bugs: #54384, #55175 and #55300
2011-10-29 23:17:18 +00:00
Hannes Magnusson
4ff1539384 Allow replacement to be any scalar value 2011-09-12 13:21:57 +00:00
Hannes Magnusson
75c4d6f888 Allow replacement to be any scalar value 2011-09-12 13:21:57 +00:00
Hannes Magnusson
2c5574b3d8 Allow replacement to be any scalar value 2011-09-12 13:21:57 +00:00
Etienne Kneuss
b03860a935 Fix CID 593 Mark the missing break by an explicit comment, we DO intend to fall through here 2011-08-12 22:20:35 +00:00
Etienne Kneuss
80742189b8 Fix CID 593 Mark the missing break by an explicit comment, we DO intend to fall through here 2011-08-12 22:20:35 +00:00
Felipe Pena
23e438594d - Make usage of new PHP_FE_END macro 2011-07-25 11:42:53 +00:00
Felipe Pena
4b30846b50 - Make usage of new PHP_FE_END macro 2011-07-25 11:35:02 +00:00
Felipe Pena
da376383e8 - Make usage of new PHP_FE_END macro 2011-07-25 11:35:02 +00:00
Pierrick Charron
1b416caeb1 Fixed bug #54971 (Wrong result when using iterator_to_array with use_keys on true) 2011-06-28 11:09:06 +00:00
Pierrick Charron
e53ca46fc0 Fixed bug #54971 (Wrong result when using iterator_to_array with use_keys on true) 2011-06-28 11:09:06 +00:00
Pierrick Charron
a814063804 Fixed bug #54971 (Wrong result when using iterator_to_array with use_keys on true) 2011-06-28 11:09:06 +00:00
Gustavo André dos Santos Lopes
2975308e1a - Fixed bug #54384 (Dual iterators, GlobIterator, SplFileObject and
SplTempFileObject crash when user-space classes don't call the paren
  constructor).
2011-04-04 02:50:27 +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
0dd448cbf1 - Fixed bug #54281 (Crash in non-initialized RecursiveIteratorIterator) 2011-03-22 22:41:16 +00:00
Felipe Pena
11c4a5b96a - Fixed bug #54281 (Crash in non-initialized RecursiveIteratorIterator) 2011-03-22 22:41:16 +00:00
Felipe Pena
5b442c82f0 - Fixed bug #54040 (Logical && where & probably needed in spl_iterators) 2011-02-20 16:09:50 +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
3571c955b5 Implement request #53659 (Implementing RegexIterator::getRegex() method). Patch
by Joshua Thijssen.
2011-01-06 02:32:02 +00:00
Felipe Pena
927bf09c29 - Year++ 2011-01-01 02:19:59 +00:00
Felipe Pena
0203cc3d44 - Year++ 2011-01-01 02:17:06 +00:00
Felipe Pena
6958cb4a14 - Added missing void arg checks 2010-11-14 18:40:08 +00:00
Felipe Pena
8192f0f771 - Added missing void arg checks 2010-11-14 18:40:08 +00:00
Felipe Pena
590ad22361 - Fix the fix (wrong behavior) 2010-11-08 20:26:14 +00:00
Felipe Pena
22f7998a0d - Fix the fix (wrong behavior) 2010-11-08 20:26:14 +00:00
Felipe Pena
7636635ec5 - Fixed bug #50579 (RegexIterator::REPLACE doesn't work) 2010-11-06 00:09:50 +00:00
Felipe Pena
d31e4e7f8e - Fixed bug #50579 (RegexIterator::REPLACE doesn't work) 2010-11-06 00:09:50 +00:00
Felipe Pena
5f790678ec - Fixed ZTS build 2010-07-07 22:46:54 +00:00
Felipe Pena
c0c5c1ad4c - Fixed ZTS build 2010-07-07 22:46:54 +00:00
Etienne Kneuss
a3bf7aa4fe Fixed #51697 (Unsafe operations in free_storage of SPL iterators,
causes crashes during shutdown)
2010-07-07 21:55:17 +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
e46fee1d1a Fix bug #52238: Crash when an Exception occured in iterator_to_array 2010-07-02 19:17:45 +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
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
Etienne Kneuss
9f16874a53 Fix #49723 (Skip seek when unnecessary) 2010-04-27 04:57:48 +00:00
Etienne Kneuss
6f5f6d2bca Fix #49723 (Skip seek when unnecessary) 2010-04-27 04:57:48 +00:00
Dmitry Stogov
94dd83722b Changed the structure of op_array.opcodes. The constant values are moved from opcode operands into a separate literal table 2010-04-20 10:57:45 +00:00
Peter Cowburn
fbbe3e3686 Corrected typo in LimitIterator offset exception. Fixes #51119 2010-02-22 23:55:30 +00:00
Sebastian Bergmann
9ba1e81665 sed -i "s#1997-2009#1997-2010#g" **/*.c **/*.h **/*.php 2010-01-03 09:23:27 +00:00
Felipe Pena
a94558c855 - Added MAKE_COPY_ZVAL(ppzv, pzv) macro 2009-12-08 01:57:37 +00:00
Felipe Pena
8f11dc62d5 - Fixed bug #50090 (Typo in IteratorIterator constructor) 2009-11-07 21:27:15 +00:00
Felipe Pena
8ce58b2490 - Fixed bug #50018 (Typo in spl_limit_it_seek()) 2009-10-27 21:57:26 +00:00
Johannes Schlüter
0a8fc25b7d Fix #49972 (AppendIterator undefined function crash) 2009-10-23 16:47:35 +00:00
Felipe Pena
fc4e43ec3c MFH:
- Added missing methods' arginfo (for void params)
- Fixed arginfos:
  - MultipleIterator::__construct
  - MultipleIterator::setFlags      (Thanks Philip!)
  - SplFixedArray::__construct
2009-07-04 20:31:27 +00:00
Scott MacVicar
01a6919ff0 Fix bug #48206 again 2009-05-09 19:45:26 +00:00
Scott MacVicar
e89c1cf7d9 MFH Fix bug #48206 - Iterating over an invalid data structure leads to a segfault 2009-05-09 19:35:09 +00:00
Felipe Pena
d29e47652f - MFH: Added missing "return;" 2009-01-20 00:43:25 +00:00
Sebastian Bergmann
08659c2dcd MFH: Bump copyright year, 3 of 3. 2008-12-31 11:15:49 +00:00
Etienne Kneuss
3919b16f04 MFH: Fix #46241 (stacked error_handlers, error_handling in general) 2008-11-19 02:00:53 +00:00
Felipe Pena
fc2fb50d09 - MFH: Added 'static' into ZEND_BEGIN_ARG_INFO_EX macro 2008-11-17 11:28:01 +00:00
Felipe Pena
7a37fa2d6b - Revert ZEND_BEGIN_ARG_INFO change 2008-11-02 21:19:39 +00:00
Felipe Pena
df10005563 - MFH: Added 'static' into ZEND_BEGIN_ARG_INFO_EX macro 2008-10-24 14:35:40 +00:00
Arnaud Le Blanc
261f0c32a5 initialize optional vars 2008-10-21 22:08:20 +00:00
Felipe Pena
084124fb37 - MFH: Fixed bug #46088 (RegexIterator::accept - segfault) 2008-09-22 13:09:09 +00:00
Arnaud Le Blanc
506e49c6e1 MFH: Fixed bug #46031 (Segfault in AppendIterator::next) 2008-09-09 19:44:15 +00:00
Etienne Kneuss
c77ca4c34a MFH: Fix error_handling usage in various extensions 2008-08-08 22:07:07 +00:00
Felipe Pena
e304515ddb - MFH: Added parameter TSRMLS_DC in zend_is_callable() 2008-08-02 04:46:07 +00:00
Dmitry Stogov
3c62c4bf7e Removed warning 2008-07-29 11:50:05 +00:00
Etienne Kneuss
5495813bb3 MFH: Complete the ZTS build fix 2008-07-19 19:45:55 +00:00
Derick Rethans
5501431626 - MFH: Fixed ZTS build. 2008-07-19 19:24:07 +00:00
Marcus Boerger
e537b7934d - MFH Added RecursiveTreeIterator 2008-07-19 15:49:21 +00:00
Etienne Kneuss
b57e7b44da Fix bug #41828 (Fix crash on wrong instantiation) 2008-03-12 13:34:47 +00:00
Marcus Boerger
522166bad1 - MFH Fix bug in example code found by Surf Chen 2008-01-10 10:11:33 +00:00
Sebastian Bergmann
d1dded8751 MFH: Bump copyright year, 2 of 2. 2007-12-31 07:17:19 +00:00
Jani Taskinen
b489251177 - MFH from HEAD:
. Folding tags
  . Parameter parsing
  . SPL debug info
  . array function improvements (not all yet)
  . Improvements to function calling with call_user_* functions
  . Improvements to debugging info in var_dump/print_r
# I propably forgot already something but this all was pretty close tied
# to each other so it wasn't possible to do it in parts.
2007-11-02 19:40:39 +00:00
Marcus Boerger
80893e5727 - Fix #42703 2007-10-18 04:41:39 +00:00
Yiduo (David) Wang
4b4d634cb9 MFH: Added macros for managing zval refcounts and is_ref statuses 2007-10-07 05:22:07 +00:00
Dmitry Stogov
6c810b0d4c Improved memory usage by movig constants to read only memory. (Dmitry, Pierre) 2007-09-27 18:00:48 +00:00