Commit Graph

163 Commits

Author SHA1 Message Date
Stanislav Malyshev
b7a7b1a624 trailing whitespace removal 2015-01-10 15:07:38 -08:00
Anatol Belski
bdeb220f48 first shot remove TSRMLS_* things 2014-12-13 23:06:14 +01:00
Anatol Belski
1100f1b8fd fix datatype mismatch 2014-10-29 15:30:13 +01:00
Nikita Popov
e33f3d3b7c Move smart_str implementation into Zend/
So we can use it there as well...

For now I've retained the zend_smart_str_public.h header, though
it would probably be better to just move that one struct into
zend_types.h.
2014-09-21 20:49:39 +02:00
Johannes Schlüter
d0cb715373 s/PHP 5/PHP 7/ 2014-09-19 18:33:14 +02:00
Anatol Belski
3234480827 first show to make 's' work with size_t 2014-08-27 20:49:31 +02:00
Anatol Belski
c3e3c98ec6 master renames phase 1 2014-08-25 19:24:55 +02:00
Anatol Belski
70de6180d5 fixes to %pd format usage 2014-08-24 02:35:34 +02:00
Anatol Belski
7ef536e4c9 Merge remote-tracking branch 'php/master'
Conflicts:
	Zend/zend_exceptions.c
2014-08-21 13:54:15 +02:00
Dmitry Stogov
e9439f62e5 Avoid reallocation and copying 2014-08-21 12:02:48 +04:00
Anatol Belski
90d6f60bc1 mostly fixes to spl, but also some other 2014-08-17 13:31:39 +02:00
Anatol Belski
cb25136f4e fix macros in the 5 basic extensions 2014-08-16 11:37:14 +02:00
Dmitry Stogov
acfbb7b6dc Merge branch 'master' into test
* master: (67 commits)
  remove the NEWS entry for the reverted fpm fix
  remove the NEWS entry for the reverted fpm fix
  remove the NEWS entry for the reverted fpm fix
  Revert "Fix Bug #67530 	error_log=syslog ignored"
  --enable-fpm for the travis build
  fix the last fpm NEWS entry, the other bug is related, but not the same what we fixed here
  NEWS
  NEWS
  Fix bug #67091: make install fails to install libphp5.so on FreeBSD 10.0
  adding NEWS entry for the fix for bug #65641
  Updated NEWS file for recent phpdbg fixes
  Fixed issue krakjoe/phpdbg#94 - List behavior is inconsistent
  Fix issue krakjoe/phpdbg#97 - list now appends a newline if there is none The prompt should always ensure it is on a newline
  Fixed test
  Inform about back command existence in help - Fixes krakjoe/phpdbg#100 No way to list the current stack/frames
  Fix issue krakjoe/phpdbg#98 break if does not seem to work
  Fix issue krakjoe/phpdbg#99 register function has the same behavior as run
  Fix readline/libedit (Thanks to @remicollet)
  Replace incorrect `E` command with `ev` in watch help
  Fix typo in `finish` help
  ...

Conflicts:
	Zend/zend_ast.c
	Zend/zend_highlight.c
	Zend/zend_indent.c
	ext/spl/spl_array.c
	ext/spl/spl_observer.c
	ext/standard/info.c
2014-07-01 00:19:41 +04:00
Stanislav Malyshev
a374dfab56 Fix bug #67492: unserialize() SPL ArrayObject / SPLObjectStorage Type Confusion 2014-06-24 10:32:11 -07:00
Stanislav Malyshev
b03993dde9 Fix bug #67492: unserialize() SPL ArrayObject / SPLObjectStorage Type Confusion 2014-06-24 10:29:26 -07:00
Stanislav Malyshev
88223c5245 Fix bug #67492: unserialize() SPL ArrayObject / SPLObjectStorage Type Confusion 2014-06-21 19:46:16 -07:00
Dmitry Stogov
b108267f2c Merge branch 'master' into phpng
* master: (41 commits)
  Update copyright year to 2014
  Update copyright year to 2014
  Update copyright year to 2014
  Update copyright year to 2014
  Update copyright year to 2014
  Update copyright year to 2014
  Update copyright year to 2014
  NEWS
  Fix Request #67453 Allow to unserialize empty data.
  Update copyright year to 2014
  Update copyright year for re2c generated files
  Update copyright year to 2014
  Update copyright year for re2c files as well
  Fix patch for bug #67436
  fix failed test
  Fix test on modern distro where old unsecure algo are disabled in openssl config. Testing recent algo should be enough to check this function.
  Added tests for bug 67436
  Fixed wrong XFAIL test - already fixed
  Fix typo in Bug #67406 NEWS entry
  Fix typo in Bug #67406 NEWS entry
  ...

