Dmitry Stogov
f71da39210
Use ZEND_HASH_FOEACH_* instead of zend_hash_apply_*
2014-04-21 13:55:25 +04:00
Dmitry Stogov
e9f4d822b0
Avoid useles copy ctor
2014-04-21 13:19:52 +04:00
Dmitry Stogov
54d9ad53f4
More ZEND_HASH_FOREACH_* related changes
2014-04-19 00:08:14 +04:00
Dmitry Stogov
7652a977a8
Use ZEND_FETCH_FOREACH_* macros to iterate over HashTables instead of zend_hash_move_forward() and family.
2014-04-18 19:18:11 +04:00
Dmitry Stogov
ea2e1bb1eb
Optimized zend_leave_helper()
2014-04-18 13:46:36 +04:00
Dmitry Stogov
e7b3b1132a
Fixed support for references
2014-04-17 17:21:59 +04:00
Dmitry Stogov
5c02e0fc5f
Cache op_array->run_time_cache in zend_execute_data for faster access
2014-04-17 16:36:04 +04:00
Dmitry Stogov
3cca67f740
Use local variables instead of opline operands to access cache_slots
2014-04-17 16:10:16 +04:00
Dmitry Stogov
e96073b1e4
Moved zend_literal->cache_slot right into zval.
...
It should be accessed using Z_CACHE_SLOT() macro.
zend_literal structure is removed.
API functions that accepted pointer to zend_literal now accept pointer to zval or cache_slot directly.
Calls of such functiond that now accept cache_slot need to be changed to pass -1 instead of NULL.
2014-04-17 15:40:45 +04:00
Dmitry Stogov
dfaf8b6d28
Merge branch 'refactoring2' of github.com:zendtech/php into refactoring2
2014-04-17 02:12:52 +04:00
Dmitry Stogov
6976eb2919
Fixed support for unspecialized and GOTO and SWITCH executor
2014-04-17 02:12:06 +04:00
Nikita Popov
f98937fa80
Don't copy in ZEND_CAST if type is already correct
2014-04-16 22:39:50 +02:00
Dmitry Stogov
5bb493c40b
op_array->filename and op_array->filename may be kept in opcache SHM
2014-04-16 22:39:23 +04:00
Dmitry Stogov
2d62a12128
Prevented modification of constant arguments
2014-04-16 21:31:32 +04:00
Dmitry Stogov
54c338acc1
Fixed reference counting
2014-04-16 18:06:03 +04:00
Dmitry Stogov
533a8b65f8
Fixed typo
2014-04-16 16:35:41 +04:00
Dmitry Stogov
2f65090a38
Fixed reference counting
2014-04-16 12:33:25 +04:00
Dmitry Stogov
fb4e0a6364
Removed invalid STR_RELEASE()
2014-04-16 12:28:20 +04:00
Dmitry Stogov
e99e6958bc
Cleanup
2014-04-16 01:45:40 +04:00
Nikita Popov
7a1a6092f6
Add functions for extracting long/double/string from zval
...
These function get the long / double / string value of a zval with
usual cast semantics, but without actually modifying the zval.
Didn't go on a killing spree for convert_to_* yet...
2014-04-15 20:32:47 +02:00
Dmitry Stogov
f9b26bc39a
Cleanup (2-nd round)
2014-04-15 21:56:30 +04:00
Dmitry Stogov
050d7e38ad
Cleanup (1-st round)
2014-04-15 15:40:40 +04:00
Dmitry Stogov
93d3a613d8
Fixed support for references
2014-04-15 11:13:23 +04:00
Xinchen Hui
a0690ff288
Fixed zend_object_get_t in simpleXML
2014-04-15 11:05:03 +08:00
Dmitry Stogov
460120c887
Fixed reference counting
2014-04-15 01:16:09 +04:00
Dmitry Stogov
cc50ebc487
Fixed memory leak
2014-04-14 23:53:25 +04:00
Dmitry Stogov
9629eea9e7
The test works out of the box
2014-04-14 22:43:33 +04:00
Dmitry Stogov
b0b54e8db4
Fixed nested GC calls (valgrind error in Zend/tests/gc_016.phpt)
2014-04-14 22:41:42 +04:00
Dmitry Stogov
5dc52e4880
Fixed interface constants inheritance.
...
Now we use IS_REFERENCE for inhereted class constants.
I might miss some edje cases.
2014-04-14 13:24:43 +04:00
Nikita Popov
4fc3d2d104
Copy varname before unset
...
Otherwise we get issues when the varname variable coincides with
the variable that is deleted.
2014-04-13 23:07:10 +02:00
Dmitry Stogov
b178992cd1
Temporary fix for Zend/tests/bug46238.phpt
2014-04-12 00:50:36 +04:00
Nikita Popov
2c6ee5dcb5
Fix argument unpacking
2014-04-11 19:53:14 +02:00
Dmitry Stogov
e27eca90a5
for some reason gcc -O2 compiled the previous code in unexpected way
2014-04-11 18:16:03 +04:00
Dmitry Stogov
13f0c8b18c
Fixed double free
2014-04-11 16:48:38 +04:00
Dmitry Stogov
b6af031e52
Fixed support for references
2014-04-11 15:05:12 +04:00
Dmitry Stogov
f1f3e3c371
fixed persistent reaource destruction
2014-04-11 14:47:38 +04:00
Dmitry Stogov
ec4314f818
Fixed reference counting
2014-04-11 12:43:22 +04:00
Dmitry Stogov
aeb64f5447
Fixed support for references
2014-04-11 11:15:31 +04:00
Dmitry Stogov
91ed685e26
Close all files and resources before before destroying object storage, because resources may point to objects. (THIS CHANGE MAY BE DANGEROUS)
2014-04-11 02:22:00 +04:00
Dmitry Stogov
98350cdcea
Introduced API to close all resources at once
2014-04-11 02:21:06 +04:00
Dmitry Stogov
a9599c9512
Fixed memory leak
2014-04-10 23:36:16 +04:00
Dmitry Stogov
8eb8d123e0
Fixed suppor for multibyte encoding
2014-04-10 18:47:47 +04:00
Nikita Popov
f449b04713
Fix some ZTS issues and leaks
2014-04-10 13:50:25 +02:00
Nikita Popov
a6be32f59a
IS_INTERNED is not always 0 in ZTS
...
The current implementation chooses to intern "" in ZTS. Either that
should be removed or IS_INTERNED needs to actually check the flag.
2014-04-09 23:54:03 +02:00
Nikita Popov
19ccd79942
Fix copying of constants for ZTS
...
Just a quick hack, should probably add an internal_copy_ctor
function for this.
2014-04-09 23:41:17 +02:00
Nikita Popov
3ce96eabc0
Fix function copying in ZTS
...
Still doesn't entirely work :/
2014-04-09 23:41:16 +02:00
Nikita Popov
20f2e5986e
Fix ZTS build
...
This only makes it compile, it doesn't actually work, presumably
because interned strings are assumed in some places.
2014-04-09 23:41:16 +02:00
Dmitry Stogov
d8a0c6c6ab
typo
2014-04-10 00:22:13 +04:00
Dmitry Stogov
29f068779f
Fixed ext/spl/tests/iterator_035.phpt
2014-04-09 23:49:58 +04:00
Dmitry Stogov
816f8dfefb
Fixed macro
2014-04-09 22:23:22 +04:00