Dmitry Stogov
5dd427eac2
Use zend_string* for op_array->arg_info[]->name and op_array->arg_info[]->class_name. For internal functions we still use char*.
2014-12-03 16:56:09 +03:00
Anatol Belski
c6bad96f30
Merge remote-tracking branch 'origin/master' into native-tls
...
* origin/master: (398 commits)
NEWS
add test for bug #68381
Fixed bug #68381 Set FPM log level earlier during init
proper dllexport
move to size_t where zend_string is used internally
fix some datatype mismatches
return after the warning, to fix uninitialized salt usage
fix datatype mismatches
add missing type specifier
fix datatype mismatches
fix unsigned check
"extern" shouldn't be used for definitions
joined identical conditional blocks
simplify fpm tests
SEND_VAR_NO_REF optimization
Add test for bug #68442
Add various tests for FPM - covering recent bugs (68420, 68421, 68423, 68428) - for UDS - for ping and status URI - for multi pool and multi mode
Include small MIT FastCGI client library from https://github.com/adoy/PHP-FastCGI-Client
Get rid of zend_free_op structure (use zval* instead). Get rid of useless TSRMLS arguments.
Add new FPM test for IPv4/IPv6
...
Conflicts:
win32/build/config.w32
2014-11-18 21:18:52 +01:00
Anatol Belski
3b4a6dc114
removed useless check
...
the offset member is an unsigned
2014-11-14 17:39:35 +01:00
Dmitry Stogov
75041379a6
Improved object property access.
2014-11-06 14:50:03 +03:00
Anatol Belski
897695764c
fix datatype mismatches
...
sizeof(struct _string) doesn't increase.
2014-10-29 15:30:14 +01:00
Anatol Belski
9cbdf3e66a
Merge remote-tracking branch 'origin/master' into native-tls
...
* origin/master:
Fixed compilation
Optimized property access handlers. Removed EG(std_property_info).
Fixed bug #68199 (PDO::pgsqlGetNotify doesn't support NOTIFY payloads)
News entry for new curl constants
2014-10-18 03:31:02 +02:00
Dmitry Stogov
7471c21781
Optimized property access handlers. Removed EG(std_property_info).
2014-10-17 19:10:05 +04:00
Anatol Belski
0490a32249
more exts converted for static tsrm ls pointer
...
mbstring, pcre, reflection
2014-10-15 19:19:23 +02:00
Nikita Popov
c4ab08ac9d
Fix invalid zend_string_frees in reflection
...
zend_lookup_class can share the name
2014-10-12 20:55:51 +02:00
Nikita Popov
ee5b30fa19
Remove support for classes without class entries
...
get_class_entry must be non-NULL and return non-NULL.
2014-10-09 13:58:14 +02:00
Johannes Schlüter
429e1b45a7
Merge branch 'PHP-5.6'
2014-10-04 20:07:00 +02:00
Johannes Schlüter
79ca53b62b
Merge branch 'PHP-5.5' into PHP-5.6
2014-10-04 20:06:44 +02:00
Johannes Schlüter
b386991471
Fix accidental edit in previous commit
2014-10-04 20:06:02 +02:00
Johannes Schlüter
a1347a0190
Merge branch 'PHP-5.6'
2014-10-04 20:00:40 +02:00
Johannes Schlüter
61d29990b4
Merge branch 'PHP-5.5' into PHP-5.6
2014-10-04 20:00:10 +02:00
Johannes Schlüter
136dd53ac2
Fix arginfo
2014-10-04 19:59:21 +02:00
Dmitry Stogov
bd9a234645
Replaced EG(This) and EX(object) with EX(This).
...
Internal functions now recieves zend_execute_data as the first argument.
2014-10-03 19:32:46 +04:00
Remi Collet
ed59fa3a0d
Fixed bug #68103 Dupplicate entry in Reflection (merged)
2014-09-26 09:28:02 +02:00
Remi Collet
97cab239d7
Merge branch 'PHP-5.5' into PHP-5.6
...
* PHP-5.5:
NEWS
Fixed bug #68103 Dupplicate entry in Reflection
2014-09-26 09:06:51 +02:00
Remi Collet
efa7f87de4
Fixed bug #68103 Dupplicate entry in Reflection
...
$ php -r '$r=new ReflectionExtension("pthreads"); print_r($r->getClassNames());'
Array
(
[0] => Threaded
[1] => stackable
[2] => Thread
[3] => Worker
[4] => Mutex
[5] => Cond
[6] => Collectable
[7] => Pool
)
In getClasses() output, it is possible to compare key (ex "stackable")
with $obj->name (ex "Threaded") to detect class alias.
...
[Threaded] => ReflectionClass Object
(
[name] => Threaded
)
[stackable] => ReflectionClass Object
(
[name] => Threaded
)
...
2014-09-26 08:56:42 +02:00
Johannes Schlüter
d0cb715373
s/PHP 5/PHP 7/
2014-09-19 18:33:14 +02:00
Dmitry Stogov
bccc653185
Avoid double IS_INTERNED() check
2014-09-19 17:32:50 +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
Nikita Popov
ebc6da5628
zend_get_property_info takes a zend_string* now
2014-09-14 16:18:08 +02:00
Anatol Belski
734d0b6bfd
use nice way to achieve the property name length
2014-09-14 15:09:54 +02:00
Anatol Belski
f1ba5389cd
reduce struct size by 8 bytes on 64 bit
2014-09-14 12:32:38 +02:00
Anatol Belski
0b40abf41d
avoid repeated strlen() usage
2014-09-14 12:30:01 +02:00
Dmitry Stogov
e51677b2e6
fixed reference counting
2014-09-02 11:24:52 +04:00
Dmitry Stogov
88d7ca44f6
Refactored INI subsystem to use zend_string* instead of char*
2014-09-01 20:57:33 +04:00
Anatol Belski
257ed4061a
's' works with size_t round 2
2014-08-27 20:49:33 +02:00
Anatol Belski
3234480827
first show to make 's' work with size_t
2014-08-27 20:49:31 +02:00
Anatol Belski
202e8db1dc
fixed several long vs zend_long casts
2014-08-26 11:26:53 +02:00
Anatol Belski
6f9f0bf205
master renames phase 2
2014-08-25 19:28:33 +02:00
Anatol Belski
c3e3c98ec6
master renames phase 1
2014-08-25 19:24:55 +02:00
Anatol Belski
fb8c41101d
fix zpp
2014-08-21 15:39:29 +02:00
Anatol Belski
977cf1dc11
Merge branch 'master' of git.php.net:php-src
...
# By Tjerk Meesters
# Via Tjerk Meesters
* 'master' of git.php.net:php-src:
Fixes missing Reflector interface constraints being enforced by the engine
2014-08-17 12:04:05 +02:00
Anatol Belski
1169de3e61
fix some cases with fast zpp
2014-08-16 14:00:02 +02:00
Anatol Belski
cb25136f4e
fix macros in the 5 basic extensions
2014-08-16 11:37:14 +02:00
Tjerk Meesters
87afa6bdc9
Fixes missing Reflector interface constraints being enforced by the engine
2014-08-16 17:34:56 +08:00
Dmitry Stogov
b8517e410c
cleanup
2014-08-13 12:36:10 +04:00
Dmitry Stogov
7301994c28
Merge branch 'master' into phpng
...
* master: (46 commits)
PHP_INT_MIN and _MAX tests
NEWS and UPGRADING
Added PHP_INT_MIN
Fix wrong lenght size
Bug #51096 - Remove unnecessary ? for first/last day of
Moved streams related functions to xp_ssl.c
Remove duplicate NEWS
Update NEWS
Update NEWS
Update NEWS
BFN
BFN
Fixed bug #67715 (php-milter does not build and crashes randomly).
We need to turn off any strict mode here for this warning to show up
Disable restrictions regarding arrays in constants at run-time. For the discussion around it, see the thread on the mailing list: http://www.mail-archive.com/internals@lists.php.net/msg68245.html
Revert "Fix bug #67064 in a BC safe way"
Updated NEWS for #67693
Updated NEWS for #67693
Fixed bug #67693 - incorrect push to the empty array
add missing entry to NEWS
...
Conflicts:
Zend/tests/errmsg_040.phpt
Zend/tests/ns_059.phpt
Zend/zend_language_parser.y
Zend/zend_vm_def.h
ext/openssl/openssl.c
ext/reflection/php_reflection.c
ext/session/session.c
ext/spl/spl_directory.c
ext/spl/spl_iterators.c
ext/sqlite3/sqlite3.c
ext/standard/array.c
2014-08-04 13:56:27 +04:00
Xinchen Hui
be010e26c4
Fixed getDefaultProperties (it should not return reference)
2014-07-31 12:55:53 +08:00
Ferenc Kovacs
d18b16244c
update the exception message to better match the actual check
2014-07-30 10:16:01 +02:00
Ferenc Kovacs
d586441d90
ReflectionClass::newInstanceWithoutConstructor() should be allowed to instantiate every class except those internal classes with a final __construct()
2014-07-30 10:08:56 +02:00
Dmitry Stogov
7c6477ce37
Merge branch 'master' into phpng
...
* master:
Removed second zval_copy_ctor()
Fixed crash on self-referencing constant expression (part of a constant AST)
Fixed support for constant arrays in context of "const" statement (Zend/tests/constant_expressions_arrays.phpt failed when opcache.protect_memort was set)
Conflicts:
Zend/zend_ast.c
Zend/zend_vm_def.h
Zend/zend_vm_execute.h
ext/reflection/php_reflection.c
2014-07-24 01:54:21 +04:00
Dmitry Stogov
d909b6330e
Fixed crash on self-referencing constant expression (part of a constant AST)
2014-07-24 00:37:15 +04:00
Dmitry Stogov
27f38798a1
Fast parameter parsing API
...
This API is experemental. It may be changed or removed.
It should be used only for really often used functions.
(Keep the original parsing code and wrap usage with #ifndef FAST_ZPP)
2014-07-11 16:32:20 +04:00
Dmitry Stogov
2ed8a17045
Refactored run_time_cache usage in object handlers
2014-07-07 20:54:31 +04:00
Dmitry Stogov
909acec231
Avoid useles constants update
2014-06-16 23:32:58 +04:00
Dmitry Stogov
c9062917eb
Use new zend_hash API
2014-05-28 12:34:08 +04:00
Xinchen Hui
d8651fbe1c
Make they are in the same style of Z_ISREF
2014-05-03 16:08:58 +08:00
Dmitry Stogov
17d027ed47
Split IS_BOOL into IS_FALSE and IS_TRUE
2014-04-30 18:32:42 +04: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
5864ce8a44
Fixed compilation warnings
2014-04-22 17:46:34 +04:00
Dmitry Stogov
4ed452c1b5
Convert zval_get_string() into "fast path" macro and "slow path" function
2014-04-21 22:36:01 +04:00
Nikita Popov
0d43a277b8
Use zval_get_string in a few more places
2014-04-21 17:55:58 +02:00
Nikita Popov
bda96e3c58
Use zval_get_string in print_zval and propagate TSRMLS
2014-04-21 17:55:58 +02:00
Dmitry Stogov
afe66d89a1
Cleanup
2014-04-21 16:34:40 +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
cc576c74d2
op_array->function_name, op_array->doc_comments and op_array->filename may be kept in opcache SHM
2014-04-16 22:41:07 +04:00
Dmitry Stogov
c44eee153f
Fixed reference counting
2014-04-16 17:06:25 +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
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
Bob Weinand
35b895fdf0
Removed useless void* parameter and replaced with zend_bool on zval_update_constant* functions
2014-04-11 19:18:58 +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
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
3bc8810b1e
Constant duplication optimization
...
Argument receiving optimization
2014-04-04 03:55:27 +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
042c937f69
Use STR_COPY() instead of STR_DUP() where possible
2014-04-01 17:10:15 +04:00
Dmitry Stogov
a25a1ba0ef
STR_DUP() doesn't duplicate interned strings anymore. In case new string is required STR_INIT() or STR_ALLOC() should be used.
2014-04-01 16:31:03 +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
887189ca31
Refactored IS_INDIRECT usage for CV and object properties to support HashTable resizing
2014-03-26 18:07:31 +04:00
Dmitry Stogov
b7938ab1bd
Refactored GC (incomplete)
2014-03-19 17:00:28 +04:00
Xinchen Hui
648f1081c9
Fixed function name comparation
2014-03-17 12:32:42 +08:00
Xinchen Hui
7d8e990f29
Fixed add_ref asseration fail
2014-03-17 12:16:46 +08:00
Xinchen Hui
897a4d255a
Refactor reflection_object to fix bug after default_properties changed
2014-03-17 12:15:22 +08:00
Xinchen Hui
466dbfee88
Fixed NULL pointer dereference
2014-03-17 12:05:52 +08:00
Dmitry Stogov
3733737328
Handle interned strings as non-refcounted scalars
2014-03-05 13:55:56 +04:00
Dmitry Stogov
040dea8b82
Arguments taken by internal functions using zend_parse_parameters() with "+" and "*" specifications must not be deallocated anymore.
2014-03-05 11:10:52 +04:00
Dmitry Stogov
19670c2bbc
Fixied calling object closures from internal functions
2014-03-05 01:54:21 +04:00
Xinchen Hui
6ed82f7104
Use zend_string to avoid memleak
2014-03-02 22:00:30 +08:00
Xinchen Hui
8cb468d5e3
Fixed wrong condition (introduced by previous ci)
2014-03-02 21:48:38 +08:00
Xinchen Hui
18363f42b2
Fixed invalid free
2014-03-02 21:44:17 +08:00
Xinchen Hui
35742a74e2
Fixed zend_string
2014-03-02 21:42:21 +08:00
Xinchen Hui
4eeee08ec8
Fixed getClosureThis()
2014-03-02 21:40:20 +08:00
Xinchen Hui
30c20084d7
Fixed memory leak
2014-03-02 21:36:51 +08:00
Xinchen Hui
26e993a7ae
Fixed zend_string
2014-03-02 16:07:44 +08:00
Xinchen Hui
8d2c1f58a1
Fixed refcounting
2014-03-02 15:15:51 +08:00
Xinchen Hui
ff5870a288
Fixed reflection (incompeleted)
2014-03-02 15:14:00 +08:00
Xinchen Hui
b353d5abe9
Fixed un-initilized iterator in DirectoyItrator
2014-02-28 16:06:47 +08:00
Xinchen Hui
a5ce7d526e
Revert "Move zend_objects_store_put out of zend_object_std_init"
...
This reverts commit 8ced4f0ac9
.
2014-02-28 13:59:07 +08:00
Xinchen Hui
8ced4f0ac9
Move zend_objects_store_put out of zend_object_std_init
2014-02-28 12:59:51 +08:00
Dmitry Stogov
4a1ecf0e8b
Reflection related fixes
2014-02-26 02:02:57 +04:00
Dmitry Stogov
c077742b2a
Fixed reflection object destruction
2014-02-25 17:03:48 +04: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