Nikita Popov
311a67a2ed
Remove HASH_NEXT_INSERT flag
...
We already pass ht->nNextFreeElement and the rest is handled by
ZEND_HASH_ADD.
2014-09-16 18:29:00 +02:00
Nikita Popov
0bf55b65d4
Remove two more always-true conditions
2014-09-16 18:28:59 +02:00
krakjoe
6967f78cc9
Merge branch 'pull-request/808'
2014-09-16 15:40:31 +01:00
Anatol Belski
3329d54cd9
better error messages in ZMM on Windows
2014-09-16 12:27:25 +02:00
Dmitry Stogov
13be4a5a4b
emalloc() must not return NULL
2014-09-16 13:53:26 +04:00
Dmitry Stogov
ca37c02520
code optimization
2014-09-16 13:52:50 +04:00
Dmitry Stogov
f5517d16d6
ws
2014-09-16 11:56:56 +04:00
Anatol Belski
71cc3991bf
cast the other way round, the sign check is already done before
2014-09-16 09:33:02 +02:00
Dmitry Stogov
d17487f827
We don't have to check for undefined CV if we fetch it for isset() operation
2014-09-16 09:15:47 +04:00
Nikita Popov
079409bbc2
Switch (un)mangle property name to size_t and zend_string
...
Also use the _ex variants where possible.
2014-09-16 00:31:27 +02:00
Dmitry Stogov
6991780793
Optimized FE_RESET and FE_FETCH
2014-09-16 01:34:27 +04:00
Nikita Popov
a7bfd006bd
Remove always-true comparisons
2014-09-15 23:07:31 +02:00
Nikita Popov
ca43b99fc6
Update types in zend_hash
...
* String lengths are size_t
* Indexes are uint32_t
* Flags are uint32_t
* Booleans are zend_bool
2014-09-15 23:07:31 +02:00
Anatol Belski
e0ff5238c5
fix negating an unsigned
2014-09-15 19:46:30 +02:00
Anatol Belski
383a0773ff
fix signed/unsigned mismatch
2014-09-15 19:46:29 +02:00
Anatol Belski
e591c78d09
revamp serialization to work with size_t for Serializable
2014-09-15 19:46:28 +02:00
Anatol Belski
0799459e76
fix signed/unsigned mismatch
2014-09-15 19:46:26 +02:00
Anatol Belski
e940fc268a
fix signed/unsigned mismatch
2014-09-15 19:46:25 +02:00
Anatol Belski
ea94210e8c
fix most of signed/unsigned warnings in vm def
2014-09-15 19:46:24 +02:00
Anatol Belski
836fd73cce
fix signed/unsigned mismatch
2014-09-15 12:58:45 +02:00
Anatol Belski
c8ed0d81e7
fix signed/unsigned mismatch
2014-09-15 12:58:44 +02:00
Anatol Belski
4e09d782ef
fix unsigned negation
2014-09-15 12:58:43 +02:00
Anatol Belski
d3622c2445
fix signed/unsigned mismatch
2014-09-15 12:58:42 +02:00
Dmitry Stogov
d10bc5c005
Merge branch 'master' of git.php.net:php-src
...
* 'master' of git.php.net:php-src:
fix initializer struct
fix signature
fix type
fix condition
2014-09-15 14:37:59 +04:00
Dmitry Stogov
f1bf5313a2
Replaced macro with better optimized inline function
2014-09-15 14:36:55 +04:00
Anatol Belski
f595ed4b8c
fix initializer struct
2014-09-15 11:30:26 +02:00
Xinchen Hui
dfc99d93d5
Remove redundant codes
2014-09-15 16:52:33 +08:00
Xinchen Hui
ae41536c4d
Add test script for the segfault in gc while run phpspec
2014-09-15 14:49:34 +08:00
Nikita Popov
eda5ba1f8f
Fix use of stack variable outside its block
2014-09-14 16:18:08 +02:00
Nikita Popov
ebc6da5628
zend_get_property_info takes a zend_string* now
2014-09-14 16:18:08 +02:00
Nikita Popov
ee75848b78
Drop superfluous opline for non-cv variables
2014-09-13 22:31:27 +02:00
Nikita Popov
88e07324d9
Drop dead assignments
2014-09-13 22:31:21 +02:00
Nikita Popov
21a5253ea9
Make zend_llist_remove_tail a void function
...
The returned data is already dtored and freed at this point.
2014-09-13 22:07:51 +02:00
Nikita Popov
345b0f44c3
Use more accurate sizeof
...
This is allocating an array of zval*s, not zval**s.
2014-09-13 21:57:58 +02:00
Anatol Belski
f91a782973
reduce the struct size by 8 byte on 64 bit
...
this one looks like debug only, but still useful
2014-09-13 12:52:11 +02:00
Anatol Belski
993d475126
fix condition
...
A char array like val[1] would always be valid when checking like
!val. Probably better were to check for ->len, but actually ->val[0]
is fine as the actual zend_string should have been initalized
before.
2014-09-13 00:03:42 +02:00
Anatol Belski
8fc0f1a788
reduce size by 8 byte on 64 bit
2014-09-12 22:06:10 +02:00
Anatol Belski
c22458adc5
fix ZTS build
2014-09-12 21:38:39 +02:00
Anatol Belski
83244e5fec
better align and reduce size by 8 byte on 64 bit
2014-09-12 21:35:25 +02:00
Anatol Belski
5d5a70205c
reduce the struct size by 8 byte on 64 bit
2014-09-12 21:35:20 +02:00
Xinchen Hui
243ec132e6
Forget to commit this part...
2014-09-13 02:00:15 +08:00
Xinchen Hui
78ce2557f5
Finally!!! Fixed segfault in GC
...
this must not be the final fix, but let's stop the segfault first and
use this to indicate where the problem is.
reproduced by phpspec
2014-09-13 01:55:49 +08:00
Dmitry Stogov
8527657ca6
Fixed refcounting for references
2014-09-11 19:12:12 +04:00
Dmitry Stogov
b8c36e199e
Simplify ASSIGN code
2014-09-11 17:00:06 +04:00
Nikita Popov
e2d4d700cf
Fix yy_limit computation after encoding switch
...
The three assignments above this line are still broken - they assume
that byte offsets in one encoding directly map to byte offsets in
another encoding.
I'm fixing the length here because it is the one causing out-of-bounds
reads and is easy to fix. For the others we'd have to actually compute
new offsets.
2014-09-11 14:52:59 +02:00
Nikita Popov
f017843df3
Remove self-contradictory zend multibyte assertion
...
Code that explicitly exists to handle an incompatible internal
encoding should not assert that the internal encoding is compatible.
2014-09-11 14:52:59 +02:00
Dmitry Stogov
82096dc151
Removed ZEND_QM_ASSIGN_VAR and ZEND_JMP_SET_VAR opcodes (in PHPNG they did exacly the same as ZEND_QM_ASSIGN and ZEND_JMP_SET)
2014-09-11 12:29:54 +04:00
Dmitry Stogov
c07a0dbcb9
Don't miss warning messages
2014-09-10 13:02:01 +04:00
Tjerk Meesters
b192ff155d
Merge branch 'PHP-5.6'
...
* PHP-5.6:
Fixed #67985 - Incorrect last used array index copied to new array after unset
Conflicts:
Zend/zend_variables.c
2014-09-09 19:32:09 +08:00
Tjerk Meesters
7e9daf60c1
Merge branch 'PHP-5.5' into PHP-5.6
...
* PHP-5.5:
Fixed #67985 - Incorrect last used array index copied to new array after unset
2014-09-09 18:03:10 +08:00