Dmitry Stogov
c1965f58d4
Use reference counting instead of zval duplication
2014-06-05 16:04:11 +04:00
Dmitry Stogov
2625f145c8
Use extended iteration API to avoid in-place modification
2014-05-28 12:39:27 +04:00
Dmitry Stogov
376ab3b787
Nested PCRE calls may clobber extra->mark and it has to be reinitailized
...
This fixes invalid memory writes (detected with valgrind) in Zend/tests/closure_047.phpt and Zend/tests/closure_048.phpt.
2014-05-13 12:14:55 +04:00
Nikita Popov
f979e9afb0
More zend_string usage in PCRE
...
Avoid a few copies and zval duplications
2014-04-25 23:21:04 +02:00
Dmitry Stogov
f9927a6c97
Merge mainstream 'master' branch into refactoring
...
During merge I had to revert:
Nikita's patch for php_splice() (it probably needs to be applyed again)
Bob Weinand's patches related to constant expression handling (we need to review them carefully)
I also reverted all our attempts to support sapi/phpdbg (we didn't test it anyway)
Conflicts:
Zend/zend.h
Zend/zend_API.c
Zend/zend_ast.c
Zend/zend_compile.c
Zend/zend_compile.h
Zend/zend_constants.c
Zend/zend_exceptions.c
Zend/zend_execute.c
Zend/zend_execute.h
Zend/zend_execute_API.c
Zend/zend_hash.c
Zend/zend_highlight.c
Zend/zend_language_parser.y
Zend/zend_language_scanner.c
Zend/zend_language_scanner_defs.h
Zend/zend_variables.c
Zend/zend_vm_def.h
Zend/zend_vm_execute.h
ext/date/php_date.c
ext/dom/documenttype.c
ext/hash/hash.c
ext/iconv/iconv.c
ext/mbstring/tests/zend_multibyte-10.phpt
ext/mbstring/tests/zend_multibyte-11.phpt
ext/mbstring/tests/zend_multibyte-12.phpt
ext/mysql/php_mysql.c
ext/mysqli/mysqli.c
ext/mysqlnd/mysqlnd_reverse_api.c
ext/mysqlnd/php_mysqlnd.c
ext/opcache/ZendAccelerator.c
ext/opcache/zend_accelerator_util_funcs.c
ext/opcache/zend_persist.c
ext/opcache/zend_persist_calc.c
ext/pcre/php_pcre.c
ext/pdo/pdo_dbh.c
ext/pdo/pdo_stmt.c
ext/pdo_pgsql/pgsql_driver.c
ext/pgsql/pgsql.c
ext/reflection/php_reflection.c
ext/session/session.c
ext/spl/spl_array.c
ext/spl/spl_observer.c
ext/standard/array.c
ext/standard/basic_functions.c
ext/standard/html.c
ext/standard/mail.c
ext/standard/php_array.h
ext/standard/proc_open.c
ext/standard/streamsfuncs.c
ext/standard/user_filters.c
ext/standard/var_unserializer.c
ext/standard/var_unserializer.re
main/php_variables.c
sapi/phpdbg/phpdbg.c
sapi/phpdbg/phpdbg_bp.c
sapi/phpdbg/phpdbg_frame.c
sapi/phpdbg/phpdbg_help.c
sapi/phpdbg/phpdbg_list.c
sapi/phpdbg/phpdbg_print.c
sapi/phpdbg/phpdbg_prompt.c
2014-04-26 00:32:51 +04:00
Dmitry Stogov
d0ed1212a4
Enable PCRE JIT compiler
2014-04-25 08:33:37 +04:00
Dmitry Stogov
5864ce8a44
Fixed compilation warnings
2014-04-22 17:46:34 +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
81b24d4100
Fixed reference support
2014-04-16 12:08:16 +04:00
Dmitry Stogov
d0cc5c633c
Use zend_string* instead of char*
2014-04-15 22:10:39 +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
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
7240b4ec4d
Avoid unnecessary zval separations
2014-04-02 01:56:16 +04:00
Dmitry Stogov
dccd97d347
Avoid unnecessary zval separations
2014-04-01 23:44:42 +04:00
Dmitry Stogov
c6cba55454
Use ZVAL_DEREF() macro
2014-03-27 13:39:09 +04:00
Dmitry Stogov
54d559d893
Replaced (Z_TYPE(x) == IS_REFERENCE) with (Z_ISREF(x))
2014-03-27 11:50:45 +04:00
Nikita Popov
42562ee913
Add support for PCRE marks
...
If a MARK is set then it will be returned in the $matches array
unter key "MARK". If no MARK is used or passed, the key will not
be set.
2014-03-17 22:32:40 +01:00
Xinchen Hui
bf5e00f2e6
Fixed reference handling in pcre_grep
2014-03-16 15:40:35 +08:00
Xinchen Hui
412ca11eda
Fixed reference arg hanlding in pcre_replace
2014-03-16 08:45:43 +08:00
Xinchen Hui
ef1e006bd6
Refactor php_pcre_replace to return zend_string
2014-03-16 08:44:07 +08:00
Dmitry Stogov
6ad3abcd3e
Temporary fix memory leaks
2014-03-07 17:21:29 +04:00
Dmitry Stogov
b671c3a28a
Fixed refcounting
2014-03-07 17:17:35 +04:00
Dmitry Stogov
d599d0cecd
Temporary fix memory leaks
2014-03-07 17:14:16 +04:00
Dmitry Stogov
fff3c54f9e
Added check
2014-03-06 22:07:28 +04:00
Xinchen Hui
10c7f2ddbc
Fixed IS_REFERENCE handling in preg_match
2014-03-06 23:39:34 +08:00
Dmitry Stogov
045c5fddfa
Fixed memory leaks
2014-02-28 13:37:55 +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
077b02326a
Refactor php_addslashes using zend_string
2014-02-24 12:07:09 +08:00
Xinchen Hui
189a39a187
Fixed segfault
2014-02-19 18:49:00 +08:00
Xinchen Hui
43b03c74b3
Refacting smart_str
2014-02-18 17:42:46 +08:00
Dmitry Stogov
f4cfaf36e2
Use better data structures (incomplete)
2014-02-10 10:04:30 +04:00
Xinchen Hui
c081ce628f
Bump year
2014-01-03 11:08:10 +08:00
Xinchen Hui
47c9027772
Bump year
2014-01-03 11:06:16 +08:00
Xinchen Hui
c0d060f5c0
Bump year
2014-01-03 11:04:26 +08:00
Dmitry Stogov
6c2a806820
Avoid interned hash key duplication and hash key length recaclulation
2013-11-29 00:57:49 +04:00
Anatol Belski
96388c78c9
Merge branch 'PHP-5.4' into PHP-5.5
...
* PHP-5.4:
fix zts check
2013-03-14 14:39:47 +01:00
Anatol Belski
5df8cf1975
Merge branch 'PHP-5.3' into PHP-5.4
...
* PHP-5.3:
fix zts check
2013-03-14 14:39:09 +01:00
Anatol Belski
e43c5a8395
fix zts check
2013-03-14 14:38:20 +01:00
Anatol Belski
2635408a0d
Merge branch 'PHP-5.4' into PHP-5.5
...
* PHP-5.4:
Fixed PCRE locale crash in Windows/TS
2013-03-04 09:15:17 +01:00
Anatol Belski
4e46a87392
Merge branch 'PHP-5.3' into PHP-5.4
...
* PHP-5.3:
Fixed PCRE locale crash in Windows/TS
2013-03-04 09:14:14 +01:00
Stephen A. Zarkos
b6fdb60ecf
Fixed PCRE locale crash in Windows/TS
2013-03-04 09:09:45 +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
Adam Harvey
0b96b4c4e9
Merge branch 'PHP-5.4'
...
* PHP-5.4:
Update arginfo for preg_match_all() to reflect reality.
fix invalid read when trimming empty string
2012-11-12 20:09:18 +08:00
Adam Harvey
bca8ff723d
Update arginfo for preg_match_all() to reflect reality.
...
Back when I implemented FR #53238 during the 5.4 development phase to make the
$matches parameter optional in preg_match_all(), it turns out I forgot to
update the arginfo to note that only 2 parameters are now required by
preg_match_all(). The function itself works fine, but reflection was reporting
the wrong number of required parameters.
2012-11-12 20:04:26 +08:00
Dmitry Stogov
0716ddcdb2
Merge branch 'PHP-5.4'
...
* PHP-5.4:
Fixed bug #63180 (Corruption of hash tables)
fix bug #63369
Conflicts:
NEWS
2012-10-26 09:49:21 -07:00
Dmitry Stogov
68b229ea73
Fixed bug #63180 (Corruption of hash tables)
2012-10-26 09:47:30 -07:00
Stanislav Malyshev
ab566a9712
Merge branch 'PHP-5.4'
...
* PHP-5.4:
fix bug #55856 : preg_replace should fail on trailing garbage
Bug #62956 : fixing private method signature validation
NEWS for 886a50a
2012-08-28 22:02:15 -07:00