Conflicts:
	Zend/zend_compile.c
	ext/session/session.c
	ext/standard/array.c
	ext/standard/http_fopen_wrapper.c
	tests/classes/bug63462.phpt
2014-06-18 17:50:27 +04:00
Remi Collet
ea466a316f Fix Request #67453 Allow to unserialize empty data.
SplDoublyLinkedList, SplObjectStorage and ArrayObject have empty
constructor (no arg), so it make sense to allow to unserialize empty
data.

This allow the hack (used in various place, including PHPUnit) to
instanciate class without call to constructor to work.
2014-06-17 09:38:54 +02:00
Dmitry Stogov
9eb89dddb1 Use optimized zend_array_dup() function. convert zend_hash_num_elements() and zend_hash_next_free_element() into macros. 2014-05-23 20:37:53 +04:00
Xinchen Hui
82a4897446 Use new iterator macros 2014-05-19 10:55:09 +08: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
72c287bd23 Combine HashTable.flags and HashTable.nApplyCount into single 32-bit word 2014-04-21 18:25:34 +04:00
Bob Weinand
a93e734f81 Merge branch 'PHP-5.5' into PHP-5.6 2014-04-14 00:08:36 +02:00
Dmitry Stogov
6bfedfd22e Fixed unserialize() 2014-04-10 18:08:11 +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
6b2ed577fd Avoid unnecessry reallocations 2014-04-01 22:36:17 +04:00
Dmitry Stogov
b7938ab1bd Refactored GC (incomplete) 2014-03-19 17:00:28 +04:00
Xinchen Hui
5df7fe59f3 Fixed wrong md5 str length 2014-03-16 15:52:50 +08:00
Xinchen Hui
1d4cea40e3 Refactor SplObjectStorage make it works 2014-03-08 14:47:55 +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
Xinchen Hui
0817cee164 Fixed object creating (std_init calls store_put now) 2014-02-27 22:47:30 +08:00
Xinchen Hui
43b03c74b3 Refacting smart_str 2014-02-18 17:42:46 +08:00
Dmitry Stogov
2b9b9afa7a Use better data structures (incomplete) 2014-02-17 17:59:18 +04:00
Xinchen Hui
34aefa5604 Use better data structures (incomplete) 2014-02-15 23:21:09 +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
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
1f516510b7 Merge branch 'PHP-5.3' into PHP-5.4 2012-12-13 10:44:56 +08:00
Xinchen Hui
39a3007ab2 MFH 2012-12-13 10:44:14 +08:00
Dmitry Stogov
df97c3aa0d Use get_gc instead of hacks of get_properties 2012-12-05 17:58:36 +04:00
Xinchen Hui
6284ef112e Fixed bug #63236 (Executable permission on various source files) 2012-10-09 13:28:31 +08:00
Xinchen Hui
e4a8fa6a15 Merge branch 'PHP-5.3' into PHP-5.4 2012-10-09 13:29:51 +08:00
Johannes Schlüter
b025b9d0cf Fix #62432 ReflectionMethod random corrupt memory on high concurrent
This fixes the same issue in multiple extensions. This isn't needed
in later branches as 5.4 introduced object_properties_init()
2012-06-27 23:26:33 +02:00
Gustavo André dos Santos Lopes
0f001703a8 Fixed bug #61453.
The "hash" function used strncpy on data that would have NUL bytes, ending the
copy prematurely and causing collisions between objects.
2012-03-21 12:42:09 +00:00
Felipe Pena
e4ca0ed09f - Year++ 2012-01-01 13:15:04 +00:00
Felipe Pena
4e19825281 - Year++ 2012-01-01 13:15:04 +00:00
Michael Wallner
d8ca919da1 Fixed bug #60240 (invalid read/writes when unserializing specially crafted strings) 2011-12-02 11:50:22 +00:00
Xinchen Hui
a8a0a6c3f1 Sizeof mismatch 2011-08-08 08:49:55 +00:00
Xinchen Hui
dbd405a001 Wrong sizeof 2011-08-08 02:33:03 +00:00
Felipe Pena
191df85605 - Drop C++ style comments 2011-06-10 23:14:15 +00:00
Felipe Pena
53b1c76efe - Fixed SplObjectStorage::offsetSet arginfo, reported in bug #54118 2011-03-01 00:13:23 +00:00
Felipe Pena
18097605b7 - Fixed SplObjectStorage::offsetSet arginfo, reported in bug #54118 2011-03-01 00:13:23 +00:00
Etienne Kneuss
47fc5e06f0 Implement SplObjectStorage::removeAllExcept (Patch by Matthey Turland) 2011-01-05 15:01:18 +00:00
Etienne Kneuss
78728e33fa Implement SplObjectStorage::removeAllExcept (Patch by Matthey Turland) 2011-01-05 15:01:18 +00:00
Felipe Pena
927bf09c29 - Year++ 2011-01-01 02:19:59 +00:00
Felipe Pena
0203cc3d44 - Year++ 2011-01-01 02:17:06 +00:00
Felipe Pena
6958cb4a14 - Added missing void arg checks 2010-11-14 18:40:08 +00:00
Felipe Pena
8192f0f771 - Added missing void arg checks 2010-11-14 18:40:08 +00:00
Gustavo André dos Santos Lopes
384cd8cda5 - Small optimization of the fix of bug #53071. It's not necessary to destroy
the debug info as it's not holding references anymore (the fix removed
  the refcount increments).
