Nikita Popov
018bcc6388
Use temporary debug_info for closures
2015-04-16 15:33:47 +02:00
Nikita Popov
6c98024f87
Drop unused is_self member
2015-04-16 15:33:47 +02:00
Dmitry Stogov
2ca2d0938b
Micro optimizations for the more frequently paths
2015-04-16 14:46:54 +03:00
Dmitry Stogov
e38ed4c28f
Changed zend_smart_str allocation granularity to do the better job together with Zend MM and avoid useless calls to erealloc().
...
The actual reallocation routiones are seprated from inlined code to reduce code size.
2015-04-16 14:45:08 +03:00
Dmitry Stogov
05232cc810
Revert "Changed zend_smart_str allocation granularity to do the better job together with Zend MM and avoid useless calls to erealloc()." That commit significantly increased the code size because of intensive inlining and more expensive reallocation code.
...
This reverts commit 5275e5560b
.
2015-04-16 13:11:54 +03:00
Dmitry Stogov
5275e5560b
Changed zend_smart_str allocation granularity to do the better job together with Zend MM and avoid useless calls to erealloc().
2015-04-16 12:32:56 +03:00
Dmitry Stogov
a759967dd1
Mark call frames to closures with ZEND_CALL_CLOSURE flag to avoid expensive check at zend_leave_helper()
2015-04-16 12:16:03 +03:00
Xinchen Hui
ec8671d429
Remove duplicated assignment
2015-04-16 11:58:50 +08:00
Nikita Popov
685ccd61c2
Add list of reserved classes to UPGRADING
2015-04-15 22:38:50 +02:00
Nikita Popov
5c214fc10d
Add test for recursive __debugInfo()
...
This also got fixed by switching to object apply count.
2015-04-15 22:38:50 +02:00
Bob Weinand
7c2fbdf58d
Remove some redundant exception checking/continuing VM instructions
2015-04-15 22:18:05 +02:00
Nikita Popov
86152b18a3
Add GC support to SPL heap and PQ
...
ctor/dtor are now no longer called for insert/delete_top operations,
only for cloning and freeing of the object. Otherwise elements will
have a minimum rc of 2 and GC won't be able to free them.
2015-04-15 22:00:12 +02:00
Nikita Popov
dc764bf644
Use object apply count in var_dump / print_r
...
Instead of using the array apply count on the debug_info array, use
the object apply count for recursion detection when dumping. This
handles recursion in a more generic way and does not require each
debug_info handler to deal with this.
This allows returning a temporary debug_info array, instead of
having to store it in the object (thus delaying destruction of the
values).
Switch SPL debug_info handlers to use a temporary array.
2015-04-15 22:00:12 +02:00
Bob Weinand
3dcad2eea2
Fix bug #69458
2015-04-15 21:56:11 +02:00
Bob Weinand
4e76d58b2b
Fix object leak for yield from (added proper refcounting)
2015-04-15 21:42:27 +02:00
Bob Weinand
27033f9818
Forgot to transform some errors to engine exceptions
2015-04-15 21:42:26 +02:00
Nikita Popov
eed18f0ee8
Return null on zpp failure in Array::exchangeArray()
...
Method was still returning a value despite zpp failing previously...
2015-04-15 20:43:41 +02:00
Nikita Popov
e10be0d0fd
Remove unnecessary retval members in SPL
...
This is what the rv params are for. Avoid holding onto values
longer than necessary.
2015-04-15 20:39:08 +02:00
Ferenc Kovacs
47590aba9b
Merge branch 'PHP-5.6'
...
* PHP-5.6:
this was reverted
2015-04-15 20:04:47 +02:00
Ferenc Kovacs
60830f49c0
this was reverted
2015-04-15 20:04:03 +02:00
Nikita Popov
b4b872f4c9
Fix leak in RecursiveRegexIterator::getChildren()
2015-04-15 20:03:15 +02:00
Ferenc Kovacs
26d995fa8e
Merge branch 'PHP-5.6'
...
* PHP-5.6:
66550 will be part of 5.6.8
66550 will be part of 5.5.24
2015-04-15 20:01:13 +02:00
Dmitry Stogov
92f2ee0973
Merge branch 'master' of git.php.net:php-src
...
* 'master' of git.php.net:php-src:
Fix leaks in recursive iterator construction
2015-04-15 20:55:38 +03:00
Ferenc Kovacs
4ddb92be45
Merge branch 'PHP-5.5' into PHP-5.6
...
* PHP-5.5:
66550 will be part of 5.5.24
2015-04-15 19:54:30 +02:00
Ferenc Kovacs
ef5f4ef81f
66550 will be part of 5.6.8
2015-04-15 19:54:25 +02:00
Ferenc Kovacs
b75e30c667
66550 will be part of 5.5.24
2015-04-15 19:53:38 +02:00
Dmitry Stogov
d5d2032898
eliminate unnecessary EX(opline) <-> opline reloading
2015-04-15 20:53:27 +03:00
Nikita Popov
7605e02e3b
Fix leaks in recursive iterator construction
2015-04-15 19:51:02 +02:00
Ferenc Kovacs
08e1174139
Merge branch 'PHP-5.6'
...
* PHP-5.6:
reorder entries, Core is always the first block
2015-04-15 18:53:39 +02:00
Ferenc Kovacs
272805c898
reorder entries, Core is always the first block
2015-04-15 18:53:22 +02:00
Ferenc Kovacs
481b3338ca
Merge branch 'PHP-5.6'
...
* PHP-5.6:
add missing NEWS entry
add missing space to the NEWS entries to align properly
2015-04-15 18:39:30 +02:00
Ferenc Kovacs
ad5723acf2
add missing NEWS entry
2015-04-15 18:39:16 +02:00
Ferenc Kovacs
a07f3ed2a6
add missing space to the NEWS entries to align properly
2015-04-15 18:38:48 +02:00
Ferenc Kovacs
a03089ac45
Merge branch 'PHP-5.6'
...
* PHP-5.6:
add missing space to the NEWS entries to align properly
2015-04-15 18:37:20 +02:00
Ferenc Kovacs
7abb318beb
add missing space to the NEWS entries to align properly
2015-04-15 18:36:52 +02:00
Anatol Belski
b9732a37c5
fix possible int overflow
2015-04-15 17:57:27 +02:00
Anatol Belski
7a88cfe44d
fix datatype mismatches
2015-04-15 17:57:26 +02:00
Anatol Belski
0c6753bf6b
optimize structs
2015-04-15 17:57:25 +02:00
Anatol Belski
a01e8c1fe9
fix data type and 64-bit compat
2015-04-15 17:57:23 +02:00
Remi Collet
c48bf6e55c
Merge branch 'PHP-5.6'
...
* PHP-5.6:
bump zip release to match pecl version
2015-04-15 17:38:01 +02:00
Remi Collet
60b3526bfb
bump zip release to match pecl version
2015-04-15 17:37:12 +02:00
Dmitry Stogov
6aee1ee4a1
Optimization of stack-frame construction
2015-04-15 17:02:21 +03:00
Julien Pauli
696c64503c
Merge branch 'PHP-5.6'
...
* PHP-5.6:
Updated NEWS
2015-04-15 14:41:41 +02:00
Julien Pauli
d3d5e3db2c
Merge branch 'PHP-5.5' into PHP-5.6
...
* PHP-5.5:
Updated NEWS
2015-04-15 14:40:33 +02:00
Julien Pauli
8827a56cb4
Updated NEWS
2015-04-15 14:40:00 +02:00
Dmitry Stogov
ec077328fd
Make valgrind happy
2015-04-15 14:20:59 +03:00
Dmitry Stogov
8144795133
Avoid double refcounting
2015-04-15 13:34:23 +03:00
Anatol Belski
b816266223
Merge branch 'PHP-5.6'
...
* PHP-5.6:
fix dir separator in test
2015-04-15 11:10:29 +02:00
Anatol Belski
e53947609a
Merge branch 'PHP-5.5' into PHP-5.6
...
* PHP-5.5:
fix dir separator in test
2015-04-15 11:09:54 +02:00
Anatol Belski
8947c7aa0d
fix dir separator in test
2015-04-15 11:07:13 +02:00