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
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
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
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
7402af380b
Fixed destruction of objects and iterators on unclean request shutdown and GC (few cases are still unfixed).
...
Now we destroy objects it two steps. At first - object properties of all objects and only then the objects their selves.
2014-04-09 01:50:15 +04:00
Dmitry Stogov
3d17219cd8
Refactored zend_hash_* iteration API zend_hash_fove_forward_ex(ht, pos) and family require second argument to be real pointer.
...
&(ht)->nInternalPointer should be passed instead of NULL.
zend_hash_update_current_key() may work only with internal pointer.
2014-04-07 23:14:17 +04:00
Dmitry Stogov
76cc99fe60
Refactored ZVAL flags usage to simplify various checks (e.g. Z_REFCOUNTED(), candidate for GC, etc)
2014-04-03 15:26:23 +04:00
Dmitry Stogov
d8099d0468
Changed data layout to allow more efficient operations
2014-04-02 14:34:44 +04:00
Dmitry Stogov
6b2ed577fd
Avoid unnecessry reallocations
2014-04-01 22:36:17 +04:00
Dmitry Stogov
70b7950a75
Exclude interned flags from constant flags
2014-04-01 14:20:10 +04:00
Dmitry Stogov
ea85451b65
Refactored data structures to keep zend_object* instead of a whole zval in some places
2014-03-28 02:11:22 +04:00
Dmitry Stogov
9a8fbdf2f4
Use CV variable offset instead of CV variable number
2014-03-27 16:00:25 +04:00
Dmitry Stogov
c6cba55454
Use ZVAL_DEREF() macro
2014-03-27 13:39:09 +04:00
Dmitry Stogov
f53c31265f
Fixed symbol table detaching
2014-03-27 00:04:50 +04:00
Dmitry Stogov
887189ca31
Refactored IS_INDIRECT usage for CV and object properties to support HashTable resizing
2014-03-26 18:07:31 +04:00
Dmitry Stogov
ef6919e6f2
Fixed static data cleanup
2014-03-21 13:51:18 +04:00
Dmitry Stogov
6123deb30f
Fixed refcounting (proper fix)
2014-03-21 01:08:26 +04:00
Dmitry Stogov
cce7d5a1ec
Fixed refcounting
2014-03-21 00:34:26 +04:00
Dmitry Stogov
36cd92a7d3
Fixed passing argument by refefence from internal functions
2014-03-20 17:03:32 +04:00
Dmitry Stogov
da9a2872b0
Fixed cleanup on request shutdown
2014-03-18 14:52:54 +04:00
Dmitry Stogov
aa5f55306b
Refactored EG(active_symbol_table) to be zend_array* instead of HashTable*
2014-03-17 23:15:22 +04:00
Dmitry Stogov
d708d3c596
Fixed passing arguments by reference from internal functions
2014-03-11 22:33:28 +04:00
Xinchen Hui
53e312c663
Review ended
...
Revert "An demo(for review) to show how to fix the problem(symbol table resize)"
This reverts commit 60c354510b
.
2014-03-11 14:23:14 +08:00
Xinchen Hui
60c354510b
An demo(for review) to show how to fix the problem(symbol table resize)
2014-03-10 16:25:05 +08:00
Xinchen Hui
80625f20e5
Revert "An demo(for review) to show how to fix the problem we meet"
...
This reverts commit 4aeae15706
.
2014-03-10 16:24:35 +08:00
Xinchen Hui
4aeae15706
An demo(for review) to show how to fix the problem we meet
2014-03-10 11:29:28 +08:00
Xinchen Hui
4b40e40ad0
Fixed memleak while sending IS_REFERENCE
2014-03-09 11:48:09 +08:00
Dmitry Stogov
6b303a6bd6
Fixed refcounting
2014-03-07 01:33:33 +04:00
Dmitry Stogov
8d2fb9d479
Internal functions may return (e.g. on wrong arguments) keeping the original return_value. So we have to initialize return_value as IS_NULL.
2014-03-06 13:32:43 +04:00
Dmitry Stogov
f3b4b16883
Fixed passing reference by value in call_user_func()
2014-03-06 01:04:28 +04:00
Dmitry Stogov
018be97c0d
Fixed support for undefined constants in RECV_INIT
2014-03-06 00:15:56 +04:00
Dmitry Stogov
84c092f6d6
Fixed by reference parameter passing from internal functions
2014-03-05 16:17:00 +04:00
Dmitry Stogov
3733737328
Handle interned strings as non-refcounted scalars
2014-03-05 13:55:56 +04:00
Dmitry Stogov
19670c2bbc
Fixied calling object closures from internal functions
2014-03-05 01:54:21 +04:00
Dmitry Stogov
3810b4ab4a
Fixed constant expressions in array indeces handling
2014-02-27 16:41:41 +04:00
Dmitry Stogov
3696e038e5
Various fixes related to read_property(), read_dimension() and iterators refactoring
2014-02-27 16:07:36 +04:00
Dmitry Stogov
78fc6b3570
Fixed refcounting
2014-02-26 01:09:34 +04:00
Dmitry Stogov
77abd35b78
Fixed memory leak
2014-02-25 16:20:42 +04:00
Dmitry Stogov
639e4e1afa
Changes zend_is_callable() to use zend_string* instead of char*
2014-02-25 16:03:34 +04:00
Xinchen Hui
499b553c18
Fixed NULL pointer dereference
2014-02-25 18:14:22 +08:00
Dmitry Stogov
789eb6dfc3
Fixed create_function()
2014-02-24 16:35:55 +04:00
Dmitry Stogov
595fc4d901
More constant related fixes
2014-02-24 15:49:15 +04:00
Dmitry Stogov
abb57cc1c2
Merge branch 'refactoring2' of github.com:zend-dev/php into refactoring2
2014-02-24 15:25:43 +04:00
Dmitry Stogov
f4c2810ab4
fixed support for constant expressions
2014-02-24 15:25:24 +04:00
Xinchen Hui
479b82c0d4
Fixed invalid write in vsprintf tests
2014-02-24 17:26:09 +08:00
Dmitry Stogov
23c9d3eb01
Fixed zend_rebuild_symbol_table() using IS_INDIRECT
2014-02-24 11:31:46 +04:00
Dmitry Stogov
008a42e7c8
Fixed error messages
2014-02-21 20:53:09 +04:00
Dmitry Stogov
52bd62eca8
Fixed assertions
2014-02-21 20:35:40 +04:00