2010-10-25 02:03:20 +00:00
Gustavo André dos Santos Lopes
21d704063d - Small optimization of the fix of bug #53071. It's not necessary to destroy
the debug info as it's not holding references anymore (the fix removed
  the refcount increments).
2010-10-25 02:03:20 +00:00
Gustavo André dos Santos Lopes
5721132c29 - Fixed bug #53071 (SPLObjectStorage defeats gc_collect_cycles). 2010-10-25 01:41:54 +00:00
Gustavo André dos Santos Lopes
7fcce35f9b - Fixed bug #53071 (SPLObjectStorage defeats gc_collect_cycles). 2010-10-25 01:41:54 +00:00
Felipe Pena
f0d2559d26 - Fixed bug #53144 (SplObjectStorage::removeAll()) 2010-10-24 14:03:07 +00:00
Felipe Pena
6887b97a8d - Fixed bug #53144 (SplObjectStorage::removeAll()) 2010-10-24 14:03:07 +00:00
Stanislav Malyshev
865f85718f fix SplObjectStorage unserialization (CVE-2010-2225) 2010-06-29 00:58:31 +00:00
Stanislav Malyshev
de8022e905 fix SplObjectStorage unserialization (CVE-2010-2225) 2010-06-29 00:58:31 +00:00
Michael Wallner
89e93723fb Added support for object references in recursive serialize() calls. FR #36424 2010-05-26 07:24:37 +00:00
Dmitry Stogov
c5237d82bf Added caches to eliminate repeatable run-time bindings of functions, classes, constants, methods and properties 2010-05-24 14:11:39 +00:00
Etienne Kneuss
74396cf3d2 fix the fix for the fix 2010-05-10 13:03:33 +00:00
Etienne Kneuss
815db040a9 Fix crash 2010-05-10 12:38:13 +00:00
Felipe Pena
8d46707889 - Fix crash when instantiating MultipleIterator 2010-05-10 01:39:58 +00:00
Kalle Sommer Nielsen
5c628d550b Fix build, declarings first 2010-05-03 09:21:21 +00:00
Etienne Kneuss
f9532adcc6 Fix misplaced code 2010-04-29 17:14:37 +00:00
Etienne Kneuss
e6ee260b25 Implement SplObjectStorage::getHash() 2010-04-29 15:47:41 +00:00
Sebastian Bergmann
9ba1e81665 sed -i "s#1997-2009#1997-2010#g" **/*.c **/*.h **/*.php 2010-01-03 09:23:27 +00:00
Etienne Kneuss
ef2b799a28 Fix bug #49263 (Offset error when unserializing self-references in SplObjectStorage) 2009-10-06 13:34:56 +00:00
Etienne Kneuss
6e164aa35a Fix several recursion problems when var_dump'ing self-referencing objects 2009-08-13 22:07:05 +00:00
Felipe Pena
fc4e43ec3c MFH:
- Added missing methods' arginfo (for void params)
- Fixed arginfos:
  - MultipleIterator::__construct
  - MultipleIterator::setFlags      (Thanks Philip!)
  - SplFixedArray::__construct
2009-07-04 20:31:27 +00:00
Etienne Kneuss
225d86dcfa MFH: Fix #47671 (cloning SplObjectStorage instances) 2009-03-19 02:45:17 +00:00
Etienne Kneuss
5755d152ca MFH: Implement SplObjectStorage::addAll/removeAll 2009-01-16 22:20:53 +00:00
Etienne Kneuss
cd63e52c0b MFH: Fix #47045 (Correctly compare splobjectstorages with ==) 2009-01-14 15:53:03 +00:00
Sebastian Bergmann
08659c2dcd MFH: Bump copyright year, 3 of 3. 2008-12-31 11:15:49 +00:00
Etienne Kneuss
3919b16f04 MFH: Fix #46241 (stacked error_handlers, error_handling in general) 2008-11-19 02:00:53 +00:00
Felipe Pena
fc2fb50d09 - MFH: Added 'static' into ZEND_BEGIN_ARG_INFO_EX macro 2008-11-17 11:28:01 +00:00
Felipe Pena
7a37fa2d6b - Revert ZEND_BEGIN_ARG_INFO change 2008-11-02 21:19:39 +00:00
Felipe Pena
df10005563 - MFH: Added 'static' into ZEND_BEGIN_ARG_INFO_EX macro 2008-10-24 14:35:40 +00:00
Etienne Kneuss
c77ca4c34a MFH: Fix error_handling usage in various extensions 2008-08-08 22:07:07 +00:00
Marcus Boerger
ae8ef6c13a - MFH Add MultipleIterator (Arnaud, Marcus) 2008-07-22 22:54:35 +00:00
Marcus Boerger
e9914e9d06 - MFH Make SplObjectStorage implement ArrayAccess
[DOC]
2008-01-28 22:48:15 +00:00
Marcus Boerger
a339867860 MFH:
[DOC] Add ability to store associative infor with objects in SplObjectStorage
- Add second parameter to SplObjectStorage::attach()
- Add SplObjectStorage::setInfo()
- Add SplObjectStorage::getInfo()
2008-01-27 18:07:20 +00:00
Marcus Boerger
5081a15490 - Minor rearrange and fix potential issue with double adding 2008-01-27 15:23:14 +00:00
Sebastian Bergmann
d1dded8751 MFH: Bump copyright year, 2 of 2. 2007-12-31 07:17:19 +00:00
Jani Taskinen
b489251177 - MFH from HEAD:
. Folding tags
  . Parameter parsing
  . SPL debug info
  . array function improvements (not all yet)
  . Improvements to function calling with call_user_* functions
  . Improvements to debugging info in var_dump/print_r
# I propably forgot already something but this all was pretty close tied
# to each other so it wasn't possible to do it in parts.
2007-11-02 19:40:39 +00:00