Compare commits

...
Author SHA1 Message Date
Anatol Belski a72a43c86c some more replacements 2014-08-22 09:28:44 +02:00
Anatol Belski 1b40f4d7b1 yet more replaces 2014-08-18 10:35:12 +02:00
Anatol Belski 3a37100198 more replacements for ng 2014-08-17 21:15:35 +02:00
Anatol Belski c3c83bb078 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  Patches #67739
  PHP_INT_MIN and _MAX tests
  NEWS and UPGRADING
  Added PHP_INT_MIN

Conflicts:
	main/main.c
2014-08-04 10:34:07 +02:00
Anatol Belski 616275859e Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport: (51 commits)
  backport the fix for bug #67739
  fix macro
  Fix bug #67705 (extensive backtracking in rule regular expression)
  add test
  Fix bug #67705 (extensive backtracking in rule regular expression)
  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
  ...
2014-08-04 10:28:03 +02:00
Anatol Belski 38a4b934ca Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  backport the fix for bug #67739
  Fix bug #67705 (extensive backtracking in rule regular expression)
  add test
  Fix bug #67705 (extensive backtracking in rule regular expression)
2014-08-04 10:04:02 +02:00
Anatol Belski eee03852b6 Merge branch 'PHP-5.6'
* PHP-5.6:
  backport the fix for bug #67739
2014-08-04 09:59:06 +02:00
Anatol Belski d730675be5 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  backport the fix for bug #67739
2014-08-04 09:58:47 +02:00
Anatol Belski e0c1fa30c4 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  backport the fix for bug #67739
2014-08-04 09:57:59 +02:00
Anatol Belski ae74549239 backport the fix for bug #67739 2014-08-04 09:57:08 +02:00
Anatol Belski 8eeacd3364 Merge branch 'pull-request/756' 2014-08-04 09:47:11 +02:00
Anatol Belski dccbb79445 fix macro 2014-08-04 09:28:36 +02:00
Anatol Belski 860f0ca1aa Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6: (46 commits)
  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
  add missing entries to NEWS
  add NEWS block for the next RC
  NEWS entry for #67713
  ...

Conflicts:
	Zend/zend_language_parser.y
	ext/odbc/php_odbc.c
	ext/openssl/openssl.c
	ext/spl/spl_directory.c
	ext/spl/spl_iterators.c
	ext/sqlite3/sqlite3.c
	ext/standard/array.c
2014-08-04 09:18:42 +02:00
Stanislav Malyshev fa42a513a4 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #67705 (extensive backtracking in rule regular expression)
  add test
  Fix bug #67705 (extensive backtracking in rule regular expression)
2014-08-04 00:15:38 -07:00
Stanislav Malyshev 12d76b8cce Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  add test
  Fix bug #67705 (extensive backtracking in rule regular expression)

Conflicts:
	ext/fileinfo/data_file.c
	ext/fileinfo/libmagic/softmagic.c
	ext/fileinfo/magicdata.patch
2014-08-04 00:12:43 -07:00
Stanislav Malyshev 28786a2f82 Fix bug #67705 (extensive backtracking in rule regular expression) 2014-08-04 00:09:15 -07:00
Stanislav Malyshev 9b9aa4b811 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add test
2014-08-04 00:08:17 -07:00
Stanislav Malyshev 61ec9b5b0f add test 2014-08-04 00:08:08 -07:00
Stanislav Malyshev c9e114a451 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #67705 (extensive backtracking in rule regular expression)
2014-08-04 00:06:22 -07:00
Stanislav Malyshev eeaec70758 Fix bug #67705 (extensive backtracking in rule regular expression) 2014-08-04 00:05:40 -07:00
Christian Wenz 513d48f2ef Patches #67739
Fixes #67739: Windows 8.1/Server 2012 R2 OS build number reported as 6.2 (instead of 6.3)
2014-08-01 22:38:18 +02:00
Andrea Faulds fe894c2154 PHP_INT_MIN and _MAX tests 2014-08-01 17:01:17 +01:00
Andrea Faulds a2bbc6f985 Merge branch 'PHP_INT_MIN' 2014-08-01 16:29:34 +01:00
Andrea Faulds d6cf8be094 NEWS and UPGRADING 2014-08-01 16:28:20 +01:00
Andrea Faulds 24d7fc2bbc Added PHP_INT_MIN 2014-08-01 14:29:50 +01:00
Andrey Hristov 1d609d2d26 Merge branch 'PHP-5.6' 2014-07-31 21:28:19 +03:00
Andrey Hristov f5deb18b20 Merge branch 'PHP-5.5' into PHP-5.6 2014-07-31 21:28:09 +03:00
Andrey Hristov 95febf26c6 Fix wrong lenght size 2014-07-31 21:27:51 +03:00
Peter Cowburn d5542c4a17 Merge branch 'PHP-5.6'
* PHP-5.6:
  Bug #51096 - Remove unnecessary ? for first/last day of
2014-07-31 14:35:13 +01:00
Peter Cowburn 6a4f0b14eb Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Bug #51096 - Remove unnecessary ? for first/last day of
2014-07-31 14:34:50 +01:00
Peter Cowburn c2f2d5c8fc Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Bug #51096 - Remove unnecessary ? for first/last day of

Conflicts:
	ext/date/lib/parse_date.c
2014-07-31 14:33:55 +01:00
Peter Cowburn bff84d7c18 Merge branch 'pull-request/754' into PHP-5.4 2014-07-31 14:30:39 +01:00
Peter Cowburn 358aedc454 Bug #51096 - Remove unnecessary ? for first/last day of 2014-07-31 14:21:38 +01:00
Tjerk Meesters a41a16c5cd Merge branch 'PHP-5.6'
* PHP-5.6:
  Moved streams related functions to xp_ssl.c
2014-07-31 12:18:19 +08:00
Tjerk Meesters 8f345a7148 Moved streams related functions to xp_ssl.c 2014-07-31 12:17:17 +08:00
Keyur Govande 33ce329f57 Merge branch 'PHP-5.6'
* PHP-5.6:
  Remove duplicate NEWS
  Update NEWS
  Update NEWS
  Update NEWS
2014-07-30 18:50:07 +00:00
Keyur Govande 4383ac04a0 Remove duplicate NEWS 2014-07-30 18:48:43 +00:00
Keyur Govande 33c4b9d5a6 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Update NEWS
  Update NEWS
2014-07-30 18:41:13 +00:00
Keyur Govande b96224625c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Update NEWS
2014-07-30 18:39:59 +00:00
Keyur Govande 7b60430a8f Update NEWS 2014-07-30 18:39:23 +00:00
Keyur Govande 752c40d2ec Update NEWS 2014-07-30 18:38:48 +00:00
Keyur Govande 0a29e4731e Update NEWS 2014-07-30 18:33:19 +00:00
Michael Wallner 03f56152e5 Merge branch 'PHP-5.6'
* PHP-5.6:
  BFN
  BFN
  Fixed bug #67715 (php-milter does not build and crashes randomly).
2014-07-30 20:14:40 +02:00
Michael Wallner b3b25e1b70 BFN 2014-07-30 20:14:03 +02:00
Michael Wallner ceadf783fe Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  BFN
  Fixed bug #67715 (php-milter does not build and crashes randomly).
2014-07-30 20:13:39 +02:00
Michael Wallner 48cadf242d BFN 2014-07-30 20:13:17 +02:00
Michael Wallner 6ed9991a6f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #67715 (php-milter does not build and crashes randomly).
2014-07-30 20:12:50 +02:00
Michael Wallner 12b2127b72 Fixed bug #67715 (php-milter does not build and crashes randomly). 2014-07-30 20:12:13 +02:00
Rasmus Lerdorf e7d921fd0b Merge commit '8b9719d'
* commit '8b9719d':
  We need to turn off any strict mode here for this warning to show up
2014-07-30 12:23:46 -04:00
Rasmus Lerdorf 7fe21ce0f3 Merge commit '8b9719d' into PHP-5.6
* commit '8b9719d':
  We need to turn off any strict mode here for this warning to show up
2014-07-30 12:23:36 -04:00
Rasmus Lerdorf 579c9066a0 Merge commit '8b9719d' into PHP-5.5
* commit '8b9719d':
  We need to turn off any strict mode here for this warning to show up
2014-07-30 12:23:24 -04:00
Rasmus Lerdorf 8b9719d8b9 We need to turn off any strict mode here for this warning to show up 2014-07-30 12:22:48 -04:00
Bob Weinand 3c0adf2dcd Merge branch 'PHP-5.6' 2014-07-30 18:07:01 +02:00
Bob Weinand d5ddd2dbb2 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
2014-07-30 17:57:07 +02:00
Bob Weinand 354ee12b73 Revert "Fix bug #67064 in a BC safe way"
This reverts commit 1a4a9eede5.

Conflicts:
	ext/standard/array.c
	ext/standard/tests/array/bug67064.phpt
2014-07-30 17:18:05 +02:00
Tjerk Meesters 0dc88c45b8 Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS for #67693
  Fixed bug #67693 - incorrect push to the empty array
2014-07-30 18:28:23 +08:00
Tjerk Meesters f925892920 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Updated NEWS for #67693
  Fixed bug #67693 - incorrect push to the empty array
2014-07-30 18:27:29 +08:00
Tjerk Meesters 52f4587e8a Updated NEWS for #67693 2014-07-30 18:17:36 +08:00
Tjerk Meesters e9967292c3 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Updated NEWS for #67693
  Fixed bug #67693 - incorrect push to the empty array
2014-07-30 18:17:13 +08:00
Tjerk Meesters b3466f862f Updated NEWS for #67693 2014-07-30 18:16:56 +08:00
Tjerk Meesters da3add26cf Fixed bug #67693 - incorrect push to the empty array 2014-07-30 18:15:14 +08:00
Ferenc Kovacs ff5a934f21 Merge branch 'PHP-5.6'
* PHP-5.6:
  add missing entry to NEWS
2014-07-30 11:47:29 +02:00
Ferenc Kovacs 8e13e50267 add missing entry to NEWS 2014-07-30 11:47:14 +02:00
Ferenc Kovacs 83c8cd591c Merge branch 'PHP-5.6'
* PHP-5.6:
  add missing entries to NEWS
2014-07-30 11:27:13 +02:00
Ferenc Kovacs d325a1c523 add missing entries to NEWS 2014-07-30 11:26:55 +02:00
Ferenc Kovacs 3c8cee0171 Merge branch 'PHP-5.6'
* PHP-5.6:
  add NEWS block for the next RC
2014-07-30 10:51:44 +02:00
Ferenc Kovacs 858c076810 add NEWS block for the next RC 2014-07-30 10:51:28 +02:00
Ferenc Kovacs f893b18544 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS entry for #67713
  update the exception message to better match the actual check
  ReflectionClass::newInstanceWithoutConstructor() should be allowed to instantiate every class except those internal classes with a final __construct()
2014-07-30 10:46:31 +02:00
Ferenc Kovacs d649b785d6 NEWS entry for #67713 2014-07-30 10:45:35 +02:00
Ferenc Kovacs 89b54c2aa5 Merge branch 'newInstanceWithoutConstructor' into PHP-5.6
* newInstanceWithoutConstructor:
  update the exception message to better match the actual check
  ReflectionClass::newInstanceWithoutConstructor() should be allowed to instantiate every class except those internal classes with a final __construct()
2014-07-30 10:23:29 +02: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 8ad3445713 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed usage after free
2014-07-30 10:40:32 +04:00
Dmitry Stogov 43e956a9a1 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed usage after free
2014-07-30 10:40:06 +04:00
Dmitry Stogov aa3ddda8e5 Fixed usage after free 2014-07-30 10:39:25 +04:00
Keyur Govande 0e04d542e9 Merge branch 'PHP-5.6'
* PHP-5.6:
  Undo inadvertent commit of php_version
  Corrected patch for bug #60616
2014-07-30 02:47:44 +00:00
Keyur Govande f0278589e1 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Undo inadvertent commit of php_version
  Corrected patch for bug #60616
2014-07-30 02:41:01 +00:00
Keyur Govande ab4c4c3970 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Undo inadvertent commit of php_version
  Corrected patch for bug #60616
2014-07-30 02:34:46 +00:00
Keyur Govande ab6c1d21f9 Undo inadvertent commit of php_version 2014-07-30 02:34:21 +00:00
Keyur Govande 65364fe7d0 Corrected patch for bug #60616
For unixODBC, use ODBC version as defined by it (as of v2.2.14 it is 3.5).
This allows us to use newer features like SQL_DESC_OCTET_LENGTH (which
returns the number of bytes required to store the data). This fixes the issue
in #60616. If the newer version is not available, over-allocate to accomodate
4-byte Unicode characters for CHAR and VARCHAR datatypes (and their Wide
counterparts).
version.
Fixed a couple of failing tests.
2014-07-30 02:28:31 +00:00
Tjerk Meesters 0120a9ca4b Merge branch 'PHP-5.6'
* PHP-5.6:
  Wildcards should only be used in the first name component; fixed comment style
2014-07-29 19:15:20 +08:00
Tjerk Meesters a7dad26c4b Wildcards should only be used in the first name component; fixed comment style 2014-07-29 19:15:01 +08:00
Keyur Govande e7df0af6bd Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #60616 (odbc_fetch_into returns junk at end of multi-byte char fields)
2014-07-28 23:17:23 +00:00
Keyur Govande 9720d92c67 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #60616 (odbc_fetch_into returns junk at end of multi-byte char fields)
2014-07-28 23:16:52 +00:00
Keyur Govande 90f99d47c0 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #60616 (odbc_fetch_into returns junk at end of multi-byte char fields)
2014-07-28 23:16:20 +00:00
Keyur Govande 00546bc9b7 Fix bug #60616 (odbc_fetch_into returns junk at end of multi-byte char fields)
The ODBC extension did not support WVARCHAR. WVARCHAR ends up being handled by
the default handler where vallen is set by the driver to the actual bytes
needed for the field. If it is larger than default-lrl then the output is
corrupted (reading past the buffer) because the return functions don't expect
that to happen. The patch add support to handle WVARCHAR just like a regular
VARCHAR.
2014-07-28 23:15:23 +00:00
Stanislav Malyshev fcd195aa64 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix SOAP for uninitialzed object
2014-07-28 11:38:20 -07:00
Stanislav Malyshev 180db42a90 fix SOAP for uninitialzed object 2014-07-28 11:38:06 -07:00
Stanislav Malyshev f281a315f7 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix NEWS
  Fix missing type checks in various functions
2014-07-28 00:39:24 -07:00
Stanislav Malyshev 7f865ffdd8 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix NEWS
2014-07-28 00:39:00 -07:00
Stanislav Malyshev f782ea5b42 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix NEWS
2014-07-28 00:38:50 -07:00
Stanislav Malyshev 3e167ba990 fix NEWS 2014-07-28 00:38:10 -07:00
Stanislav Malyshev c41ca94824 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix missing type checks in various functions

Conflicts:
	ext/openssl/openssl.c
2014-07-28 00:37:32 -07:00
Stanislav Malyshev 531be9662f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix missing type checks in various functions
2014-07-28 00:34:27 -07:00
Stanislav Malyshev b4a4db467b Fix missing type checks in various functions 2014-07-27 02:42:49 -07:00
Stanislav Malyshev 47a12117c3 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix SPL objects initialization checks
2014-07-26 19:37:37 -07:00
Stanislav Malyshev 90a0d58af8 Fix SPL objects initialization checks 2014-07-26 18:59:16 -07:00
Stanislav Malyshev faaa0ffdc4 Merge branch 'PHP-5.6'
* PHP-5.6:
  Add object initialization checks for sqlite3 classes
2014-07-26 16:58:09 -07:00
Stanislav Malyshev 403eca4173 Add object initialization checks for sqlite3 classes 2014-07-26 16:57:45 -07:00
Ferenc Kovacs 03dcdf5742 Merge branch 'PHP-5.6'
* PHP-5.6:
  Revert "Fix bug #66568: the second arg for unserialize is optional." as we already reverted the introduction of the second arg.
2014-07-25 13:16:31 +02:00
Ferenc Kovacs a68ef0a117 Revert "Fix bug #66568: the second arg for unserialize is optional." as we already reverted the introduction of the second arg.
This reverts commit aefc8f22b3.

Conflicts:
	NEWS
2014-07-25 13:15:27 +02:00
Stanislav Malyshev 7abaac41fd Merge branch 'PHP-5.6'
* PHP-5.6:
  update NEWS
  Fixed bug #67539 (ArrayIterator use-after-free due to object change during sorting)
  Fixed Bug #67538 (SPL Iterators use-after-free)
2014-07-24 22:59:01 -07:00
Stanislav Malyshev 3345722354 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update NEWS
  Fixed bug #67539 (ArrayIterator use-after-free due to object change during sorting)
  Fixed Bug #67538 (SPL Iterators use-after-free)
2014-07-24 22:58:29 -07:00
Stanislav Malyshev fedc799344 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  update NEWS
  Fixed bug #67539 (ArrayIterator use-after-free due to object change during sorting)
  Fixed Bug #67538 (SPL Iterators use-after-free)
2014-07-24 22:58:06 -07:00
Stanislav Malyshev d0a244f1f3 update NEWS 2014-07-24 22:55:39 -07:00
Xinchen Hui 51c38a0997 Fixed bug #67539 (ArrayIterator use-after-free due to object change during sorting) 2014-07-24 22:54:14 -07:00
Xinchen Hui 61e0f8599d Fixed Bug #67538 (SPL Iterators use-after-free) 2014-07-24 22:53:46 -07:00
Xinchen Hui ec441ff4ed Merge branch 'PHP-5.6' 2014-07-25 10:52:57 +08:00
Xinchen Hui bad5502ca9 Merge branch 'PHP-5.6' of https://git.php.net/repository/php-src into PHP-5.6 2014-07-25 10:52:46 +08:00
Xinchen Hui 235d0241d1 Merge branch 'PHP-5.5' into PHP-5.6 2014-07-25 10:52:41 +08:00
Xinchen Hui 4ae1d5d1bd Add CVE no 2014-07-25 10:52:27 +08:00
Johannes Schlüter 0ac3d8d4f4 Merge branch 'PHP-5.6' 2014-07-24 18:02:00 +02:00
Johannes Schlüter 8d1ec3814e Merge branch 'PHP-5.5' into PHP-5.6 2014-07-24 18:01:35 +02:00
Johannes Schlüter acfa8c770c BFN 2014-07-24 18:00:58 +02:00
Johannes Schlüter 432bd117a9 Merge branch 'PHP-5.4' into PHP-5.5 2014-07-24 18:00:06 +02:00
Dmitry Saprykin d491b2f916 Fix bug #67496 Save command history when exiting interactive shell with control-c 2014-07-24 17:58:39 +02:00
Johannes Schlüter 6fdbb4601f Merge branch 'PHP-5.6' 2014-07-24 16:59:37 +02:00
Johannes Schlüter 210315d5a5 Merge branch 'PHP-5.5' into PHP-5.6 2014-07-24 16:58:50 +02:00
Johannes Schlüter 899b369e15 BFN 2014-07-24 16:58:05 +02:00
Johannes Schlüter ffc1d25b37 Merge branch 'PHP-5.4' into PHP-5.5 2014-07-24 16:56:05 +02:00
Johannes Schlüter 71d3a69425 Fix bug #55496 Interactive mode doesn't force a newline before the prompt 2014-07-24 16:53:51 +02:00
Tjerk Meesters 4b41009064 Merge branch 'PHP-5.6' 2014-07-24 14:40:30 +08:00
Tjerk Meesters aab23cf38e Updated NEWS for #67666 2014-07-24 14:39:18 +08:00
Tjerk Meesters 38e714ece5 Fixed #67666 - Subject altName doesn't match wildcards 2014-07-24 14:36:31 +08:00
Dmitry Stogov 8fb7c4dc08 Merge branch 'PHP-5.6'
* PHP-5.6:
  Removed second zval_copy_ctor()
2014-07-24 01:16:28 +04:00
Dmitry Stogov ea1d5dcacb Removed second zval_copy_ctor() 2014-07-24 01:16:00 +04:00
Dmitry Stogov 39740a33e5 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed crash on self-referencing constant expression (part of a constant AST)
2014-07-24 00:59:42 +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 4c37e69957 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed support for constant arrays in context of "const" statement (Zend/tests/constant_expressions_arrays.phpt failed when opcache.protect_memort was set)
2014-07-23 22:49:46 +04:00
Dmitry Stogov c49a06168e Fixed support for constant arrays in context of "const" statement (Zend/tests/constant_expressions_arrays.phpt failed when opcache.protect_memort was set) 2014-07-23 22:47:58 +04:00
Anatol Belski 5cadd9d6d0 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-07-21 14:57:56 +02:00
Anatol Belski 222d59aeaa Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  fix nmake snap when ext name is different in target dll
2014-07-21 14:57:51 +02:00
Anatol Belski be8f557e77 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  fix nmake snap when ext name is different in target dll
2014-07-21 14:57:19 +02:00
Anatol Belski b39f98cf81 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix nmake snap when ext name is different in target dll
2014-07-21 14:48:06 +02:00
Anatol Belski a6ecb873b9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix nmake snap when ext name is different in target dll
2014-07-21 14:47:40 +02:00
Anatol Belski 6fcd8e5865 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix nmake snap when ext name is different in target dll
2014-07-21 14:46:57 +02:00
Anatol Belski dc3a5d783f fix nmake snap when ext name is different in target dll 2014-07-21 14:45:49 +02:00
Anatol Belski 457f1a3ad5 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  This test depends on expose_php being on
  fixed broken merged code
  Fixed a bug that cannot access custom request header stored in apache_request_headers() though array index.
  Test output relies on expose_php being on
  1.2 is a problematic float to print out Lower the default display precision for this test
  The test output is dependent on expose_php ini
  cleanup file headers.
  Do not kill children process in pre-fork mode when parent process quit.
  update year & copyright
  Fix bug #67587: Redirection loop on nginx with FPM
  Fix still broken session test.  Only return true/false.
  Followup fix to custom session save handlers
  Fix handling of session user module custom handlers.
  Update info.c

Conflicts:
	ext/session/mod_user.c
	main/php_content_types.c
2014-07-21 11:35:22 +02:00
Anatol Belski 6ac9e106af Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport: (132 commits)
  force atoll macro usage on windows
  Enable $ replacement in exif, ldap, pdo_pgsql and tidy
  See bug #67635
  NEWS
  NEWS
  improve previous, add message during configure
  Fixed bug #67635 php links to systemd libraries without using pkg-config
  Improve fix for #66608
  Fixed segfault with empty break
  New added opcodes don't need to be resloved
  Update NEWS
  Update NEWS
  Update NEWS
  Fixed bug #66827 Session raises E_NOTICE when session name variable is array
  implemented copy libs of core exts in phpize mode
  fix copy the ext dll into the prefix path in phpize mode
  fix default prefix in phpize mode
  fix file with zero size usage in phpize mode
  Update NEWS
  Fixed bug #66608 (Incorrect behavior with nested "finally" blocks)
  ...

Conflicts:
	main/php_content_types.c
2014-07-21 11:33:09 +02:00
Anatol Belski 6696cbcc9a Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  force atoll macro usage on windows
2014-07-21 10:07:39 +02:00
Anatol Belski 833e466983 Merge branch 'PHP-5.6'
* PHP-5.6:
  force atoll macro usage on windows
2014-07-21 10:01:48 +02:00
Anatol Belski f6d941e4b4 force atoll macro usage on windows 2014-07-21 09:52:52 +02:00
Anatol Belski 0ff7fb02e1 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6: (131 commits)
  Enable $ replacement in exif, ldap, pdo_pgsql and tidy
  See bug #67635
  NEWS
  NEWS
  improve previous, add message during configure
  Fixed bug #67635 php links to systemd libraries without using pkg-config
  Improve fix for #66608
  Fixed segfault with empty break
  New added opcodes don't need to be resloved
  Update NEWS
  Update NEWS
  Update NEWS
  Fixed bug #66827 Session raises E_NOTICE when session name variable is array
  implemented copy libs of core exts in phpize mode
  fix copy the ext dll into the prefix path in phpize mode
  fix default prefix in phpize mode
  fix file with zero size usage in phpize mode
  Update NEWS
  Fixed bug #66608 (Incorrect behavior with nested "finally" blocks)
  Enable build without atoll (e.g old AIX flavours)
  ...

Conflicts:
	Zend/zend_opcode.c
	ext/date/php_date.c
	ext/mysqli/mysqli.c
	ext/pgsql/pgsql.c
	ext/session/session.c
	ext/spl/spl_array.c
	ext/standard/http_fopen_wrapper.c
	ext/standard/string.c
	sapi/litespeed/lsapi_main.c
2014-07-21 09:26:43 +02:00
Lior Kaplan 128eda843f Merge branch 'PHP-5.6'
* PHP-5.6:
  Enable $ replacement in exif, ldap, pdo_pgsql and tidy
  Update NEWS
2014-07-21 01:50:51 +03:00
Lior Kaplan b131b03dc2 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Enable $ replacement in exif, ldap, pdo_pgsql and tidy
  Update NEWS
2014-07-21 01:49:31 +03:00
Lior Kaplan 842fde2827 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Enable $ replacement in exif, ldap, pdo_pgsql and tidy
  Update NEWS
2014-07-21 01:47:19 +03:00
Lior Kaplan 0678dc8d91 Enable $ replacement in exif, ldap, pdo_pgsql and tidy 2014-07-21 01:45:36 +03:00
Remi Collet a9c8499d4b Merge branch 'PHP-5.6'
* PHP-5.6:
  See bug #67635
2014-07-20 11:16:09 +02:00
Remi Collet d55f23ea5a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  See bug #67635
2014-07-20 11:15:59 +02:00
Remi Collet 658f7d77f9 See bug #67635
Improve previous fix:
- also rely on pkg-config for systemd < 209
- always check for header
- comments
2014-07-20 11:14:43 +02:00
Remi Collet 6055a53d34 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  improve previous, add message during configure
  Fixed bug #67635 php links to systemd libraries without using pkg-config
2014-07-19 18:47:32 +02:00
Remi Collet 0ec8f19975 NEWS 2014-07-19 18:47:14 +02:00
Remi Collet d5d16b6278 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  improve previous, add message during configure
  Fixed bug #67635 php links to systemd libraries without using pkg-config
2014-07-19 18:46:46 +02:00
Remi Collet a051d7264d NEWS 2014-07-19 18:46:17 +02:00
Remi Collet 144a083954 improve previous, add message during configure 2014-07-19 18:42:40 +02:00
Remi Collet 7b60315672 Fixed bug #67635 php links to systemd libraries without using pkg-config
Patch from pacho at gentoo dot org

Rely on pkg-config for systemd >= 209
Failback on old check
2014-07-19 18:40:20 +02:00
Xinchen Hui 1c0e22f50c Merge branch 'PHP-5.6' 2014-07-19 17:19:57 +08:00
Xinchen Hui 1d2f232bd2 Merge branch 'PHP-5.5' into PHP-5.6 2014-07-19 17:19:39 +08:00
Xinchen Hui 8ff00e6e85 Improve fix for #66608 2014-07-19 17:19:01 +08:00
Xinchen Hui 9ce1a36af2 Fixed segfault with empty break 2014-07-19 15:30:50 +08:00
Xinchen Hui a3e8a10918 Merge branch 'PHP-5.6' 2014-07-19 13:12:56 +08:00
Xinchen Hui cd95347cbc Merge branch 'PHP-5.6' of https://git.php.net/repository/php-src into PHP-5.6 2014-07-19 13:12:42 +08:00
Xinchen Hui 9bef96d96e Merge branch 'PHP-5.5' into PHP-5.6 2014-07-19 13:12:36 +08:00
Xinchen Hui 629c1ecd4f Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5 2014-07-19 13:12:26 +08:00
Xinchen Hui f604b61e39 New added opcodes don't need to be resloved 2014-07-19 12:53:34 +08:00
Yasuo Ohgaki f19eb82f7c Update NEWS 2014-07-19 10:13:15 +09:00
Yasuo Ohgaki 9b30b04b32 Update NEWS 2014-07-19 10:12:28 +09:00
Yasuo Ohgaki ad744263ca Update NEWS 2014-07-19 10:11:42 +09:00
Yasuo Ohgaki 5ed63b3bfc Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66827 Session raises E_NOTICE when session name variable is array
2014-07-19 10:00:10 +09:00
Yasuo Ohgaki d0d5a1c444 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #66827 Session raises E_NOTICE when session name variable is array
2014-07-19 09:59:51 +09:00
Yasuo Ohgaki f83a6c33b4 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #66827 Session raises E_NOTICE when session name variable is array
2014-07-19 09:53:04 +09:00
Yasuo Ohgaki e946de29d2 Fixed bug #66827 Session raises E_NOTICE when session name variable is array 2014-07-19 09:52:31 +09:00
Anatol Belski af676be066 Merge branch 'PHP-5.6'
* PHP-5.6:
  implemented copy libs of core exts in phpize mode
2014-07-18 18:41:31 +02:00
Anatol Belski 47e640164a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  implemented copy libs of core exts in phpize mode
2014-07-18 18:40:58 +02:00
Anatol Belski 982342b057 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  implemented copy libs of core exts in phpize mode
2014-07-18 18:40:09 +02:00
Anatol Belski c5ccaf1d04 implemented copy libs of core exts in phpize mode 2014-07-18 18:38:57 +02:00
Rasmus Lerdorf f8f6bd7a08 Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6
* 'PHP-5.6' of git.php.net:php-src:
  fix copy the ext dll into the prefix path in phpize mode
  fix default prefix in phpize mode
  fix file with zero size usage in phpize mode
  Update NEWS
  Fixed bug #66608 (Incorrect behavior with nested "finally" blocks)
  Enable build without atoll (e.g old AIX flavours)
  Enable build without atoll (e.g old AIX flavours)
  implemented usage of the non core ext deps in phpize mode
  implemented force usage of generated .h and .js deps in phpize mode
  basic routines for phpize mode to
  Easier to read
  Add some trace info as well as update CLIENT_ flags
  Fix my name in the given credit
  Update NEWS for PR#723 merge
  Add ifdef on ecdh for single_ecdh_use
  fix C89 compat
  This test depends on expose_php being on
  Test output relies on expose_php being on
  1.2 is a problematic float to print out Lower the default display precision for this test
  The test output is dependent on expose_php ini
2014-07-18 08:14:08 -07:00
Anatol Belski 78f2496f8c Merge branch 'PHP-5.6'
* PHP-5.6:
  fix copy the ext dll into the prefix path in phpize mode
  fix default prefix in phpize mode
  fix file with zero size usage in phpize mode
2014-07-18 11:43:43 +02:00
Anatol Belski f9d5d2abaa Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix copy the ext dll into the prefix path in phpize mode
  fix default prefix in phpize mode
  fix file with zero size usage in phpize mode
2014-07-18 11:42:24 +02:00
Anatol Belski f304fb848f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix copy the ext dll into the prefix path in phpize mode
  fix default prefix in phpize mode
  fix file with zero size usage in phpize mode
2014-07-18 11:40:53 +02:00
Anatol Belski 35b077f53e fix copy the ext dll into the prefix path in phpize mode 2014-07-18 11:39:38 +02:00
Anatol Belski 8044d0680b fix default prefix in phpize mode 2014-07-18 11:36:44 +02:00
Anatol Belski a8e0a623ec fix file with zero size usage in phpize mode 2014-07-18 11:35:32 +02:00
Xinchen Hui f6f621ef69 Merge branch 'PHP-5.6' 2014-07-18 15:51:24 +08:00
Xinchen Hui 0d01891799 Update NEWS 2014-07-18 15:51:10 +08:00
Xinchen Hui 550b3e4306 Merge branch 'PHP-5.5' into PHP-5.6
Conflicts:
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2014-07-18 15:48:56 +08:00
Xinchen Hui ba1cf321f3 Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5 2014-07-18 15:45:56 +08:00
Xinchen Hui de433d4c47 Fixed bug #66608 (Incorrect behavior with nested "finally" blocks) 2014-07-18 15:45:31 +08:00
Lior Kaplan 46dcd12d53 Merge branch 'PHP-5.6'
* PHP-5.6:
  Enable build without atoll (e.g old AIX flavours)
  Enable build without atoll (e.g old AIX flavours)
2014-07-17 23:11:33 +03:00
Lior Kaplan 84673485f5 Enable build without atoll (e.g old AIX flavours) 2014-07-17 23:10:08 +03:00
Lior Kaplan c186ce8fef Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Enable build without atoll (e.g old AIX flavours)
2014-07-17 23:09:54 +03:00
Lior Kaplan 3e1b749f5e Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Enable build without atoll (e.g old AIX flavours)
2014-07-17 23:04:23 +03:00
Lior Kaplan 2dff153b23 Enable build without atoll (e.g old AIX flavours) 2014-07-17 22:58:36 +03:00
Anatol Belski 3690e973d2 Merge branch 'PHP-5.6'
* PHP-5.6:
  implemented usage of the non core ext deps in phpize mode
2014-07-17 21:49:23 +02:00
Anatol Belski 0662a0b068 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  implemented usage of the non core ext deps in phpize mode
2014-07-17 21:49:08 +02:00
Anatol Belski b5324acd35 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  implemented usage of the non core ext deps in phpize mode
2014-07-17 21:48:46 +02:00
Anatol Belski f0a1e410a3 implemented usage of the non core ext deps in phpize mode 2014-07-17 21:47:15 +02:00
Anatol Belski 81c42db7b7 Merge branch 'PHP-5.6'
* PHP-5.6:
  implemented force usage of generated .h and .js deps in phpize mode
2014-07-17 09:32:44 +02:00
Anatol Belski 9308df4f62 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  implemented force usage of generated .h and .js deps in phpize mode
2014-07-17 09:32:31 +02:00
Anatol Belski 1a2c3bd3ad Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  implemented force usage of generated .h and .js deps in phpize mode
2014-07-17 09:26:46 +02:00
Anatol Belski b3c6089111 implemented force usage of generated .h and .js deps in phpize mode 2014-07-17 09:25:57 +02:00
Anatol Belski eb10f035fc Merge branch 'PHP-5.6'
* PHP-5.6:
  basic routines for phpize mode to
  This test depends on expose_php being on
  Test output relies on expose_php being on
  1.2 is a problematic float to print out Lower the default display precision for this test
  The test output is dependent on expose_php ini
2014-07-16 21:35:18 +02:00
Anatol Belski f86177c96f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  basic routines for phpize mode to
  This test depends on expose_php being on
  Test output relies on expose_php being on
  1.2 is a problematic float to print out Lower the default display precision for this test
  The test output is dependent on expose_php ini
2014-07-16 21:35:04 +02:00
Anatol Belski 7446c81aed Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  basic routines for phpize mode to
2014-07-16 21:34:19 +02:00
Anatol Belski ce2ad0df18 basic routines for phpize mode to
- generate headers for non core ext defines
- generate js deps for non core exts
2014-07-16 21:33:07 +02:00
Andrey Hristov 24381cdeb2 Merge branch 'PHP-5.6' 2014-07-16 19:50:41 +03:00
Andrey Hristov 23554aae19 Easier to read 2014-07-16 19:50:28 +03:00
Andrey Hristov 5d6805d498 Merge branch 'PHP-5.6'
Conflicts:
	NEWS
2014-07-16 19:25:31 +03:00
Andrey Hristov 06f5f65c94 Add some trace info as well as update CLIENT_ flags 2014-07-16 19:24:39 +03:00
Lior Kaplan ef95840550 Fix my name in the given credit 2014-07-16 17:45:23 +03:00
Daniel Lowrey a0cc25bbfb Merge branch 'PHP-5.6' 2014-07-16 00:15:05 -04:00
Daniel Lowrey 33de1dece8 Update NEWS for PR#723 merge 2014-07-16 00:14:22 -04:00
Lior Kaplan cbcbf73fe8 Add ifdef on ecdh for single_ecdh_use
Allows build with OpenSSL < 0.9.8
2014-07-16 00:10:29 +03:00
Anatol Belski 1fef4e87fc Merge branch 'PHP-5.6'
* PHP-5.6:
  fix C89 compat
  This test depends on expose_php being on
  The test output is dependent on expose_php ini
  1.2 is a problematic float to print out Lower the default display precision for this test
  Test output relies on expose_php being on
2014-07-14 20:28:23 +02:00
Anatol Belski 236365a016 fix C89 compat 2014-07-14 20:27:59 +02:00
Rasmus Lerdorf 3b08082600 This test depends on expose_php being on 2014-07-14 08:22:05 -07:00
Rasmus Lerdorf 935bc5795f This test depends on expose_php being on 2014-07-14 08:21:57 -07:00
Rasmus Lerdorf 40955e27f7 This test depends on expose_php being on 2014-07-14 08:21:27 -07:00
Rasmus Lerdorf 275e41cb12 Test output relies on expose_php being on 2014-07-14 07:21:11 -07:00
Rasmus Lerdorf 050ef52549 1.2 is a problematic float to print out
Lower the default display precision for this test
2014-07-14 07:21:10 -07:00
Rasmus Lerdorf 55069b4c09 The test output is dependent on expose_php ini 2014-07-14 07:21:10 -07:00
Rasmus Lerdorf 5d391be285 The test output is dependent on expose_php ini 2014-07-14 07:17:59 -07:00
Rasmus Lerdorf b270cc9284 1.2 is a problematic float to print out
Lower the default display precision for this test
2014-07-14 07:17:39 -07:00
Rasmus Lerdorf 8d359bbcca Test output relies on expose_php being on 2014-07-14 07:17:12 -07:00
Anatol Belski 61b91ee7db Merge branch 'PHP-5.6'
* PHP-5.6:
  added headers install to phpize mode
2014-07-14 09:53:47 +02:00
Anatol Belski 41009b40e0 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  added headers install to phpize mode
2014-07-14 09:53:34 +02:00
Anatol Belski 79b91e3c5a Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  added headers install to phpize mode
2014-07-14 09:53:16 +02:00
Anatol Belski 04821a1ee6 added headers install to phpize mode 2014-07-14 09:52:39 +02:00
Daniel Lowrey 4bdb0120dc Merge branch 'PHP-5.6' 2014-07-12 10:57:30 -04:00
Daniel Lowrey f3bf887e6d Bug #67609: TLS connections fail behind HTTP proxy 2014-07-12 10:51:44 -04:00
Tjerk Meesters 3a9bdafeff Merge branch 'PHP-5.6' 2014-07-12 15:11:18 +08:00
Tjerk Meesters b3948b1d05 Updated NEWS for #67594 2014-07-12 15:11:05 +08:00
Tjerk Meesters 4e3d9a52ac Merge branch 'PHP-5.5' into PHP-5.6 2014-07-12 15:09:47 +08:00
Tjerk Meesters 7a5323778d Updated NEWS for #67594 2014-07-12 15:09:32 +08:00
Tjerk Meesters 1684ba3c6f Fix #67594 - invisible colon should be stripped off header name 2014-07-12 12:45:50 +08:00
Tjerk Meesters 7de82eaeef Merge branch 'PHP-5.6' 2014-07-12 11:15:03 +08:00
Tjerk Meesters c3f5e2a1f9 Updated NEWS for 34407 2014-07-12 11:14:18 +08:00
Tjerk Meesters 18feaf9416 Merge branch 'PHP-5.5' into PHP-5.6 2014-07-12 11:10:15 +08:00
Tjerk Meesters 377750cd8f Updated NEWS for 34407 2014-07-12 11:09:35 +08:00
Tjerk Meesters 8757e2cab8 Merge branch 'PHP-5.4' into PHP-5.5 2014-07-12 11:08:50 +08:00
Tjerk Meesters f25ff02b54 Updated NEWS for 34407 2014-07-12 11:07:06 +08:00
Tjerk Meesters 4fc0d46ae7 Fix for bug #34407 - ucwords and title case
Added support for ranges like trim() has
2014-07-12 10:44:11 +08:00
George Wang e05fb6ee01 fixed broken merged code 2014-07-11 15:02:02 -04:00
George Wang 2d7625a1b8 Fixed a bug that cannot access custom request header stored in apache_request_headers() though array index. 2014-07-11 15:00:36 -04:00
George Wang ca8c94c917 fixed broken merged code 2014-07-11 14:57:55 -04:00
George Wang 84373a69dc Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6 2014-07-11 14:40:54 -04:00
George Wang a5f2b002b4 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2014-07-11 14:39:03 -04:00
George Wang 79d8be35f9 Fixed a bug that cannot access custom request header stored in apache_request_headers() though array index. 2014-07-11 14:38:18 -04:00
George Wang 9f721967a3 Fixed a bug that cannot access custom request header stored in apache_request_headers() though array index. 2014-07-11 14:37:39 -04:00
George Wang 0baaf9fade Fixed a bug that cannot access custom request header stored in apache_request_headers() though array index. 2014-07-11 14:31:59 -04:00
Rasmus Lerdorf cf23a2efc5 Test output relies on expose_php being on 2014-07-11 10:59:02 -07:00
Rasmus Lerdorf a6d27b80b3 1.2 is a problematic float to print out
Lower the default display precision for this test
2014-07-11 10:29:40 -07:00
Rasmus Lerdorf e6fae4ca4f The test output is dependent on expose_php ini 2014-07-11 09:12:32 -07:00
Anatol Belski 7eaac0f605 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix makefile in phpize mode
2014-07-11 15:07:39 +02:00
Anatol Belski c79a6a0613 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix makefile in phpize mode
2014-07-11 15:07:22 +02:00
Anatol Belski b10ed89dac Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix makefile in phpize mode
2014-07-11 15:06:56 +02:00
Anatol Belski ae313b6037 fix makefile in phpize mode
- extend LDFLAGS with dynamically generated ones
- prevend dynamically generated CFLAGS to be overridden by hardcoded ones
2014-07-11 15:05:01 +02:00
Anatol Belski 646f0f4e47 Merge branch 'PHP-5.6'
* PHP-5.6:
  fixe output_as_table() when no ext was enabled
2014-07-11 09:38:59 +02:00
Anatol Belski e0d6ed6b21 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fixe output_as_table() when no ext was enabled
2014-07-11 09:38:44 +02:00
Anatol Belski f3d565f6ac Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fixe output_as_table() when no ext was enabled
2014-07-11 09:37:19 +02:00
Anatol Belski 9f5cf7d41a fixe output_as_table() when no ext was enabled 2014-07-11 09:36:44 +02:00
Anatol Belski efea4cc3e0 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix end of stream exception when generating makefile
2014-07-10 22:35:41 +02:00
Anatol Belski 63abaa6d69 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix end of stream exception when generating makefile
2014-07-10 22:35:23 +02:00
Anatol Belski efcc789ef8 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix end of stream exception when generating makefile
2014-07-10 22:34:55 +02:00
Anatol Belski 02b661ecfc fix end of stream exception when generating makefile 2014-07-10 22:33:55 +02:00
Anatol Belski 2f1c11b3e2 Merge branch 'PHP-5.6'
* PHP-5.6:
  cleanup file headers.
  Do not kill children process in pre-fork mode when parent process quit.
  update to LSAPI 6.6
2014-07-10 22:17:46 +02:00
Anatol Belski fbc21af87b Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6
Conflicts:
	sapi/litespeed/lsapilib.h
2014-07-10 22:15:52 +02:00
Anatol Belski af994df812 Merge branch 'PHP-5.6'
* PHP-5.6:
  force ext_dep.js prepend to configure.js in phpize mode
  cleanup file headers.
  Do not kill children process in pre-fork mode when parent process quit.
  update to LSAPI 6.6
  Update LiteSpeed SAPI code to V6.4
  cleanup file headers.
  Do not kill children process in pre-fork mode when parent process quit.
  update to LSAPI 6.6
  Update LiteSpeed SAPI code to V6.4
  update year & copyright

Conflicts:
	sapi/litespeed/lsapilib.h
2014-07-10 22:05:15 +02:00
Anatol Belski 552cfcc578 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  force ext_dep.js prepend to configure.js in phpize mode
  cleanup file headers.
  Do not kill children process in pre-fork mode when parent process quit.
  update to LSAPI 6.6
  Update LiteSpeed SAPI code to V6.4
  cleanup file headers.
  Do not kill children process in pre-fork mode when parent process quit.
  update to LSAPI 6.6
  Update LiteSpeed SAPI code to V6.4

Conflicts:
	sapi/litespeed/lsapi_main.c
	sapi/litespeed/lsapilib.c
2014-07-10 22:03:45 +02:00
George Wang 7f41a34c23 cleanup file headers. 2014-07-10 15:53:47 -04:00
George Wang ad7eae7512 Do not kill children process in pre-fork mode when parent process quit. 2014-07-10 15:53:20 -04:00
George Wang f0b7db6c4e update to LSAPI 6.6
Conflicts:
	sapi/litespeed/lsapi_main.c
2014-07-10 15:52:45 -04:00
Anatol Belski cc67cf6322 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  force ext_dep.js prepend to configure.js in phpize mode
  cleanup file headers.
  Do not kill children process in pre-fork mode when parent process quit.
  update to LSAPI 6.6
  Update LiteSpeed SAPI code to V6.4
2014-07-10 21:51:32 +02:00
Anatol Belski 1f90dd3359 force ext_dep.js prepend to configure.js in phpize mode 2014-07-10 21:50:37 +02:00
George Wang 40d11cc822 cleanup file headers. 2014-07-10 15:34:09 -04:00
George Wang caceba5973 Do not kill children process in pre-fork mode when parent process quit. 2014-07-10 15:33:48 -04:00
George Wang ee0c8f8d6f update to LSAPI 6.6
Conflicts:
	sapi/litespeed/lsapi_main.c
2014-07-10 15:33:14 -04:00
George Wang 0285720570 Update LiteSpeed SAPI code to V6.4
Conflicts:
	sapi/litespeed/lsapi_main.c
	sapi/litespeed/lsapidef.h
	sapi/litespeed/lsapilib.c
	sapi/litespeed/lsapilib.h

Conflicts:
	sapi/litespeed/lsapi_main.c
	sapi/litespeed/lsapilib.c
	sapi/litespeed/lsapilib.h
2014-07-10 15:32:51 -04:00
George Wang e7f36ba693 cleanup file headers. 2014-07-10 15:14:30 -04:00
George Wang 01a1c3067c Do not kill children process in pre-fork mode when parent process quit. 2014-07-10 15:14:06 -04:00
George Wang cf78e8324e cleanup file headers. 2014-07-10 15:12:43 -04:00
George Wang 942d64c1c3 Do not kill children process in pre-fork mode when parent process quit. 2014-07-10 14:59:25 -04:00
George Wang 1f46bec9ce update to LSAPI 6.6
Conflicts:
	sapi/litespeed/lsapi_main.c
2014-07-10 14:46:43 -04:00
George Wang e3df0c5f60 Update LiteSpeed SAPI code to V6.4
Conflicts:
	sapi/litespeed/lsapi_main.c
	sapi/litespeed/lsapidef.h
	sapi/litespeed/lsapilib.c
	sapi/litespeed/lsapilib.h
2014-07-10 14:42:05 -04:00
George Wang dd29cfed0a update year & copyright
Conflicts:
	sapi/litespeed/lsapi_main.c
2014-07-10 14:18:08 -04:00
George Wang 232661bf88 Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6 2014-07-10 14:14:38 -04:00
George Wang 72e14bfb40 update year & copyright 2014-07-10 14:14:11 -04:00
Anatol Belski e00a4b92a3 Merge branch 'PHP-5.6'
* PHP-5.6:
  turn off PGO in phpize mode
  Fixed typo in Makefile.frag
  Fixed typo in Makefile.frag
2014-07-10 19:37:36 +02:00
Anatol Belski 71f4b1e4d9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  turn off PGO in phpize mode
  Fixed typo in Makefile.frag
  Fixed typo in Makefile.frag
2014-07-10 19:37:12 +02:00
Anatol Belski ec6b367722 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  turn off PGO in phpize mode
  Fixed typo in Makefile.frag
2014-07-10 19:36:04 +02:00
Anatol Belski e2b0d97950 turn off PGO in phpize mode 2014-07-10 19:35:26 +02:00
George Wang eb7bf5d30a Fixed typo in Makefile.frag 2014-07-10 12:22:56 -04:00
George Wang a34288fa1a Fixed typo in Makefile.frag 2014-07-10 12:21:23 -04:00
Anatol Belski e40ecb937e Merge branch 'PHP-5.6'
* PHP-5.6:
  explicitly PHP_ANALYZER=no when no known keyword was passed
2014-07-10 15:21:24 +02:00
Anatol Belski a8076b9312 explicitly PHP_ANALYZER=no when no known keyword was passed 2014-07-10 15:20:34 +02:00
Stanislav Malyshev 25fe17bdcd Merge branch 'PHP-5.6'
* PHP-5.6:
  5.4.31
  fix unstable test
  5.5.16 now
2014-07-08 21:42:38 -07:00
Stanislav Malyshev f0f6d24bc8 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  5.4.31
  fix unstable test
  5.5.16 now
2014-07-08 21:42:20 -07:00
Stanislav Malyshev 393bf0e4bb Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  5.4.31
  fix unstable test

Conflicts:
	configure.in
	main/php_version.h
2014-07-08 21:41:06 -07:00
Stanislav Malyshev b93ea59665 5.4.31 2014-07-08 21:26:39 -07:00
Stanislav Malyshev 3119b884db Merge branch 'PHP-5.6'
* PHP-5.6:
  update NEWS
2014-07-08 15:05:24 -07:00
Stanislav Malyshev 0ba74fccff update NEWS 2014-07-08 15:05:05 -07:00
Stanislav Malyshev cd1130751d fix unstable test 2014-07-08 15:04:09 -07:00
Julien Pauli 0211185548 5.5.16 now 2014-07-08 23:54:19 +02:00
Stanislav Malyshev b19c30c1fa Merge branch 'PHP-5.6'
* PHP-5.6:
  fix unstable test
2014-07-08 14:32:45 -07:00
Stanislav Malyshev 062f1482c3 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix unstable test
2014-07-08 14:32:27 -07:00
Stanislav Malyshev f559976be6 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix unstable test
2014-07-08 14:31:40 -07:00
Stanislav Malyshev 64e4261c9b fix unstable test 2014-07-08 14:13:46 -07:00
Stanislav Malyshev 1632fbbd14 Merge branch 'pull-request/712'
* pull-request/712:
  Fix bug #67587: Redirection loop on nginx with FPM
2014-07-08 12:55:53 -07:00
Stanislav Malyshev ef2f12ec84 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #67587: Redirection loop on nginx with FPM
  Fix bug #67587: Redirection loop on nginx with FPM
2014-07-08 12:55:35 -07:00
Stanislav Malyshev 35259e1d53 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #67587: Redirection loop on nginx with FPM
2014-07-08 12:55:02 -07:00
Christian Weiske e65e013e15 Fix bug #67587: Redirection loop on nginx with FPM
Redirection will work correctly as long as PATH_INFO is available,
e.g. via the following nginx configuration:

    set $path_info $fastcgi_path_info;
    fastcgi_param PATH_INFO $path_info;
2014-07-08 12:54:57 -07:00
Stanislav Malyshev 5312c39cfb Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #67587: Redirection loop on nginx with FPM
2014-07-08 12:54:20 -07:00
Christian Weiske 0bf50a8302 Fix bug #67587: Redirection loop on nginx with FPM
Redirection will work correctly as long as PATH_INFO is available,
e.g. via the following nginx configuration:

    set $path_info $fastcgi_path_info;
    fastcgi_param PATH_INFO $path_info;
2014-07-08 12:53:45 -07:00
Christian Weiske e76d3cba96 Fix bug #67587: Redirection loop on nginx with FPM
Redirection will work correctly as long as PATH_INFO is available,
e.g. via the following nginx configuration:

    set $path_info $fastcgi_path_info;
    fastcgi_param PATH_INFO $path_info;
2014-07-08 19:03:26 +02:00
Anatol Belski 36644cc71e Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  updated NEWS
2014-07-08 10:08:40 +02:00
Anatol Belski b9ead7c67d Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  updated NEWS
2014-07-08 10:08:24 +02:00
Anatol Belski 0d80e6cba0 updated NEWS 2014-07-08 10:08:10 +02:00
Anatol Belski 5cf0084a92 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated NEWS
2014-07-08 10:07:31 +02:00
Anatol Belski 857cd18cf4 updated NEWS 2014-07-08 10:07:18 +02:00
Anatol Belski d472434ea0 updated NEWS 2014-07-08 10:06:35 +02:00
Anatol Belski 5391c23511 Merge branch 'PHP-5.6'
* PHP-5.6:
  Backported the patch from bug #67407 into 5.5+
  Backported the patch from bug #67407 into 5.4
  NEWS
  NEWS
  Fix Bug #67530 	error_log=syslog ignored
2014-07-08 09:57:56 +02:00
Anatol Belski 8b3cc726be Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Backported the patch from bug #67407 into 5.5+
  Backported the patch from bug #67407 into 5.4
  NEWS
  NEWS
  Fix Bug #67530 	error_log=syslog ignored

Conflicts:
	sapi/fpm/fpm/fpm_stdio.c
2014-07-08 09:57:36 +02:00
Anatol Belski 51f79846bf Backported the patch from bug #67407 into 5.5+ 2014-07-08 09:54:36 +02:00
Anatol Belski e715038920 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Backported the patch from bug #67407 into 5.4
2014-07-08 09:54:12 +02:00
Anatol Belski 03214a2aef Backported the patch from bug #67407 into 5.4 2014-07-08 09:52:35 +02:00
Anatol Belski 4883a60bb3 Merge branch 'pull-request/691' 2014-07-08 09:48:59 +02:00
Remi Collet b26c97b1a2 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  5.6 have fpm_globals.force_stderr
  Fix Bug #67530 	error_log=syslog ignored
2014-07-08 08:34:15 +02:00
Remi Collet 208ae5498d NEWS 2014-07-08 08:33:48 +02:00
Remi Collet 71a27605f4 5.6 have fpm_globals.force_stderr 2014-07-08 08:33:48 +02:00
Remi Collet 60fd4d445c Fix Bug #67530 error_log=syslog ignored
As for Bug #64915
Systemd use --nodaemonize but need to error_log to file or syslog to be honoured
2014-07-08 08:33:47 +02:00
Remi Collet 7b6757d99a NEWS 2014-07-08 08:31:15 +02:00
Remi Collet 0c840ced7c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Fix Bug #67530 	error_log=syslog ignored
2014-07-08 08:30:44 +02:00
Remi Collet 494034901e NEWS 2014-07-08 08:30:15 +02:00
Remi Collet f8acf826c3 Fix Bug #67530 error_log=syslog ignored
As for Bug #64915
Systemd use --nodaemonize but need to error_log to file or syslog to be honoured
2014-07-08 08:29:24 +02:00
Sara Golemon 6e9bc95f67 Fix still broken session test. Only return true/false. 2014-07-07 14:30:28 -07:00
Adam Harvey 1a43eac259 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66830 (Empty header causes PHP built-in web server to hang).
2014-07-07 20:49:00 +00:00
Adam Harvey 70e9d3e2f9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #66830 (Empty header causes PHP built-in web server to hang).
2014-07-07 20:45:01 +00:00
Adam Harvey 1939b34c78 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #66830 (Empty header causes PHP built-in web server to hang).
2014-07-07 20:40:47 +00:00
Adam Harvey 604de67b7d Fixed bug #66830 (Empty header causes PHP built-in web server to hang).
We had an infinite loop in sapi_cli_server_send_headers(): while iterating over
the linked list of headers, when an empty header was hit, continue would go to
the next iteration of the loop without updating h to be the next value in the
linked list. Updating it to always increment regardless of whether the header
is actually valid or not fixes the issue.
2014-07-07 20:36:06 +00:00
Sara Golemon 7c2489751c Followup fix to custom session save handlers
2d9885c introduced some regressions.  This addresses those.

  * Don't throw return type notice or session write failure when in an exception
  * Fix tests to properly return true/false since null is no longer falsy/successy
  * Rerecord a few tests to accomodate difference in raised warnings
2014-07-07 12:59:54 -07:00
Stanislav Malyshev 888fb3323e Merge branch 'PHP-5.6'
* PHP-5.6:
  create locales and re-add test
2014-07-07 10:42:36 -07:00
Stanislav Malyshev 41448bff7c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  create locales and re-add test

Conflicts:
	.travis.yml
2014-07-07 10:42:13 -07:00
Stanislav Malyshev 5516963633 create locales and re-add test 2014-07-07 10:34:43 -07:00
Stanislav Malyshev fc56aa6829 Merge branch 'PHP-5.6'
* PHP-5.6:
  rm test for now
2014-07-07 09:34:03 -07:00
Stanislav Malyshev 31b395ac68 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  rm test for now
2014-07-07 09:33:05 -07:00
Stanislav Malyshev 0e1599afe0 rm test for now 2014-07-07 09:32:26 -07:00
Stanislav Malyshev f0499b86a8 Merge branch 'PHP-5.6'
* PHP-5.6:
  change locale - looks like not everybody has sl_SI
2014-07-07 01:38:04 -07:00
Stanislav Malyshev 432bb7abe5 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  change locale - looks like not everybody has sl_SI
2014-07-07 01:36:24 -07:00
Stanislav Malyshev c402956178 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  change locale - looks like not everybody has sl_SI
2014-07-07 01:36:03 -07:00
Stanislav Malyshev a7d1cad4c3 change locale - looks like not everybody has sl_SI 2014-07-07 01:35:25 -07:00
Stanislav Malyshev 70c0410d3d Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #66921 - Wrong argument type hint for function intltz_from_date_time_zone
  fix format
2014-07-07 00:50:15 -07:00
Stanislav Malyshev 04a227dd16 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #66921 - Wrong argument type hint for function intltz_from_date_time_zone
  fix format
2014-07-07 00:50:07 -07:00
Stanislav Malyshev 96c9cc315d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix format
2014-07-07 00:49:15 -07:00
Stanislav Malyshev 8ba240a70b Fix bug #66921 - Wrong argument type hint for function intltz_from_date_time_zone 2014-07-07 00:48:44 -07:00
Stanislav Malyshev 897b7b68cc fix format 2014-07-07 00:48:32 -07:00
Stanislav Malyshev ff52eac5f0 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #67052 (NumberFormatter::parse() resets LC_NUMERIC setting)
  Make sure the generator script also creates a newline at the end of file
  Add newline at end of file to prevent compilation warning
2014-07-07 00:38:50 -07:00
Stanislav Malyshev effb2b7a13 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #67052 (NumberFormatter::parse() resets LC_NUMERIC setting)
  Make sure the generator script also creates a newline at the end of file
  Add newline at end of file to prevent compilation warning
2014-07-07 00:38:38 -07:00
Stanislav Malyshev 8ddf9a2dc4 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #67052 (NumberFormatter::parse() resets LC_NUMERIC setting)
2014-07-07 00:37:59 -07:00
Stanislav Malyshev 6c8a570a96 Fix bug #67052 (NumberFormatter::parse() resets LC_NUMERIC setting) 2014-07-07 00:36:57 -07:00
Stanislav Malyshev b3d8f4b24d Merge branch 'PHP-5.6'
* PHP-5.6:
  Reference bug report instead of github issue in NEWS file
2014-07-06 22:16:27 -07:00
Stanislav Malyshev c291033469 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Make sure the generator script also creates a newline at the end of file
  Add newline at end of file to prevent compilation warning
2014-07-06 22:15:35 -07:00
Lior Kaplan 716d2a3937 Make sure the generator script also creates a newline at the end of file
Similar to commit d6713f39 in master
2014-07-06 22:15:09 -07:00
Lior Kaplan c5fec9e09d Add newline at end of file to prevent compilation warning
The newline was removed at commit 50d50c2f
2014-07-06 22:15:00 -07:00
Sara Golemon 2d9885c8cb Fix handling of session user module custom handlers.
According to the documentation, returning TRUE from
user based session handlers should indicate success,
while returning FALSE should indicate failure.

The existing logic relied on casting the return value
to an integer and returning that from the function.
However, the internal handlers use SUCCESS/FAILURE
where SUCCESS == 0, and FAILURE == -1, so the following
behavior map occurs:

  return false; => return 0; => return SUCCESS
  return true; => return 1; => return <undefined>

Since the session API checks against FAILURE,
both boolean responses wind up appearing like "not FAILURE".

This diff reasserts boolean responses to behave as
documented and introduces some special handling
for integer responses of 0 and -1 so that code can be
written for older and newer versions of PHP.
2014-07-06 09:40:35 -07:00
Bob Weinand 0378b4caac Reference bug report instead of github issue in NEWS file 2014-07-06 13:34:03 +02:00
Stanislav Malyshev 5b925824ed Merge branch 'PHP-5.6'
* PHP-5.6:
  add more exts for Travis
2014-07-05 22:34:57 -07:00
Stanislav Malyshev 7bb86f8a6b add more exts for Travis 2014-07-05 19:59:26 -07:00
Bob Weinand 2c525b0881 Merge branch 'PHP-5.6' 2014-07-06 01:21:24 +02:00
Bob Weinand 715aea43e4 Update NEWS 2014-07-06 01:20:46 +02:00
Bob Weinand 17658fa7b8 Merge sapi/phpdbg into PHP-5.6 2014-07-06 01:17:50 +02:00
Bob Weinand ba65286fa4 Merge pull request #104 from andytson/feature/rpm-build-fix
Fix phpdbg.1 man page installation when build != src directory
2014-07-06 01:16:03 +02:00
Andy Thompson 07d2272297 Fix phpdbg.1 man page installation when build != src directory 2014-07-05 13:05:05 +01:00
Michael Wallner f9fda21667 Merge branch 'PHP-5.6'
* PHP-5.6:
  BFN for bug #67551 (php://input temp file will be located in sys_temp_dir instead of upload_tmp_dir)
  reorder
  restore API compatibility
  finish
  refactor php_stream_temp_create{,_ex} and use it for the php://input stream
  refactor _php_stream_fopen_{temporary_,tmp}file()
  fix length overflow of HTTP_RAW_POST_DATA

Conflicts:
	main/php_content_types.c
2014-07-03 20:43:12 +02:00
Michael Wallner 88c1ce3203 BFN for bug #67551 (php://input temp file will be located in sys_temp_dir instead of upload_tmp_dir) 2014-07-03 20:40:41 +02:00
Michael Wallner 155b5d1725 reorder 2014-07-03 20:40:41 +02:00
Michael Wallner deee0011e1 restore API compatibility 2014-07-03 20:40:41 +02:00
Michael Wallner 438b6c5258 finish 2014-07-03 20:40:40 +02:00
Michael Wallner 40bcd909d8 refactor php_stream_temp_create{,_ex} and use it for the php://input stream 2014-07-03 20:40:40 +02:00
Michael Wallner 11e401ab59 refactor _php_stream_fopen_{temporary_,tmp}file() 2014-07-03 20:40:40 +02:00
Michael Wallner 04c6a5b377 fix length overflow of HTTP_RAW_POST_DATA 2014-07-03 20:40:40 +02:00
Xinchen Hui a99e7eeab9 Merge branch 'PHP-5.6' 2014-07-03 14:59:24 +08:00
Xinchen Hui 989cdabe25 Update NEWS 2014-07-03 14:59:14 +08:00
Xinchen Hui 4e16054b7a Merge branch 'PHP-5.5' into PHP-5.6 2014-07-03 14:58:53 +08:00
Xinchen Hui 2034ace052 Fixed bug #67215 (php-cgi work with opcache, may be segmentation fault happen) 2014-07-03 14:58:37 +08:00
Xinchen Hui 533b1df732 Add test for bug #67215
bjori> writing a testcase making sure you get a fatal error and does not
segfault after that... is difficult
2014-07-03 13:48:59 +08:00
Xinchen Hui 4ef8a44359 Merge branch 'PHP-5.6' 2014-07-03 10:52:03 +08:00
Xinchen Hui 1f6b877f7a Fixed section 2014-07-03 10:51:24 +08:00
Xinchen Hui 1ffd32b952 Merge branch 'PHP-5.5' into PHP-5.6 2014-07-03 10:51:10 +08:00
Xinchen Hui e17bfb472e Add CVE ID 2014-07-03 10:50:56 +08:00
Ferenc Kovacs a1c63413cd Merge branch 'PHP-5.6'
* PHP-5.6:
  also add Remi to the QA credits
  add Stas and Julient to the QA credits
2014-07-02 23:36:00 +02:00
Ferenc Kovacs 6ca71b451e also add Remi to the QA credits 2014-07-02 23:35:31 +02:00
Ferenc Kovacs 58598ead2c add Stas and Julient to the QA credits 2014-07-02 23:32:50 +02:00
Ferenc Kovacs f9b3494d99 Merge branch 'PHP-5.6'
* PHP-5.6:
  update the credits
2014-07-02 23:27:54 +02:00
Ferenc Kovacs 3be6f0dc79 update the credits 2014-07-02 23:26:41 +02:00
Nikita Popov 99b95f3eb2 Merge branch 'PHP-5.6' 2014-07-02 22:41:04 +02:00
Nikita Popov a91d1bb9a3 Merge branch 'PHP-5.5' into PHP-5.6 2014-07-02 22:40:45 +02:00
Nikita Popov 213e9a0a3c Merge branch 'PHP-5.4' into PHP-5.5 2014-07-02 22:40:33 +02:00
Nikita Popov 18989420b6 Add test for bug #67151 2014-07-02 22:39:54 +02:00
Ferenc Kovacs f574e69889 Merge branch 'PHP-5.6'
* PHP-5.6:
  adding a reproduce script for bug #49184
2014-07-02 22:39:19 +02:00
Ferenc Kovacs 1ef67b8486 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  adding a reproduce script for bug #49184
2014-07-02 22:38:53 +02:00
Ferenc Kovacs c66a4e84bb Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  adding a reproduce script for bug #49184
2014-07-02 22:38:27 +02:00
Ferenc Kovacs 37a13d2df7 adding a reproduce script for bug #49184 2014-07-02 22:37:58 +02:00
Nikita Popov 2d4d36d2a0 Merge branch 'PHP-5.6' 2014-07-02 22:35:19 +02:00
Nikita Popov 4827806b9e Merge branch 'PHP-5.5' into PHP-5.6 2014-07-02 22:35:00 +02:00
Nikita Popov 8c4156ed28 Merge branch 'PHP-5.4' into PHP-5.5 2014-07-02 22:34:32 +02:00
Nikita Popov 3cc6bd10ac Fix bug #67151: strtr with empty array crashes 2014-07-02 22:33:20 +02:00
Adam Harvey 46055f8e99 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix ext/pgsql builds against libpq 7.3.
2014-07-02 12:30:51 -07:00
Adam Harvey c580d9b69c Fix ext/pgsql builds against libpq 7.3.
Fixes bug #67555 (Cannot build against libpq 7.3).
2014-07-02 12:30:06 -07:00
Nikita Popov ac552cccc1 Merge branch 'PHP-5.6' 2014-07-02 17:37:25 +02:00
Nikita Popov 1ea4b17af2 Merge branch 'PHP-5.5' into PHP-5.6 2014-07-02 17:36:27 +02:00
Nikita Popov d9ebd0f3d6 Fix bug #67497: eval with parse error causes segfault in generator 2014-07-02 17:33:31 +02:00
Bob Weinand 6b0beb9df1 Merge branch 'PHP-5.6' 2014-07-02 17:26:44 +02:00
Bob Weinand 1163a7ce24 Mark test as XFAIL until fixed 2014-07-02 17:25:47 +02:00
Bob Weinand c01dcd325d Merge branch 'PHP-5.6' 2014-07-02 12:44:30 +02:00
Bob Weinand 33699a4dab Messed up syntax of tests 2014-07-02 12:43:27 +02:00
Bob Weinand 0870cc8a7c Merge branch 'PHP-5.6' 2014-07-02 12:35:06 +02:00
Bob Weinand 09d1a8aaab Add tests for constant expression arrays
Adding one failing (!) test for now about circular constant references embedded in a constant AST, must be fixed before PHP 5.6 release.
2014-07-02 12:33:46 +02:00
Xinchen Hui 4cec7d479a Merge branch 'PHP-5.6' 2014-07-02 17:58:49 +08:00
Xinchen Hui 05cc46a96b Update NEWs 2014-07-02 17:58:37 +08:00
Xinchen Hui f48f311533 Merge branch 'PHP-5.5' into PHP-5.6 2014-07-02 17:58:11 +08:00
Xinchen Hui 22882a9d89 Fixed bug #67539 (ArrayIterator use-after-free due to object change during sorting) 2014-07-02 17:57:42 +08:00
Xinchen Hui df78c48354 Fixed Bug #67538 (SPL Iterators use-after-free) 2014-07-02 17:45:09 +08:00
Anatol Belski 4a0f06955d Merge branch 'PHP-5.6' 2014-07-02 11:36:15 +02:00
Anatol Belski 9e2d08923f Merge branch 'PHP-5.5' into PHP-5.6 2014-07-02 11:36:00 +02:00
Anatol Belski 131e60ce56 Merge branch 'PHP-5.4' into PHP-5.5 2014-07-02 11:35:42 +02:00
Anatol Belski 5efda71e54 bundle deplister.exe with releases 2014-07-02 11:34:37 +02:00
Anatol Belski df93242957 Merge branch 'PHP-5.6'
* PHP-5.6:
  backported the VC12 fix for ARG_MAX
2014-07-02 11:12:49 +02:00
Anatol Belski b69f369d3d Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  backported the VC12 fix for ARG_MAX
2014-07-02 11:12:32 +02:00
Anatol Belski 49e175be42 backported the VC12 fix for ARG_MAX 2014-07-02 11:11:39 +02:00
Anatol Belski e98d429cc3 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master: (25 commits)
  Better fix for bug #67072 with more BC provisions
  Fix bug #67498 - phpinfo() Type Confusion Information Leak Vulnerability
  Fix bug #67492: unserialize() SPL ArrayObject / SPLObjectStorage Type Confusion
  Fix bug #67397 (Buffer overflow in locale_get_display_name->uloc_getDisplayName (libicu 4.8.1))
  Fix bug #67349: Locale::parseLocale Double Free
  Better fix for phpdbg + libedit - fix include - disable coloured prompt only with libedit
  Fix https://github.com/krakjoe/phpdbg/issues/91
  Update copyright year to 2014
  Add NEWS. This doesn't need UPGRADING (or an RFC), IMO.
  Fix broken test.
  Add a mime type map generation script and update the header.
  Move the mime type map out of php_cli_server.c for easier generation.
  Replace the CLI server's linear search for extensions with a hash table.
  fix test
  Fixed bug #67399 (putenv with empty variable may lead to crash)
  Remove superfluous echos.
  Remove usage of pointless COOKIE_SET_COOKIE constant.
  Test
  Added support for parsing ssl certificates using GeneralizedTime format.
  Fix align indentation
  ...

Conflicts:
	ext/standard/head.c
2014-07-02 10:30:36 +02:00
Anatol Belski 84876850ff Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport: (178 commits)
  fix integer overflow in {stream,file}_{get,put}_contents()
  add some missing NEWS entries
  NEWS block for 5.6.0RC3
  Fix ext/pgsql builds with libpq < 7.3.
  updated libs_version.txt
  updated libs_version.txt
  updated libmagic.patch in 5.6+
  updated libmagic.patch
  Fixed possible crash because of race conditions on modifying constants in shared memory
  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
  ...
2014-07-02 10:27:59 +02:00
Anatol Belski 96783bdfb7 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  fix integer overflow in {stream,file}_{get,put}_contents()
  add some missing NEWS entries
  NEWS block for 5.6.0RC3
  Fix ext/pgsql builds with libpq < 7.3.
  updated libs_version.txt
  updated libs_version.txt
  updated libmagic.patch in 5.6+
  updated libmagic.patch

Conflicts:
	ext/standard/file.c
	ext/standard/streamsfuncs.c
2014-07-02 10:22:09 +02:00
Michael Wallner 088eedfaa1 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix integer overflow in {stream,file}_{get,put}_contents()
2014-07-02 09:56:41 +02:00
Michael Wallner 122ee0a1cf Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix integer overflow in {stream,file}_{get,put}_contents()
2014-07-02 09:56:05 +02:00
Michael Wallner 1e06c73192 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix integer overflow in {stream,file}_{get,put}_contents()
2014-07-02 09:55:15 +02:00
Michael Wallner 34e686c556 fix integer overflow in {stream,file}_{get,put}_contents() 2014-07-02 09:53:03 +02:00
Ferenc Kovacs ae312d1bca Merge branch 'PHP-5.6'
* PHP-5.6:
  add some missing NEWS entries
2014-07-02 02:19:12 +02:00
Ferenc Kovacs d5d95f8935 add some missing NEWS entries 2014-07-02 02:18:48 +02:00
Ferenc Kovacs 72a182aaa8 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS block for 5.6.0RC3
2014-07-02 01:39:54 +02:00
Ferenc Kovacs 996fc57515 NEWS block for 5.6.0RC3 2014-07-02 01:39:26 +02:00
Adam Harvey 5a99565d0e Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix ext/pgsql builds with libpq < 7.3.
2014-07-01 13:26:28 -07:00
Adam Harvey d1adf55c15 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix ext/pgsql builds with libpq < 7.3.
2014-07-01 13:25:55 -07:00
Adam Harvey 2e02f18b15 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix ext/pgsql builds with libpq < 7.3.
2014-07-01 13:23:11 -07:00
Adam Harvey 899fe3d8af Fix ext/pgsql builds with libpq < 7.3.
Fixes bug #67550 (Error in code "form" instead of "from", pgsql.c, line 756).
2014-07-01 13:19:22 -07:00
Anatol Belski 444486c362 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libs_version.txt
  updated libs_version.txt
2014-07-01 10:35:16 +02:00
Anatol Belski 765b0ee715 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated libs_version.txt
  updated libs_version.txt
2014-07-01 10:34:55 +02:00
Anatol Belski 5d687afa89 updated libs_version.txt 2014-07-01 10:34:25 +02:00
Anatol Belski f326713e42 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated libs_version.txt
2014-07-01 10:34:00 +02:00
Anatol Belski 6081dd781a updated libs_version.txt 2014-07-01 10:33:09 +02:00
Anatol Belski 1f66da2e75 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libmagic.patch in 5.6+
  updated libmagic.patch
2014-07-01 10:29:14 +02:00
Anatol Belski 3fd792b3b9 updated libmagic.patch in 5.6+ 2014-07-01 10:28:43 +02:00
Anatol Belski 48746387b3 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated libmagic.patch
2014-07-01 10:28:20 +02:00
Anatol Belski 4965d1c2ce Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated libmagic.patch
2014-07-01 10:27:38 +02:00
Anatol Belski af5f997a5d updated libmagic.patch 2014-07-01 10:25:20 +02:00
Anatol Belski 1a50c27f99 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6: (170 commits)
  Fixed possible crash because of race conditions on modifying constants in shared memory
  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
  ...

Conflicts:
	Zend/zend_compile.c
	ext/standard/basic_functions.c
	ext/standard/http_fopen_wrapper.c
	ext/standard/var.c
	ext/tokenizer/tokenizer_data.c
	sapi/phpdbg/phpdbg_list.c
2014-07-01 09:10:36 +02:00
Dmitry Stogov 8c9b3e664c Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed possible crash because of race conditions on modifying constants in shared memory
2014-07-01 00:17:55 +04:00
Dmitry Stogov 2330be5641 Fixed possible crash because of race conditions on modifying constants in shared memory 2014-07-01 00:13:34 +04:00
Ferenc Kovacs 2d26a7cf62 Merge branch 'PHP-5.6'
* PHP-5.6:
  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"
2014-06-30 18:39:31 +02:00
Ferenc Kovacs 023d53fea5 remove the NEWS entry for the reverted fpm fix 2014-06-30 18:39:06 +02:00
Ferenc Kovacs d810c2139f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  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"
2014-06-30 18:38:54 +02:00
Ferenc Kovacs e5fdb5b3f0 remove the NEWS entry for the reverted fpm fix 2014-06-30 18:38:31 +02:00
Ferenc Kovacs af9ce6e650 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  remove the NEWS entry for the reverted fpm fix
  Revert "Fix Bug #67530 	error_log=syslog ignored"
2014-06-30 18:38:15 +02:00
Ferenc Kovacs 48df4464ea remove the NEWS entry for the reverted fpm fix 2014-06-30 18:37:56 +02:00
Ferenc Kovacs 9c8b42960d Revert "Fix Bug #67530 error_log=syslog ignored"
This reverts commit a0ecb3794f.
2014-06-30 18:37:23 +02:00
Ferenc Kovacs 62b45983f7 Merge branch 'PHP-5.6'
* PHP-5.6:
  --enable-fpm for the travis build
2014-06-30 12:31:25 +02:00
Ferenc Kovacs 3ec93ee19f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  --enable-fpm for the travis build
2014-06-30 12:30:49 +02:00
Ferenc Kovacs 803cfe32e6 --enable-fpm for the travis build 2014-06-30 12:30:24 +02:00
Ferenc Kovacs d9dbca8546 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix the last fpm NEWS entry, the other bug is related, but not the same what we fixed here
2014-06-30 02:32:46 +02:00
Ferenc Kovacs 6d8d5e9310 fix the last fpm NEWS entry, the other bug is related, but not the same what we fixed here 2014-06-30 02:32:06 +02:00
Ferenc Kovacs 6858be2e74 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  Fix bug #67091: make install fails to install libphp5.so on FreeBSD 10.0
2014-06-30 01:35:19 +02:00
Ferenc Kovacs e7c88637c2 NEWS 2014-06-30 01:35:02 +02:00
Ferenc Kovacs d1fb869e78 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  Fix bug #67091: make install fails to install libphp5.so on FreeBSD 10.0
2014-06-30 01:34:47 +02:00
Ferenc Kovacs 12885ef489 NEWS 2014-06-30 01:34:29 +02:00
Ferenc Kovacs a52616b759 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #67091: make install fails to install libphp5.so on FreeBSD 10.0
2014-06-30 01:34:05 +02:00
Ferenc Kovacs a7d1656b96 Fix bug #67091: make install fails to install libphp5.so on FreeBSD 10.0
Simplest fix is to remove the specific checks for freebsd1* as it also matches freebsd10,
and nobody should be using >=PHP 5.4 with freebsd 1.x(if it is even possible to make it
to compile there).
2014-06-30 01:31:10 +02:00
Ferenc Kovacs c73e1f80f5 Merge branch 'PHP-5.6'
* PHP-5.6:
  adding NEWS entry for the fix for bug #65641
  Fix SetHandler proxy:fcgi:// incompatibilities
2014-06-30 01:03:29 +02:00
Ferenc Kovacs 19e5852ad8 adding NEWS entry for the fix for bug #65641 2014-06-30 01:02:22 +02:00
Ferenc Kovacs d96de86b5b Merge branch 'pull-request/694' into PHP-5.6
* pull-request/694:
  Fix SetHandler proxy:fcgi:// incompatibilities
2014-06-30 00:51:59 +02:00
Felipe Pena 82f0b934a9 - CS 2014-06-29 09:57:57 -03:00
Bob Weinand ee6bab61eb Merge branch 'PHP-5.6' 2014-06-29 13:01:11 +02:00
Bob Weinand b1e32a4f7a Updated NEWS file for recent phpdbg fixes 2014-06-29 12:54:33 +02:00
Bob Weinand 1dd3bab1df Merge sapi/phpdbg into PHP-5.6 2014-06-29 12:49:10 +02:00
Bob Weinand 58c69746e5 Fixed issue krakjoe/phpdbg#94 - List behavior is inconsistent 2014-06-29 12:43:51 +02:00
Bob Weinand 4fde0c258e Fix issue krakjoe/phpdbg#97 - list now appends a newline if there is none
The prompt should always ensure it is on a newline
2014-06-29 12:18:39 +02:00
Xinchen Hui fa3243a40a Merge remote branch 'origin/PHP-5.6' 2014-06-29 18:06:44 +08:00
Xinchen Hui 959a006d61 Fixed test 2014-06-29 18:00:31 +08:00
Bob Weinand d298425323 Inform about back command existence in help - Fixes krakjoe/phpdbg#100
No way to list the current stack/frames
2014-06-29 11:55:42 +02:00
Bob Weinand 16ae792988 Fix issue krakjoe/phpdbg#98
break if does not seem to work
2014-06-29 11:42:40 +02:00
Bob Weinand ef77d84061 Merge pull request #102 from dshafik/fix-96
Fix typo in `finish` help
2014-06-29 11:28:44 +02:00
Bob Weinand debc20df80 Merge pull request #101 from dshafik/fix-95
Replace incorrect `E` command with `ev` in watch help
2014-06-29 11:28:33 +02:00
Bob Weinand 986a89ae1b Fix issue krakjoe/phpdbg#99
register function has the same behavior as run
2014-06-29 11:26:27 +02:00
Bob Weinand 219beac36b Fix readline/libedit (Thanks to @remicollet) 2014-06-29 11:26:03 +02:00
Davey Shafik 2e66754408 Replace incorrect E command with ev in watch help
Fixes #95
2014-06-29 04:44:02 -04:00
Davey Shafik 4ac8966030 Fix typo in finish help
Fixes #96
2014-06-29 04:32:01 -04:00
Ferenc Kovacs 6dc56dd8e8 Merge branch 'PHP-5.6'
* PHP-5.6:
  removing the format added by mistake, props to Solar Designer for spotting this.
2014-06-27 16:30:30 +02:00
Ferenc Kovacs 99967ac075 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  removing the format added by mistake, props to Solar Designer for spotting this.
2014-06-27 16:29:35 +02:00
Ferenc Kovacs 293a48cb9d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  removing the format added by mistake, props to Solar Designer for spotting this.
2014-06-27 16:28:24 +02:00
Ferenc Kovacs cc22f021fe removing the format added by mistake, props to Solar Designer for spotting this. 2014-06-27 16:27:36 +02:00
Remi Collet 6fa814cfc3 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  NEWS
  Fix Bug #67531 	syslog cannot be set in pool configuration
  Fix Bug #67530 	error_log=syslog ignored
2014-06-27 09:51:52 +02:00
Remi Collet f201d061ba NEWS 2014-06-27 09:51:34 +02:00
Remi Collet 37aa57cd1b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  NEWS
  Fix Bug #67531 	syslog cannot be set in pool configuration
  Fix Bug #67530 	error_log=syslog ignored
2014-06-27 09:51:15 +02:00
Remi Collet 6c72ea87fd NEWS 2014-06-27 09:50:43 +02:00
Remi Collet 13c5bb9600 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Fix Bug #67531 	syslog cannot be set in pool configuration
  Fix Bug #67530 	error_log=syslog ignored
2014-06-27 09:50:27 +02:00
Remi Collet 334758794d NEWS 2014-06-27 09:50:01 +02:00
Remi Collet bf328b1681 Fix Bug #67531 syslog cannot be set in pool configuration
error_log is listed in FPM_PHP_INI_TO_EXPAND,
but should not be expand when value = syslog
2014-06-27 09:47:28 +02:00
Remi Collet a0ecb3794f Fix Bug #67530 error_log=syslog ignored
As for Bug #64915
Systemd use --nodaemonize but need to error_log to file or syslog to be honoured
2014-06-27 09:45:53 +02:00
Stanislav Malyshev da7c6b6713 Merge branch 'PHP-5.6'
* PHP-5.6:
  update the date
  better explanation
  more extensive note on unserialize() change
  more extensive note on unserialize() change
2014-06-26 21:18:22 -07:00
Stanislav Malyshev 1255aa9130 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update the date
  better explanation
2014-06-26 21:18:06 -07:00
Stanislav Malyshev b1433d86b2 Merge branch 'PHp-5.4' into PHP-5.5
* PHp-5.4:
  update the date
  better explanation
2014-06-26 21:16:15 -07:00
Stanislav Malyshev 2db96fea2d update the date 2014-06-26 21:15:47 -07:00
Stanislav Malyshev b23460063f better explanation 2014-06-26 15:25:19 -07:00
Stanislav Malyshev 1d81a1c354 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  more extensive note on unserialize() change
  more extensive note on unserialize() change
2014-06-26 10:40:36 -07:00
Stanislav Malyshev b5003c3a86 more extensive note on unserialize() change 2014-06-26 10:39:38 -07:00
Stanislav Malyshev d4267ce03a Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  more extensive note on unserialize() change
2014-06-26 10:36:38 -07:00
Stanislav Malyshev ad9ed232e7 more extensive note on unserialize() change 2014-06-26 10:35:47 -07:00
Bob Weinand 0b06c8f82b Merge branch 'PHP-5.6' 2014-06-25 13:57:19 +02:00
Bob Weinand 09b2510df6 Merge sapi/phpdbg into PHP-5.6 2014-06-25 13:56:45 +02:00
Bob Weinand 858b45d4ad Merge branch 'master' of https://github.com/oerdnj/phpdbg into master
Rewritten author line and included instructions to make install the man page
2014-06-25 13:31:24 +02:00
Stanislav Malyshev b304a56685 Merge branch 'PHP-5.6'
* PHP-5.6:
  remove bug67072_2 test for 5.6+ since we'd have cleaner solution
  Fix test - because of big #67397 we don't allow overlong locales anymore
2014-06-24 11:24:40 -07:00
Stanislav Malyshev 78c3ca105b remove bug67072_2 test for 5.6+ since we'd have cleaner solution 2014-06-24 11:24:07 -07:00
Stanislav Malyshev b4c046d156 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix test - because of big #67397 we don't allow overlong locales anymore
2014-06-24 11:23:48 -07:00
Stanislav Malyshev 2ee09835c1 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix test - because of big #67397 we don't allow overlong locales anymore
2014-06-24 11:23:02 -07:00
Stanislav Malyshev 9d1d25e625 Fix test - because of big #67397 we don't allow overlong locales anymore 2014-06-24 11:21:43 -07:00
Stanislav Malyshev d4454ac31b Merge branch 'PHp-5.6'
* PHp-5.6:
  Better fix for bug #67072 with more BC provisions
  Fix bug #67498 - phpinfo() Type Confusion Information Leak Vulnerability
  Fix bug #67492: unserialize() SPL ArrayObject / SPLObjectStorage Type Confusion
  Fix bug #67397 (Buffer overflow in locale_get_display_name->uloc_getDisplayName (libicu 4.8.1))
  Fix bug #67349: Locale::parseLocale Double Free
  update NEWS
  5.4.30
  Better fix for bug #67072 with more BC provisions
  Fix bug #67498 - phpinfo() Type Confusion Information Leak Vulnerability
  update CVE
  Fix bug #67492: unserialize() SPL ArrayObject / SPLObjectStorage Type Confusion
  Fix bug #67397 (Buffer overflow in locale_get_display_name->uloc_getDisplayName (libicu 4.8.1))
  Fix bug #67349: Locale::parseLocale Double Free
  add CVEs
  Fix potential segfault in dns_get_record()
  Fix bug #66127 (Segmentation fault with ArrayObject unset)
  5.4.30 rc1

Conflicts:
	ext/intl/locale/locale_methods.c
2014-06-24 10:33:40 -07:00
Stanislav Malyshev 66cdd8fd76 Better fix for bug #67072 with more BC provisions 2014-06-24 10:32:33 -07:00
Stanislav Malyshev 3804c0d00f Fix bug #67498 - phpinfo() Type Confusion Information Leak Vulnerability 2014-06-24 10:32:12 -07:00
Stanislav Malyshev a374dfab56 Fix bug #67492: unserialize() SPL ArrayObject / SPLObjectStorage Type Confusion 2014-06-24 10:32:11 -07:00
Stanislav Malyshev 2a29add9e4 Fix bug #67397 (Buffer overflow in locale_get_display_name->uloc_getDisplayName (libicu 4.8.1)) 2014-06-24 10:32:11 -07:00
Stanislav Malyshev 5ecee6ebce Fix bug #67349: Locale::parseLocale Double Free 2014-06-24 10:31:55 -07:00
Stanislav Malyshev 03b3013ca9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update NEWS
  5.4.30
  Better fix for bug #67072 with more BC provisions
  Fix bug #67498 - phpinfo() Type Confusion Information Leak Vulnerability
  update CVE
  Fix bug #67492: unserialize() SPL ArrayObject / SPLObjectStorage Type Confusion
  Fix bug #67397 (Buffer overflow in locale_get_display_name->uloc_getDisplayName (libicu 4.8.1))
  Fix bug #67349: Locale::parseLocale Double Free
  add CVEs
  Fix potential segfault in dns_get_record()
  Fix bug #66127 (Segmentation fault with ArrayObject unset)
  5.4.30 rc1
2014-06-24 10:30:56 -07:00
Stanislav Malyshev cfe06eb2b1 Better fix for bug #67072 with more BC provisions 2014-06-24 10:30:03 -07:00
Stanislav Malyshev 84f9fe0fdc Fix bug #67498 - phpinfo() Type Confusion Information Leak Vulnerability 2014-06-24 10:29:26 -07:00
Stanislav Malyshev b03993dde9 Fix bug #67492: unserialize() SPL ArrayObject / SPLObjectStorage Type Confusion 2014-06-24 10:29:26 -07:00
Stanislav Malyshev f48b8f3339 Fix bug #67397 (Buffer overflow in locale_get_display_name->uloc_getDisplayName (libicu 4.8.1)) 2014-06-24 10:29:25 -07:00
Stanislav Malyshev 844a046945 Fix bug #67349: Locale::parseLocale Double Free 2014-06-24 10:29:09 -07:00
Stanislav Malyshev e2ed4874b5 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  5.4.30
  Better fix for bug #67072 with more BC provisions
  Fix bug #67498 - phpinfo() Type Confusion Information Leak Vulnerability
  update CVE
  Fix bug #67492: unserialize() SPL ArrayObject / SPLObjectStorage Type Confusion
  Fix bug #67397 (Buffer overflow in locale_get_display_name->uloc_getDisplayName (libicu 4.8.1))
  Fix bug #67349: Locale::parseLocale Double Free
  add CVEs
  Fix potential segfault in dns_get_record()
  Fix bug #66127 (Segmentation fault with ArrayObject unset)
  5.4.30 rc1

Conflicts:
	ext/intl/locale/locale_methods.c
2014-06-24 10:25:09 -07:00
Stanislav Malyshev 3488cf6fd8 Merge branch 'PHP-5.4.30' into PHP-5.4
* PHP-5.4.30:
  5.4.30
  Better fix for bug #67072 with more BC provisions
  Fix bug #67498 - phpinfo() Type Confusion Information Leak Vulnerability
  update CVE
  Fix bug #67492: unserialize() SPL ArrayObject / SPLObjectStorage Type Confusion
  Fix bug #67397 (Buffer overflow in locale_get_display_name->uloc_getDisplayName (libicu 4.8.1))
  Fix bug #67349: Locale::parseLocale Double Free
  add CVEs
  Fix potential segfault in dns_get_record()
  Fix bug #66127 (Segmentation fault with ArrayObject unset)
  5.4.30 rc1

Conflicts:
	configure.in
	main/php_version.h
2014-06-24 10:23:36 -07:00
Stanislav Malyshev 7ffcb48184 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  update NEWS
2014-06-24 10:20:51 -07:00
Stanislav Malyshev 08e7252abf update NEWS 2014-06-24 10:20:33 -07:00
Stanislav Malyshev 79457d1964 5.4.30 2014-06-24 10:17:49 -07:00
Xinchen Hui 18bde665f5 Merge branch 'PHP-5.6' 2014-06-24 13:53:43 +08:00
Xinchen Hui 9d49492fd6 Fixed bug #67368 (Memory leak with immediately dereferenced array in class constant) 2014-06-24 13:53:05 +08:00
Stanislav Malyshev 6d97b4b2b3 Better fix for bug #67072 with more BC provisions 2014-06-23 22:16:25 -07:00
Stanislav Malyshev 52cdbc5c10 Merge branch 'PHP-5.6'
* PHP-5.6:
  Better fix for bug #67072 with more BC provisions
  Better fix for bug #67072 with more BC provisions
2014-06-23 22:15:21 -07:00
Stanislav Malyshev 6b8cef7847 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Better fix for bug #67072 with more BC provisions
  Better fix for bug #67072 with more BC provisions

Conflicts:
	ext/standard/var_unserializer.c
	ext/standard/var_unserializer.re
2014-06-23 22:15:01 -07:00
Stanislav Malyshev 232ab8d795 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Better fix for bug #67072 with more BC provisions
2014-06-23 22:13:32 -07:00
Ondřej Surý 62b6cdbbd7 Add initial manual page for phpdbg.1 2014-06-23 11:35:42 +02:00
Remi Collet 70e29fc24c Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  Better fix for phpdbg + libedit - fix include - disable coloured prompt only with libedit
  Fix https://github.com/krakjoe/phpdbg/issues/91
2014-06-23 10:39:22 +02:00
Remi Collet b3ef019b62 NEWS 2014-06-23 10:39:06 +02:00
Remi Collet 0da5d94a6c Better fix for phpdbg + libedit
- fix include
- disable coloured prompt only with libedit
2014-06-23 10:21:19 +02:00
Remi Collet 0febafcfbe Fix https://github.com/krakjoe/phpdbg/issues/91
Enable edit feature when build with libedit.

Notice: coloured prompt only enable with READLINE
2014-06-23 10:21:19 +02:00
Remi Collet a52b927bf3 Merge branch 'PHP-5.6'
* PHP-5.6:
  Better fix for phpdbg + libedit - fix include - disable coloured prompt only with libedit
  Fix https://github.com/krakjoe/phpdbg/issues/91
2014-06-23 10:18:55 +02:00
Remi Collet 98d41dfc9d Better fix for phpdbg + libedit
- fix include
- disable coloured prompt only with libedit
2014-06-23 10:17:43 +02:00
Ferenc Kovacs f5defa1cf2 Merge branch 'PHP-5.6'
* PHP-5.6:
  testcase for 67468 (only for debug build, as I could not create a stable segfault without loading other exts like pgsql)
  mention 67468 fix in NEWS
  Fix Bug #67468  Segfault in highlight_file()/highlight_string() when pgsql.so module is loaded
2014-06-23 10:14:08 +02:00
Ferenc Kovacs 53158f2c32 testcase for 67468 (only for debug build, as I could not create a stable segfault without loading other exts like pgsql) 2014-06-23 10:10:17 +02:00
Ferenc Kovacs 3058b87783 mention 67468 fix in NEWS 2014-06-23 10:08:32 +02:00
Remi Collet 86bafec836 Fix https://github.com/krakjoe/phpdbg/issues/91
Enable edit feature when build with libedit.

Notice: coloured prompt only enable with READLINE
2014-06-23 10:04:40 +02:00
Andreas Ferber c5e6c2a5f5 Fix Bug #67468 Segfault in highlight_file()/highlight_string() when pgsql.so module is loaded
str_efree() must be used in zend_highlight() and zend_indent() to free
string data assigned to a zval to account for interned strings.
2014-06-23 09:51:44 +02:00
Stanislav Malyshev fb0128af2a Fix bug #67498 - phpinfo() Type Confusion Information Leak Vulnerability 2014-06-23 00:22:59 -07:00
Stanislav Malyshev f3dd77714d update CVE 2014-06-23 00:07:08 -07:00
Stanislav Malyshev 342240fd7f Better fix for bug #67072 with more BC provisions 2014-06-21 21:30:34 -07:00
Stanislav Malyshev c42d5cf5de Better fix for bug #67072 with more BC provisions 2014-06-21 21:29:11 -07:00
Stanislav Malyshev 88223c5245 Fix bug #67492: unserialize() SPL ArrayObject / SPLObjectStorage Type Confusion 2014-06-21 19:46:16 -07:00
Stanislav Malyshev 6027c56fd7 Fix bug #67397 (Buffer overflow in locale_get_display_name->uloc_getDisplayName (libicu 4.8.1)) 2014-06-21 18:44:14 -07:00
Stanislav Malyshev aef6432fbe Fix bug #67349: Locale::parseLocale Double Free 2014-06-21 18:38:41 -07:00
Stanislav Malyshev 300e0418a4 add CVEs 2014-06-21 18:37:08 -07:00
Dmitry Stogov 687fa7d63d Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed MarinaDB support
2014-06-20 14:01:22 +04:00
Dmitry Stogov f08a5bfadc Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed MarinaDB support
2014-06-20 13:58:26 +04:00
Dmitry Stogov f0639611cf Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed MarinaDB support
2014-06-20 13:57:38 +04:00
Dmitry Stogov 680ddabac1 Fixed MarinaDB support 2014-06-20 13:56:32 +04:00
Remi Collet ae9db5d0a2 Merge branch 'PHP-5.6'
* PHP-5.6:
  skip this test which fails without network
2014-06-20 06:45:36 +02:00
Remi Collet e9c9169e05 skip this test which fails without network 2014-06-20 06:45:16 +02:00
Ferenc Kovacs 7c20edaade Merge branch 'PHP-5.6'
* PHP-5.6:
  add missing entry to NEWS
2014-06-19 02:29:42 +02:00
Ferenc Kovacs 2f43bc73b6 add missing entry to NEWS 2014-06-19 02:29:27 +02:00
Ferenc Kovacs deb650f182 Merge branch 'PHP-5.6'
* PHP-5.6:
  add missing entry to NEWS
2014-06-19 02:18:52 +02:00
Ferenc Kovacs 00677cd771 add missing entry to NEWS 2014-06-19 02:18:26 +02:00
Ferenc Kovacs 8bca4f0c32 Merge branch 'PHP-5.6'
* PHP-5.6:
  add NEWS block for 5.6.0RC2
2014-06-19 01:35:19 +02:00
Ferenc Kovacs dd9f81dd47 add NEWS block for 5.6.0RC2 2014-06-19 01:34:25 +02:00
Andrey Hristov 2eb42c953d Merge branch 'PHP-5.6'
Conflicts:
	NEWS
2014-06-18 21:54:26 +03:00
Andrey Hristov a886a0cf93 Add support for gb18030/MySQL 5.7 2014-06-18 21:53:34 +03:00
Andrey Hristov 6dd0e8e0fc Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6 2014-06-18 18:32:51 +03:00
Andrey Hristov af94a01ebe Merge branch 'master' of git.php.net:php-src 2014-06-18 18:31:07 +03:00
Andrey Hristov 29cef140ed Merge branch 'PHP-5.6' 2014-06-18 18:30:49 +03:00
Andrey Hristov f201bf2305 Fix another problem with MySQL 5.7 2014-06-18 18:30:37 +03:00
Remi Collet e3b74cb168 Merge branch 'PHP-5.6'
* PHP-5.6:
  new test, missing in ea466a3
2014-06-18 16:00:07 +02:00
Remi Collet bf7fed7e41 new test, missing in ea466a3 2014-06-18 15:59:45 +02:00
Andrey Hristov ea1632d697 Merge branch 'PHP-5.6' 2014-06-18 16:45:12 +03:00
Andrey Hristov 23f77050eb Merge branch 'PHP-5.5' into PHP-5.6 2014-06-18 16:42:42 +03:00
Andrey Hristov 21c9a9388f Suppress test failure with MySQL 5.7 2014-06-18 16:20:14 +03:00
Lior Kaplan eba7c77685 Update copyright year to 2014 2014-06-18 00:22:16 +03:00
Lior Kaplan 9d047bb138 Merge branch 'PHP-5.6'
* PHP-5.6:
  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
2014-06-18 00:21:20 +03:00
Lior Kaplan b0b47a2064 Update copyright year to 2014 2014-06-18 00:18:47 +03:00
Lior Kaplan 9f727692b6 Update copyright year to 2014
Align with online version at http://www.php.net/license/3_01.txt
2014-06-18 00:16:23 +03:00
Lior Kaplan 1222f51ebd Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Update copyright year to 2014
  Update copyright year to 2014
  Update copyright year to 2014
  Update copyright year to 2014
2014-06-18 00:14:18 +03:00
Lior Kaplan 728c554f93 Update copyright year to 2014 2014-06-18 00:12:33 +03:00
Lior Kaplan a3bd2d268c Update copyright year to 2014
Align with online version at http://www.php.net/license/3_01.txt
2014-06-18 00:11:55 +03:00
Lior Kaplan d2bdedbcfc Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Update copyright year to 2014
  Update copyright year to 2014
2014-06-18 00:11:35 +03:00
Lior Kaplan 4106d48d1c Update copyright year to 2014 2014-06-17 23:57:20 +03:00
Lior Kaplan 945938d33c Update copyright year to 2014 2014-06-17 23:56:46 +03:00
Remi Collet a012c2befa Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  Fix Request #67453 Allow to unserialize empty data.
2014-06-17 09:41:30 +02:00
Remi Collet ba34f0c2e8 NEWS 2014-06-17 09:41:10 +02: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
Lior Kaplan 6e0a9b4588 Merge branch 'PHP-5.6'
* PHP-5.6:
  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
2014-06-16 23:36:39 +03:00
Lior Kaplan b538816b0b Update copyright year to 2014 2014-06-16 23:34:50 +03:00
Lior Kaplan 11b18347d8 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Update copyright year for re2c generated files
  Update copyright year to 2014
  Update copyright year for re2c files as well
2014-06-16 23:32:10 +03:00
Lior Kaplan c38b73a701 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Update copyright year for re2c generated files
  Update copyright year to 2014
  Update copyright year for re2c files as well
2014-06-16 23:30:44 +03:00
Lior Kaplan 6f3bcb0d6e Update copyright year for re2c generated files 2014-06-16 23:28:36 +03:00
Lior Kaplan 2d576c2a99 Update copyright year to 2014 2014-06-16 23:27:45 +03:00
Lior Kaplan e667d23178 Update copyright year for re2c files as well 2014-06-16 23:26:50 +03:00
Bob Weinand b4d61c335b Merge branch 'PHP-5.6' 2014-06-16 11:20:05 +02:00
Bob Weinand 3c2b42ac41 Merge branch 'PHP-5.5' into PHP-5.6
Conflicts:
	Zend/zend_compile.c
2014-06-16 11:18:45 +02:00
Bob Weinand e93f8e74d4 Merge branch 'PHP-5.4' into PHP-5.5 2014-06-16 11:16:33 +02:00
Bob Weinand 0a3979e08b Fix patch for bug #67436 2014-06-16 11:10:50 +02:00
Remi Collet ced7f0ea12 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix failed test
2014-06-16 10:52:39 +02:00
Remi Collet 6788f14f5e fix failed test 2014-06-16 10:52:26 +02:00
Remi Collet 6b9fa109e0 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix test on modern distro where old unsecure algo are disabled in openssl config. Testing recent algo should be enough to check this function.
2014-06-16 09:44:58 +02:00
Remi Collet fc36277eb6 Fix test on modern distro where old unsecure algo are disabled in openssl config.
Testing recent algo should be enough to check this function.
2014-06-16 09:42:55 +02:00
Bob Weinand 8668f205ca Merge branch 'PHP-5.6' 2014-06-16 00:43:31 +02:00
Bob Weinand 7cef3a57ad Merge branch 'PHP-5.5' into PHP-5.6 2014-06-16 00:42:50 +02:00
Bob Weinand 03ee0ddc5f Merge branch 'PHP-5.4' into PHP-5.5 2014-06-16 00:41:46 +02:00
Bob Weinand 4053dbe29f Merge branch 'pull-request/695' into PHP-5.4 2014-06-16 00:35:20 +02:00
Levi Morrison 6c9c44905e Added tests for bug 67436 2014-06-15 16:31:39 -06:00
Bob Weinand 02bea01f3d Merge branch 'PHP-5.6' 2014-06-15 23:56:14 +02:00
Bob Weinand 0913c15092 Merge branch 'PHP-5.5' into PHP-5.6 2014-06-15 23:55:44 +02:00
Bob Weinand 4555779c39 Merge branch 'PHP-5.4' into PHP-5.5 2014-06-15 23:54:05 +02:00
Bob Weinand a84a2d4ace Fixed wrong XFAIL test - already fixed 2014-06-15 23:52:41 +02:00
Lior Kaplan 2c327599a3 Fix typo in Bug #67406 NEWS entry 2014-06-16 00:33:09 +03:00
Lior Kaplan d9432d6a50 Fix typo in Bug #67406 NEWS entry 2014-06-16 00:26:01 +03:00
Bob Weinand 143cc3f0da Merge branch 'PHP-5.6' 2014-06-15 23:16:21 +02:00
Bob Weinand f92143f740 Merge branch 'PHP-5.5' into PHP-5.6
Conflicts:
	NEWS
	Zend/zend_compile.c
2014-06-15 23:06:15 +02:00
Bob Weinand 1d802ad5e5 Merge branch 'PHP-5.4' into PHP-5.5 2014-06-15 22:36:13 +02:00
Bob Weinand 85d3ac5763 Updated NEWS 2014-06-15 22:32:47 +02:00
Bob Weinand f5f1c702cd Merge branch 'PHP-5.4' into PHP-5.5 2014-06-15 22:24:44 +02:00
Bob Weinand ca29063da5 Fix bug #67436 2014-06-15 22:18:25 +02:00
Bob Weinand 05d7facb40 Update NEWS 2014-06-15 15:50:36 +02:00
Bob Weinand 1d71600394 Merge branch 'PHP-5.6' 2014-06-15 15:47:44 +02:00
Bob Weinand f677889a9a Merge sapi/phpdbg into PHP-5.6 2014-06-15 15:47:14 +02:00
Stanislav Malyshev 693535084d Merge branch 'PHP-5.6'
* PHP-5.6:
  update NEWS
  update NEWS
  update NEWS
2014-06-15 01:08:16 -07:00
Stanislav Malyshev da3ef175b9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update NEWS
  update NEWS
2014-06-15 01:07:48 -07:00
Stanislav Malyshev b303f19cff update NEWS 2014-06-15 01:07:39 -07:00
Stanislav Malyshev b2b3ce717f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  update NEWS
2014-06-15 01:06:46 -07:00
Stanislav Malyshev 55c2721229 update NEWS 2014-06-15 01:06:37 -07:00
Sara Golemon 21525d0413 Fix potential segfault in dns_get_record()
If the remote sends us a packet with a malformed TXT record,
we could end up trying to over-consume the packet and wander
off into overruns.
2014-06-15 01:04:24 -07:00
Stanislav Malyshev b053c4f4f6 update NEWS 2014-06-15 00:46:31 -07:00
kovacs.ferenc e9c2e7d6e6 fix bugsnet #67212: phpdbg uses non-standard TIOCGWINSZ 2014-06-14 23:48:24 +02:00
kovacs.ferenc fbb7bdc21e change the default terminal width from 100 to 80, as that is the most common value 2014-06-14 23:48:24 +02:00
Derick Rethans b1a708b28c Merge branch 'PHP-5.6' 2014-06-13 23:26:50 +01:00
Derick Rethans a06dabb5e9 Merge branch 'PHP-5.5' into PHP-5.6 2014-06-13 23:26:47 +01:00
Derick Rethans c06ccf7c70 Merge branch 'PHP-5.4' into PHP-5.5 2014-06-13 23:26:43 +01:00
Derick Rethans ce70b920e4 - Updated to version 2014.5 (2014e) 2014-06-13 23:26:42 +01:00
Matteo Beccati 7d2bcbe20c Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #67433 SIGSEGV when using count() on an object implementing Countable
2014-06-13 13:14:52 +02:00
Matteo Beccati df5551ba4f Fix bug #67433 SIGSEGV when using count() on an object implementing Countable 2014-06-13 13:14:12 +02:00
krakjoe ab353c0a55 remove all references 2014-06-13 07:35:11 +01:00
Adam Harvey 64f85d5afa Merge branch 'PHP-5.6'
* PHP-5.6:
  Follow 308 Permanent Redirect responses.
2014-06-12 18:19:11 -07:00
Adam Harvey 84f339546a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Follow 308 Permanent Redirect responses.
2014-06-12 18:17:18 -07:00
Adam Harvey 2546434008 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Follow 308 Permanent Redirect responses.
2014-06-12 18:15:07 -07:00
Adam Harvey b51f82f260 Follow 308 Permanent Redirect responses.
Fixes bug #67430 (http:// wrapper doesn't follow 308 redirects).
2014-06-12 18:12:53 -07:00
Adam Harvey dd57ceb1de Merge branch 'PHP-5.6'
* PHP-5.6:
  Add 308 and 426 to the HTTP response code map in the CLI server.
2014-06-12 17:57:55 -07:00
Adam Harvey e082199d8e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Add 308 and 426 to the HTTP response code map in the CLI server.
2014-06-12 17:57:36 -07:00
Adam Harvey e956ba9357 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Add 308 and 426 to the HTTP response code map in the CLI server.
2014-06-12 17:56:10 -07:00
Adam Harvey fe67674809 Add 308 and 426 to the HTTP response code map in the CLI server.
Implements FR #67429 (CLI server is missing some new HTTP response codes).
2014-06-12 17:54:29 -07:00
Adam Harvey a92e3eb0fe Merge branch 'PHP-5.6'
* PHP-5.6:
  Keep 308-399 HTTP response codes when header('Location:') is called.
2014-06-12 17:42:29 -07:00
Adam Harvey 82231b5d89 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Keep 308-399 HTTP response codes when header('Location:') is called.
2014-06-12 17:40:51 -07:00
Adam Harvey aa3a5f7681 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Keep 308-399 HTTP response codes when header('Location:') is called.
2014-06-12 17:38:52 -07:00
Adam Harvey 1b9cbab9a7 Keep 308-399 HTTP response codes when header('Location:') is called.
Fixes bug #67428 (header('Location: foo') will override a 308-399 response
code).
2014-06-12 17:35:05 -07:00
David Zülke db537b1f3f Fix SetHandler proxy:fcgi:// incompatibilities
Apache 2.4.10+ will allow the following:

```
<FilesMatch \.php$>
SetHandler proxy:fcgi://localhost:9000
</FilesMatch>
```

This is much easier than using `ProxyPassMatch` (which prevents rewriting and other stuff) and rewrites (which are a bag of hurt because when combined with user-land `.htaccess` rewrites, there's always rewrite loops, prefix breakage etc (I've tried, for weeks).

It's basically the future of using Apache (via `mod_proxy_fcgi`) together with PHP-FPM. It's also available for older versions as a standalone module, very easy to install: https://gist.github.com/progandy/6ed4eeea60f6277c3e39

However, the two bits of code this commit deletes interfere with that. They both cover CGI-only mode and were copied from that SAPI into the FPM source. See e.g. https://bugs.php.net/bug.php?id=47042

The first deleted part mangled `SCRIPT_NAME` if something like

```
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) index.php/$1 [L]
```

is used (i.e. rewriting to `PATH_INFO`. The second part drops `PATH_INFO` if there was a `REDIRECT_URL` (with CGI mode, `SCRIPT_FILENAME` in Apache is the path to the PHP binary, and `PATH_INFO` contains the name of the script to run).

Clearly, neither applies in the case of FPM, so both are safe to delete.
2014-06-12 21:45:22 +02:00
Bob Weinand d337fb0b62 Make run-tests.php PHP-5.4 compatible 2014-06-12 18:49:02 +03:00
Andrea Faulds 2b5d25d1fc Merge branch 'httponly-cookies' of https://github.com/mj/php-src 2014-06-12 10:03:14 +01:00
Adam Harvey b853f99abf Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS entry for Fix potential segfault in dns_get_record()
  NEWS entry for "Fix potential segfault in dns_get_record()"
  NEWS entry for Fix potential segfault in dns_get_record(
  5.5.15 now
2014-06-11 21:44:07 +00:00
Adam Harvey af26a28ac0 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS entry for "Fix potential segfault in dns_get_record()"
  NEWS entry for Fix potential segfault in dns_get_record(
  5.5.15 now

Conflicts:
	configure.in
	main/php_version.h
2014-06-11 21:43:39 +00:00
Adam Harvey 16e0dcea72 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS entry for "Fix potential segfault in dns_get_record()"
2014-06-11 21:42:26 +00:00
Sara Golemon 1ba338624b NEWS entry for Fix potential segfault in dns_get_record() 2014-06-11 14:24:50 -07:00
Sara Golemon 5f2a30e111 NEWS entry for "Fix potential segfault in dns_get_record()" 2014-06-11 14:24:13 -07:00
Sara Golemon ace35a3d3b NEWS entry for Fix potential segfault in dns_get_record( 2014-06-11 14:22:59 -07:00
Bob Weinand 65c2001acd Fixed order in travis script 2014-06-12 00:18:47 +03:00
Bob Weinand 181323eecd Check for all phpdbg compitble php versions 2014-06-11 23:08:55 +02:00
Sara Golemon b34d7849ed Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix potential segfault in dns_get_record()
2014-06-11 13:53:59 -07:00
Sara Golemon e2ef56f760 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix potential segfault in dns_get_record()
2014-06-11 13:51:53 -07:00
Sara Golemon 1978f41c8a Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix potential segfault in dns_get_record()
2014-06-11 13:37:40 -07:00
Sara Golemon 4f73394fdd Fix potential segfault in dns_get_record()
If the remote sends us a packet with a malformed TXT record,
we could end up trying to over-consume the packet and wander
off into overruns.
2014-06-11 13:37:04 -07:00
Bob Weinand 3d48c7e5ec Fix issue #89 — Compile failure in PHP 5.4
zend_hash_get_current_key_zval_ex isn't defined in PHP 5.4. (used in phpdbg_watch.c)
2014-06-11 23:35:12 +03:00
Ferenc Kovacs ec974c4397 Merge branch 'PHP-5.6'
* PHP-5.6:
  Revert "Add optional second arg to unserialize()"
2014-06-11 14:59:39 +02:00
Ferenc Kovacs c38ab260fe Revert "Add optional second arg to unserialize()"
This reverts commit cfd1045822.
2014-06-11 14:43:09 +02:00
Julien Pauli a6e0751079 5.5.15 now 2014-06-11 10:21:26 +02:00
Stanislav Malyshev 6953d33d30 Merge branch 'PHP-5.6'
* PHP-5.6:
  update NEWS
2014-06-10 23:25:01 -07:00
Stanislav Malyshev ff74b9b2fc Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update NEWS
2014-06-10 23:24:36 -07:00
Stanislav Malyshev 2b04d68972 Fix bug #66127 (Segmentation fault with ArrayObject unset) 2014-06-10 23:24:11 -07:00
Stanislav Malyshev 495e6719e0 update NEWS 2014-06-10 23:23:37 -07:00
Stanislav Malyshev 6c81b14b2d Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #66127 (Segmentation fault with ArrayObject unset)
  5.4.31 next
2014-06-10 23:21:17 -07:00
Stanislav Malyshev 2ed66ed21c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #66127 (Segmentation fault with ArrayObject unset)
  5.4.31 next
2014-06-10 23:20:07 -07:00
Stanislav Malyshev f11bba4929 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #66127 (Segmentation fault with ArrayObject unset)
  5.4.31 next

Conflicts:
	configure.in
	main/php_version.h
2014-06-10 23:19:21 -07:00
Stanislav Malyshev 317bcb96d0 Fix bug #66127 (Segmentation fault with ArrayObject unset) 2014-06-10 23:17:30 -07:00
Stanislav Malyshev 979eed5c6b 5.4.31 next 2014-06-10 23:03:40 -07:00
Stanislav Malyshev 0235a8acdc 5.4.30 rc1 2014-06-10 21:17:37 -07:00
Adam Harvey 61279dca69 Add NEWS. This doesn't need UPGRADING (or an RFC), IMO. 2014-06-11 00:31:04 +00:00
Adam Harvey f79f3ac184 Fix broken test. 2014-06-11 00:22:13 +00:00
Adam Harvey c12f832479 Add a mime type map generation script and update the header. 2014-06-11 00:19:49 +00:00
Adam Harvey 8c59ae345e Move the mime type map out of php_cli_server.c for easier generation. 2014-06-11 00:18:33 +00:00
Adam Harvey faa34f24e3 Replace the CLI server's linear search for extensions with a hash table.
This doesn't make a statistically significant performance impact either way
today, but gives us more scope to grow the MIME type list.
2014-06-10 23:57:42 +00:00
Stanislav Malyshev ac6c86b7dc fix test 2014-06-10 14:25:49 -07:00
Xinchen Hui d461afc3a2 Merge branch 'PHP-5.6' 2014-06-10 21:58:31 +08:00
Xinchen Hui ebe6854dbc Merge branch 'PHP-5.5' into PHP-5.6
Conflicts:
	Zend/zend_execute_API.c
2014-06-10 21:58:16 +08:00
Xinchen Hui e8699d75da Remove unused included file 2014-06-10 21:56:30 +08:00
Remi Collet 0b6676ef87 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  NEWS
  Fixed Bug #67413 	fileinfo: cdf_read_property_info insufficient boundary chec
2014-06-10 14:36:38 +02:00
Remi Collet e72ab79196 NEWS 2014-06-10 14:36:31 +02:00
Remi Collet 0a7e131128 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  NEWS
  Fixed Bug #67413 	fileinfo: cdf_read_property_info insufficient boundary chec
2014-06-10 14:36:02 +02:00
Remi Collet a4d709afe2 NEWS 2014-06-10 14:35:57 +02:00
Remi Collet 12a62ce868 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Fixed Bug #67413 	fileinfo: cdf_read_property_info insufficient boundary chec
2014-06-10 14:35:23 +02:00
Remi Collet 6256b79a35 NEWS 2014-06-10 14:35:14 +02:00
Remi Collet 25b1dc917a Fixed Bug #67413 fileinfo: cdf_read_property_info insufficient boundary chec
Upstream:
https://github.com/file/file/commit/93e063ee374b6a75729df9e7201fb511e47e259d

Adapted for C standard.
2014-06-10 14:33:37 +02:00
Remi Collet ed28d84b9a Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  NEWS
  Bug #67412 	fileinfo: cdf_count_chain insufficient boundary check
2014-06-10 14:24:28 +02:00
Remi Collet fde5790fd6 NEWS 2014-06-10 14:24:22 +02:00
Remi Collet 9ee147e6ff Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  NEWS
  Bug #67412 	fileinfo: cdf_count_chain insufficient boundary check
2014-06-10 14:24:07 +02:00
Remi Collet 20b03c84ec NEWS 2014-06-10 14:24:00 +02:00
Remi Collet ff66c90af0 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Bug #67412 	fileinfo: cdf_count_chain insufficient boundary check
2014-06-10 14:23:37 +02:00
Remi Collet da5d40bae6 NEWS 2014-06-10 14:23:31 +02:00
Remi Collet 40ef6e07e0 Bug #67412 fileinfo: cdf_count_chain insufficient boundary check
Upstream:
https://github.com/file/file/commit/40bade80cbe2af1d0b2cd0420cebd5d5905a2382
2014-06-10 14:22:04 +02:00
Remi Collet 59383273eb Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  NEWS
  Fixed Bug #67411 	fileinfo: cdf_check_stream_offset insufficient boundary check
2014-06-10 14:17:06 +02:00
Remi Collet b999947dcd NEWS 2014-06-10 14:16:58 +02:00
Remi Collet 1d6286c049 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  NEWS
  Fixed Bug #67411 	fileinfo: cdf_check_stream_offset insufficient boundary check
2014-06-10 14:16:39 +02:00
Remi Collet 9d0ca077ee NEWS 2014-06-10 14:16:32 +02:00
Remi Collet f6fee381be Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Fixed Bug #67411 	fileinfo: cdf_check_stream_offset insufficient boundary check
2014-06-10 14:16:07 +02:00
Remi Collet 2b33a41162 NEWS 2014-06-10 14:16:00 +02:00
Remi Collet 5c9f967999 Fixed Bug #67411 fileinfo: cdf_check_stream_offset insufficient boundary check
Upstream:
https://github.com/file/file/commit/36fadd29849b8087af9f4586f89dbf74ea45be67
2014-06-10 14:13:14 +02:00
Remi Collet 8cd184f14a Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  NEWS
  Fixed Bug #67410 fileinfo: mconvert incorrect handling of truncated pascal string size
2014-06-10 14:05:44 +02:00
Remi Collet 7f8fa470f1 NEWS 2014-06-10 14:05:34 +02:00
Remi Collet 5e7cb43890 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  NEWS
  Fixed Bug #67410 fileinfo: mconvert incorrect handling of truncated pascal string size
2014-06-10 14:05:02 +02:00
Remi Collet da399ce6a8 NEWS 2014-06-10 14:04:52 +02:00
Remi Collet 18ff81eb1a Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Fixed Bug #67410 fileinfo: mconvert incorrect handling of truncated pascal string size
2014-06-10 14:04:36 +02:00
Remi Collet d02aa44090 NEWS 2014-06-10 14:04:27 +02:00
Remi Collet e77659a8c8 Fixed Bug #67410 fileinfo: mconvert incorrect handling of truncated pascal string size
Upstream
https://github.com/file/file/commit/27a14bc7ba285a0a5ebfdb55e54001aa11932b08
2014-06-10 14:02:36 +02:00
Christian Wenz 60cc43a279 Update info.c
Fixes #67407: Windows 8.1/Server 2012 R2 reported as Windows 8/Server 2012
2014-06-10 10:42:23 +02:00
Remi Collet 39885d0819 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  Fixed bug #67406 built-in web-server segfaults on startup
2014-06-10 10:39:10 +02:00
Remi Collet e2493a3a08 fix merge from php 5.5 (already fixed, differently) 2014-06-10 10:38:39 +02:00
Remi Collet d440bb3e68 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Fixed bug #67406 built-in web-server segfaults on startup
2014-06-10 10:32:26 +02:00
Remi Collet 95fcf868d3 NEWS 2014-06-10 10:32:15 +02:00
Remi Collet 949cab09f2 NEWS 2014-06-10 10:31:17 +02:00
Remi Collet 58c6a08e00 Fixed bug #67406 built-in web-server segfaults on startup
Reproduce on aarch64.

From select man page:
  "select() may update the timeout argument to indicate how much time was left."
So "const" is not ok.
2014-06-10 10:28:34 +02:00
Bob Weinand 60d89e47b2 Add line in run-tests.php help 2014-06-09 15:38:38 +02:00
Ferenc Kovacs ab074b408a Merge branch 'PHP-5.6'
* PHP-5.6:
  enable phpdbg for the travis build, and also run the testsuite for it
2014-06-09 15:30:49 +02:00
Ferenc Kovacs 5ec5c80dc4 enable phpdbg for the travis build, and also run the testsuite for it 2014-06-09 15:30:09 +02:00
Bob Weinand f0a9905759 Merge branch 'PHP-5.6' 2014-06-09 10:07:36 +02:00
Bob Weinand 6adc30028c Merge sapi/phpdbg into PHP-5.6 2014-06-09 10:06:29 +02:00
Bob Weinand 158b03fdef Finish fixing phpdbg on ZTS build 2014-06-09 09:49:21 +02:00
Stanislav Malyshev 857618161f Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #67399 (putenv with empty variable may lead to crash)
  Fixed bug #67399 (putenv with empty variable may lead to crash)
  Fixed bug #67399 (putenv with empty variable may lead to crash)
2014-06-08 23:10:52 -07:00
Stanislav Malyshev b060880c87 Fixed bug #67399 (putenv with empty variable may lead to crash) 2014-06-08 23:10:44 -07:00
Stanislav Malyshev be133d4eeb Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #67399 (putenv with empty variable may lead to crash)
  Fixed bug #67399 (putenv with empty variable may lead to crash)
2014-06-08 23:10:11 -07:00
Stanislav Malyshev 336b5f59b6 Fixed bug #67399 (putenv with empty variable may lead to crash) 2014-06-08 23:10:04 -07:00
Stanislav Malyshev 954632e9ce Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #67399 (putenv with empty variable may lead to crash)
2014-06-08 23:09:37 -07:00
Stanislav Malyshev 4b0b032676 Fixed bug #67399 (putenv with empty variable may lead to crash) 2014-06-08 23:09:31 -07:00
Stanislav Malyshev 62857998c5 Fixed bug #67399 (putenv with empty variable may lead to crash) 2014-06-08 23:09:09 -07:00
Matteo Beccati 106b6faa7a Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed DOM tests when using libxml2 versions patched against CVE-2014-0191
2014-06-09 07:07:28 +02:00
Matteo Beccati 6eaadc0228 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed DOM tests when using libxml2 versions patched against CVE-2014-0191
2014-06-09 07:07:17 +02:00
Matteo Beccati af5057bea7 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed DOM tests when using libxml2 versions patched against CVE-2014-0191
2014-06-09 07:07:07 +02:00
Matteo Beccati 5c8c57aa6c Fixed DOM tests when using libxml2 versions patched against CVE-2014-0191
DOMDocument::substituteEntities needs to be set to true in order for
external entities to be parsed.
2014-06-09 07:05:23 +02:00
Stanislav Malyshev d3eac6399b Merge branch 'PHP-5.6'
* PHP-5.6:
  update news
  add news
  Bug 49898 __getCookies() method implementation
2014-06-08 19:47:59 -07:00
Stanislav Malyshev df03bcf135 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  add news
  Bug 49898 __getCookies() method implementation
2014-06-08 19:47:38 -07:00
Stanislav Malyshev 706324bf48 update news 2014-06-08 19:47:14 -07:00
Stanislav Malyshev 1b8d4695e2 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add news
  Bug 49898 __getCookies() method implementation
2014-06-08 19:46:12 -07:00
Stanislav Malyshev 9b5d56fd61 add news 2014-06-08 19:44:27 -07:00
Boro Sitnikovski aebb23e4db Bug 49898
__getCookies() method implementation
2014-06-08 19:36:18 -07:00
Stanislav Malyshev 317dec0740 Merge remote-tracking branch 'github/pr/669'
* github/pr/669:
  Removed another cvsclean file
  Removed cvsclean and svnclean tools
2014-06-08 19:29:44 -07:00
Stanislav Malyshev 94b4748175 Merge branch 'PHP-5.6'
* PHP-5.6:
  Removed another cvsclean file
  Removed cvsclean and svnclean tools
2014-06-08 19:29:26 -07:00
Sobak 00c362c1f6 Removed another cvsclean file 2014-06-08 19:28:06 -07:00
Sobak 244c289f9c Removed cvsclean and svnclean tools 2014-06-08 19:27:58 -07:00
Stanislav Malyshev c568a8e610 Merge remote-tracking branch 'github/pr/462'
* github/pr/462:
  Bug 64744 Show the type of the non-object for more descriptive errors
2014-06-08 19:19:36 -07:00
Stanislav Malyshev 9fceb05fcf Merge branch 'PHP-5.6'
* PHP-5.6:
  Bug 64744 Show the type of the non-object for more descriptive errors
2014-06-08 19:18:09 -07:00
Boro Sitnikovski cfccdc6362 Bug 64744
Show the type of the non-object for more descriptive errors
2014-06-08 19:14:58 -07:00
Stanislav Malyshev 659eeee164 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix order
  fix order
  add news
2014-06-08 19:05:10 -07:00
Stanislav Malyshev d2783fbf6c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix order
  fix order
2014-06-08 19:04:47 -07:00
Stanislav Malyshev e07083c378 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix order
2014-06-08 19:04:35 -07:00
Stanislav Malyshev 7ddbfae022 fix order 2014-06-08 19:04:21 -07:00
Stanislav Malyshev e43270cb2a fix order 2014-06-08 19:03:50 -07:00
Stanislav Malyshev 1607ff8b9e add news 2014-06-08 19:03:31 -07:00
Stanislav Malyshev a17734fb04 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug 666222
  Fix bug 666222
2014-06-08 19:02:51 -07:00
Stanislav Malyshev 8f527fbf14 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug 666222
  Fix bug 666222
2014-06-08 19:02:24 -07:00
Stanislav Malyshev 8f78c3b9eb Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug 666222
2014-06-08 19:00:42 -07:00
Levi Morrison f47976dd9b Fix bug 666222
This also adds some smaller, isolated tests related to bug 66622.
2014-06-08 18:59:44 -07:00
Levi Morrison e030efa4f6 Fix bug 666222
This also adds some smaller, isolated tests related to bug 66622.

Conflicts:
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2014-06-08 18:59:23 -07:00
Stanislav Malyshev 7e1e40209a Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed identation on file
  Fix align indentation
2014-06-08 15:54:49 -07:00
Stanislav Malyshev 19edbc9720 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed identation on file
  Fix align indentation
2014-06-08 15:54:32 -07:00
Stanislav Malyshev 38343856e1 Merge branch 'PHp-5.4' into PHP-5.5
* PHp-5.4:
  Fixed identation on file
  Fix align indentation
2014-06-08 15:53:26 -07:00
Bob Weinand 144077edb8 Fix segfault in tests with lexer
There's still a bug in parsing commands
2014-06-09 00:38:06 +02:00
Bob Weinand 7cfe696371 Fix ZTS build 2014-06-09 00:02:10 +02:00
Jefersson Nathan 33926b19d0 Fixed identation on file 2014-06-08 14:30:01 -07:00
Stanislav Malyshev 224f369a03 Merge remote-tracking branch 'github/pr/671'
* github/pr/671:
  Fix align indentation
  Fixed identation on file
2014-06-08 14:29:03 -07:00
Jefersson Nathan e51eaaf665 Fix align indentation 2014-06-08 14:28:51 -07:00
Stanislav Malyshev 6b4835d3e3 Merge branch 'pull-request/676'
* pull-request/676:
  Added support for parsing ssl certificates using GeneralizedTime format.
2014-06-08 14:20:30 -07:00
Stanislav Malyshev f0462db11a Merge branch 'PHP-5.6'
* PHP-5.6:
  Added support for parsing ssl certificates using GeneralizedTime format.
2014-06-08 14:20:07 -07:00
Stanislav Malyshev 3d9f922c03 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Added support for parsing ssl certificates using GeneralizedTime format.
2014-06-08 14:19:50 -07:00
Stanislav Malyshev 4946dc1ab9 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Added support for parsing ssl certificates using GeneralizedTime format.
2014-06-08 14:19:16 -07:00
Paul Oehler 76a7fd893b Added support for parsing ssl certificates using GeneralizedTime format.
fix bug #65698
fix bug #66636
2014-06-08 14:17:58 -07:00
krakjoe 0490850957 remove phpdbg directory from source tree on travis 2014-06-08 22:16:06 +01:00
Stanislav Malyshev f22f665b47 Merge remote-tracking branch 'github/pr/677'
* github/pr/677:
  Test
  Fix grammar #2683
2014-06-08 14:02:20 -07:00
Stanislav Malyshev ee417600bc Merge branch 'pull-request/687'
* pull-request/687:
  Remove superfluous echos.
2014-06-08 13:53:40 -07:00
Stanislav Malyshev fce97414bc Merge branch 'PHP-5.6'
* PHP-5.6:
  Remove superfluous echos.
2014-06-08 13:53:27 -07:00
Stanislav Malyshev e35945490f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Remove superfluous echos.
2014-06-08 13:53:01 -07:00
Stanislav Malyshev da6abc8db4 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Remove superfluous echos.
2014-06-08 13:50:41 -07:00
Jeff Welch 5fd7c2b01d Remove superfluous echos. 2014-06-08 13:50:22 -07:00
Bob Weinand 4c79fe6afa Updated parser & leer to be usable with re2c
Fixes some weird temporary compilation errors too
2014-06-08 20:34:30 +00:00
Jeff Welch ea543893d0 Remove superfluous echos. 2014-06-08 04:09:14 -04:00
Ferenc Kovacs 2b36a2747d Merge branch 'PHP-5.6'
* PHP-5.6:
  use ./tokenizer_data_gen.sh to for adding T_POW & T_POW_EQUAL
2014-06-08 00:18:33 +02:00
Ferenc Kovacs 1e2a4a67dd use ./tokenizer_data_gen.sh to for adding T_POW & T_POW_EQUAL 2014-06-08 00:01:01 +02:00
Ferenc Kovacs caf34bf189 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #67392: token_name() does not return name for T_POW and T_POW_EQUAL token
2014-06-07 15:29:29 +02:00
Ferenc Kovacs 016b1f089e Fix bug #67392: token_name() does not return name for T_POW and T_POW_EQUAL token 2014-06-07 15:27:54 +02:00
Remi Collet 3ef71630b1 Merge branch 'PHP-5.6'
* PHP-5.6:
  move NEWS entry in the right place
2014-06-06 17:19:57 +02:00
Remi Collet bcef1beb8f move NEWS entry in the right place 2014-06-06 17:19:35 +02:00
Nikita Popov 2adda06544 Merge branch 'PHP-5.6' 2014-06-06 17:13:08 +02:00
Nikita Popov 6d1885342c Fix bug #67392: dtrace breaks argument unpack 2014-06-06 17:09:49 +02:00
Remi Collet acf85d89ba Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  NEWS
  Fix bug #67390 insecure temporary file use in the configure script
2014-06-06 14:19:28 +02:00
Remi Collet 50b980f547 NEWS 2014-06-06 14:19:21 +02:00
Remi Collet cc6c7dd8ff Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  NEWS
  Fix bug #67390 insecure temporary file use in the configure script
2014-06-06 14:19:05 +02:00
Remi Collet a53b884c47 NEWS 2014-06-06 14:18:29 +02:00
Remi Collet 38e11dfaee Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Fix bug #67390 insecure temporary file use in the configure script
2014-06-06 14:18:17 +02:00
Remi Collet 811f35d0ed NEWS 2014-06-06 14:17:54 +02:00
Remi Collet 91bcadd85e Fix bug #67390 insecure temporary file use in the configure script 2014-06-06 14:16:04 +02:00
Anatol Belski 0e7bf92129 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  restore correct behavior of DateTime
  fix test use invalid code
  Fixed startup segfault in non-debug builds Fixes issue #87
  PHP 5.4/5.5 compability in phpdbg_watch.c
  fix gcov data with some locales (again)

Conflicts:
	ext/date/php_date.c
2014-06-06 09:06:48 +02:00
Anatol Belski df0794469d Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport: (35 commits)
  drop exec perm on doc files
  fix test for 5.4/5.5
  add test for previous fix
  NEWS
  NEWS
  NEWS
  Fix regression introduce in fix for bug #67118
  update news
  update NEWS
  Fix tests
  Fix possible segfault depending on memory location...
  fix gcov data with some locales (again)
  fix gcov data with some locales (again)
  Update NEWS
  Fixed startup segfault in non-debug builds Fixes issue #87
  Fixed regression introduced by patch for bug #67072
  Fixed bug #67329 fileinfo: NULL pointer deference flaw by processing certain CDF files
  (re)add cve number in NEWS, from 5.4.29
  NEWS
  NEWS
  ...
2014-06-06 09:04:37 +02:00
Anatol Belski d4cfc15514 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6: (24 commits)
  drop exec perm on doc files
  fix test for 5.4/5.5
  add test for previous fix
  NEWS
  NEWS
  NEWS
  Fix regression introduce in fix for bug #67118
  update news
  update NEWS
  Fix tests
  Fix possible segfault depending on memory location...
  fix gcov data with some locales (again)
  fix gcov data with some locales (again)
  Update NEWS
  Fixed startup segfault in non-debug builds Fixes issue #87
  Fixed regression introduced by patch for bug #67072
  Fixed bug #67329 fileinfo: NULL pointer deference flaw by processing certain CDF files
  (re)add cve number in NEWS, from 5.4.29
  NEWS
  NEWS
  ...

Conflicts:
	ext/date/php_date.c
2014-06-06 08:59:05 +02:00
Remi Collet e16097626a Merge branch 'PHP-5.6'
* PHP-5.6:
  drop exec perm on doc files
2014-06-05 17:46:21 +02:00
Remi Collet 6a5d5d1db4 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  drop exec perm on doc files
2014-06-05 17:45:59 +02:00
Remi Collet e31b51f9a0 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  drop exec perm on doc files
2014-06-05 17:45:41 +02:00
Remi Collet 56c9e22c1f drop exec perm on doc files 2014-06-05 17:45:22 +02:00
Remi Collet ce3eae4c36 fix test for 5.4/5.5 2014-06-05 17:36:20 +02:00
Remi Collet b16950b5d3 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix test for 5.4/5.5
2014-06-05 17:34:32 +02:00
Remi Collet 67f1a58ac9 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix test for 5.4/5.5
2014-06-05 17:34:09 +02:00
Remi Collet 127651e9ae fix test for 5.4/5.5 2014-06-05 17:33:40 +02:00
Remi Collet f11f7f5601 restore correct behavior of DateTime 2014-06-05 14:04:44 +02:00
Remi Collet f1ef7018f0 fix test use invalid code 2014-06-05 14:01:20 +02:00
Remi Collet aafbf93841 Merge branch 'PHP-5.6'
* PHP-5.6:
  add test for previous fix
2014-06-05 14:00:40 +02:00
Remi Collet 218df7e058 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  add test for previous fix
2014-06-05 14:00:29 +02:00
Remi Collet ab848ea400 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add test for previous fix
2014-06-05 14:00:15 +02:00
Remi Collet 15d8c80ead add test for previous fix 2014-06-05 14:00:00 +02:00
Remi Collet 2890284096 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  NEWS
  Fix regression introduce in fix for bug #67118
2014-06-05 13:47:14 +02:00
Remi Collet ce22c03a72 NEWS 2014-06-05 13:46:55 +02:00
Remi Collet 2b3f4cc29e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  NEWS
  Fix regression introduce in fix for bug #67118
2014-06-05 13:46:41 +02:00
Remi Collet c61c24ad79 NEWS 2014-06-05 13:46:13 +02:00
Remi Collet 9ea9064779 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Fix regression introduce in fix for bug #67118
2014-06-05 13:45:57 +02:00
Remi Collet 3f47368738 NEWS 2014-06-05 13:45:25 +02:00
Remi Collet 1fe9f1e4f5 Fix regression introduce in fix for bug #67118
The fix was correct but break some code (at least in Horde)
This is a temporary workaround to fix regressioni in 5.4, 5.5 and 5.6

This make php_date_initialize more consistent
- on success return 1 + time initiliazed
- on failure return 0 + time = zero
  which is check by DATE_CHECK_INITIALIZED by later method call

Will restore consistency with other date classes in master.
2014-06-05 13:39:46 +02:00
Stanislav Malyshev e8e907279e Merge branch 'PHP-5.6'
* PHP-5.6:
  update news
  update NEWS
  fix gcov data with some locales (again)
2014-06-04 01:11:40 -07:00
Stanislav Malyshev 3d969932bf Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update news
  update NEWS
  fix gcov data with some locales (again)
2014-06-04 01:11:07 -07:00
Stanislav Malyshev 4b4a5bc1d3 update news 2014-06-04 01:10:45 -07:00
Stanislav Malyshev 846e076492 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  update NEWS
2014-06-04 01:10:12 -07:00
Stanislav Malyshev e06c4f7fe5 update NEWS 2014-06-04 01:09:37 -07:00
Bob Weinand 1e85b9e86b Merge branch 'PHP-5.6'
Conflicts:
	sapi/phpdbg/phpdbg.c
2014-06-04 02:20:35 +02:00
Bob Weinand 848df6fcbe Merge sapi/phpdbg into PHP-5.6 2014-06-04 02:18:39 +02:00
Bob Weinand 7b9367971d Fix tests 2014-06-04 02:15:50 +02:00
Bob Weinand 79519f7e30 Fix possible segfault depending on memory location... 2014-06-04 02:15:34 +02:00
Bob Weinand a1b0ae4247 Fixed startup segfault in non-debug builds
Fixes issue #87
2014-06-03 21:24:55 +00:00
Bob Weinand 241211975e PHP 5.4/5.5 compability in phpdbg_watch.c 2014-06-03 21:24:45 +00:00
Nuno Lopes bf50218983 fix gcov data with some locales (again) 2014-06-03 17:22:16 -04:00
Nuno Lopes 2766926e29 fix gcov data with some locales (again) 2014-06-03 17:21:45 -04:00
Nuno Lopes 082f79de55 fix gcov data with some locales (again) 2014-06-03 17:21:20 -04:00
Bob Weinand 13421c55ff Update NEWS 2014-06-03 21:18:24 +00:00
Bob Weinand 466cd2aa7d Merge sapi/phpdbg into PHP-5.6 2014-06-03 21:15:02 +00:00
Bob Weinand 467b19a948 Fixed startup segfault in non-debug builds
Fixes issue #87
2014-06-03 21:03:42 +00:00
Anatol Belski 94d1014dc7 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed regression introduced by patch for bug #67072
2014-06-03 20:52:30 +02:00
Anatol Belski b416537917 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed regression introduced by patch for bug #67072
2014-06-03 20:51:51 +02:00
Anatol Belski e2710310a0 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed regression introduced by patch for bug #67072
2014-06-03 20:51:18 +02:00
Anatol Belski 20568e5028 Fixed regression introduced by patch for bug #67072
This applies to 5.4 and 5.5 only as a legacy fix.
2014-06-03 20:43:58 +02:00
Anatol Belski 2cdcf3e877 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #67329 fileinfo: NULL pointer deference flaw by processing certain CDF files
2014-06-03 11:38:19 +02:00
Anatol Belski f3f22ff5c6 Fixed bug #67329 fileinfo: NULL pointer deference flaw by processing certain CDF files 2014-06-03 11:37:20 +02:00
Remi Collet ec19c906bb Merge branch 'PHP-5.6'
* PHP-5.6:
  (re)add cve number in NEWS, from 5.4.29
2014-06-03 11:28:54 +02:00
Remi Collet 9e16493e72 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  (re)add cve number in NEWS, from 5.4.29
2014-06-03 11:28:43 +02:00
Remi Collet 97b86c3c4a Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  (re)add cve number in NEWS, from 5.4.29
2014-06-03 11:28:21 +02:00
Remi Collet 0817a2c767 (re)add cve number in NEWS, from 5.4.29 2014-06-03 11:28:07 +02:00
Remi Collet 7a00e8890b Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  NEWS
  Fix bug #67326	fileinfo: cdf_read_short_sector insufficient boundary check
2014-06-03 11:10:08 +02:00
Remi Collet 0e25448e6b NEWS 2014-06-03 11:09:52 +02:00
Remi Collet e61f7727d4 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  NEWS
  Fix bug #67326	fileinfo: cdf_read_short_sector insufficient boundary check
2014-06-03 11:09:29 +02:00
Remi Collet f5333418d7 NEWS 2014-06-03 11:09:18 +02:00
Remi Collet 2d59b87527 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Fix bug #67326	fileinfo: cdf_read_short_sector insufficient boundary check
2014-06-03 11:09:04 +02:00
Remi Collet 21986f98db NEWS 2014-06-03 11:08:46 +02:00
Remi Collet 4fcb9a9d1b Fix bug #67326 fileinfo: cdf_read_short_sector insufficient boundary check
Upstream fix https://github.com/file/file/commit/6d209c1c489457397a5763bca4b28e43aac90391.patch
Only revelant part applied
2014-06-03 11:05:00 +02:00
Ferenc Kovacs 3fba1d308c Merge branch 'PHP-5.6'
* PHP-5.6:
  add NEWS block for 5.6.0RC1
2014-06-03 10:28:23 +02:00
Ferenc Kovacs 6538dab85f add NEWS block for 5.6.0RC1 2014-06-03 10:27:42 +02:00
Anatol Belski 4dc952b190 fix macro 2014-06-02 08:45:32 +02:00
Anatol Belski 5cd607d1a7 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Update NEWs
  Update NEWs
  Fixed bug #67359 (Segfault in recursiveDirectoryIterator)
  Check for zero-length keys in spl_array_skip_protected and don't skip them.
  added CVEs in NEWS
  updated libmagic.patch for 5.6+
  updated libmagic.patch for 5.4+
  update NEWS
  Fix bug #67249: printf out-of-bounds read
  5.5.13 release date

Conflicts:
	ext/standard/formatted_print.c
2014-06-02 08:42:24 +02:00
Xinchen Hui d196ac6a48 Merge branch 'PHP-5.6' 2014-06-01 19:42:53 +08:00
Xinchen Hui f41ab36e5c Update NEWs 2014-06-01 19:42:39 +08:00
Xinchen Hui c4e7c7d50e Merge branch 'PHP-5.5' into PHP-5.6 2014-06-01 19:42:20 +08:00
Xinchen Hui 0218e4eb19 Update NEWs 2014-06-01 19:42:01 +08:00
Xinchen Hui 9bb5867fad Merge branch 'PHP-5.4' into PHP-5.5 2014-06-01 19:41:35 +08:00
Xinchen Hui 38be99b739 Fixed bug #67359 (Segfault in recursiveDirectoryIterator) 2014-06-01 19:41:01 +08:00
Adam Harvey f4a235c541 Merge branch 'PHP-5.6'
* PHP-5.6:
  Check for zero-length keys in spl_array_skip_protected and don't skip them.
  added CVEs in NEWS
2014-05-29 17:57:54 +00:00
Adam Harvey b8042acdde Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Check for zero-length keys in spl_array_skip_protected and don't skip them.
  added CVEs in NEWS
2014-05-29 17:56:32 +00:00
Adam Harvey 43e3a83d51 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Check for zero-length keys in spl_array_skip_protected and don't skip them.
2014-05-29 17:53:28 +00:00
Adam Harvey b5d9983ff4 Check for zero-length keys in spl_array_skip_protected and don't skip them.
Fixes bug #67360 (Missing element after ArrayObject::getIterator).
2014-05-29 17:49:32 +00:00
Julien Pauli 4ef561c7ba added CVEs in NEWS 2014-05-28 10:59:57 +02:00
Anatol Belski 412feff4be Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libmagic.patch for 5.6+
  updated libmagic.patch for 5.4+
2014-05-27 22:40:17 +02:00
Anatol Belski fb991bd7fd updated libmagic.patch for 5.6+ 2014-05-27 22:39:54 +02:00
Anatol Belski e844055761 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated libmagic.patch for 5.4+
2014-05-27 22:38:30 +02:00
Anatol Belski 546797f329 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated libmagic.patch for 5.4+

Conflicts:
	ext/fileinfo/libmagic.patch
2014-05-27 22:38:02 +02:00
Anatol Belski d2765e4b8c updated libmagic.patch for 5.4+ 2014-05-27 22:36:12 +02:00
Stanislav Malyshev cca9f376f4 Merge branch 'PHP-5.6'
* PHP-5.6:
  update NEWS
  Fix bug #67249: printf out-of-bounds read
  5.5.13 release date
2014-05-27 12:12:22 -07:00
Stanislav Malyshev 13a3826687 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update NEWS
  Fix bug #67249: printf out-of-bounds read
  5.5.13 release date
2014-05-27 12:11:59 -07:00
Stanislav Malyshev a2f8c9c1ae Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  update NEWS
  Fix bug #67249: printf out-of-bounds read
2014-05-27 12:10:41 -07:00
Stanislav Malyshev 76b06780d5 update NEWS 2014-05-27 11:28:53 -07:00
Stanislav Malyshev 091b7642c2 Fix bug #67249: printf out-of-bounds read 2014-05-27 11:28:22 -07:00
Julien Pauli 3b8bdb7164 5.5.13 release date 2014-05-27 14:21:16 +02:00
Anatol Belski 112bf7331f Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  fix my last commit with some locales
2014-05-27 12:25:41 +02:00
Anatol Belski fa59cc202f Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  fix zpp
  fix zpp
  Escape non-printable characters in the junit XML output
  Fixed broken XML junit output due to escaping of CDATA sections
  Fix #50444: PDO-ODBC changes for 64-bit
  update NEWS
  backport this piece from 5.6, related to the #66307 fix
  Fixed bug #66307 Fileinfo crashes with powerpoint files
  Fix bug #67328 (fileinfo: numerous file_printf calls resulting in performance degradation)
  Fix bug #67327: fileinfo: CDF infinite loop in nelements DoS
  fix my last commit with some locales
  fix my last commit with some locales
  Update NEWs and add a test
2014-05-27 12:25:31 +02:00
Anatol Belski 4796204a4c Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Escape non-printable characters in the junit XML output
  Fixed broken XML junit output due to escaping of CDATA sections
  Fix #50444: PDO-ODBC changes for 64-bit
  update NEWS
  backport this piece from 5.6, related to the #66307 fix
  Fixed bug #66307 Fileinfo crashes with powerpoint files
  Fix bug #67328 (fileinfo: numerous file_printf calls resulting in performance degradation)
  Fix bug #67327: fileinfo: CDF infinite loop in nelements DoS
  fix my last commit with some locales
  fix my last commit with some locales
  Update NEWs and add a test
2014-05-27 12:24:23 +02:00
Anatol Belski 9c20452ee0 fix zpp 2014-05-27 12:23:48 +02:00
Anatol Belski 638466a641 fix zpp 2014-05-27 12:22:15 +02:00
Matteo Beccati b85990fd8f Merge branch 'PHP-5.6'
* PHP-5.6:
  Escape non-printable characters in the junit XML output
2014-05-27 12:04:32 +02:00
Matteo Beccati eb2bd85004 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Escape non-printable characters in the junit XML output
2014-05-27 12:04:26 +02:00
Matteo Beccati abfd977410 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Escape non-printable characters in the junit XML output
2014-05-27 12:04:17 +02:00
Matteo Beccati 92d54f81d6 Escape non-printable characters in the junit XML output
XML doesn't allow most of the characters < 0x20 and binary output
breaks XML parsers. Such characters are not allowed as entities
either, so the generated entities are escaped in order to be printed
as text.
2014-05-27 12:03:38 +02:00
Matteo Beccati 40fd85821b Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed broken XML junit output due to escaping of CDATA sections
2014-05-27 11:07:52 +02:00
Matteo Beccati cc3a1af62a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed broken XML junit output due to escaping of CDATA sections
2014-05-27 11:07:32 +02:00
Matteo Beccati 56bcb22afb Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed broken XML junit output due to escaping of CDATA sections
2014-05-27 11:07:19 +02:00
Matteo Beccati 1696166466 Fixed broken XML junit output due to escaping of CDATA sections
I've removed CDATA and used htmlspecialchars as the output might not be UTF-8 safe, as pointed out by ircmaxell in 26b37f1792
2014-05-27 11:04:48 +02:00
Stanislav Malyshev 1887f9cce4 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix #50444: PDO-ODBC changes for 64-bit
2014-05-26 22:18:32 -07:00
Stanislav Malyshev 49662be30b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix #50444: PDO-ODBC changes for 64-bit
2014-05-26 22:18:08 -07:00
Andrew Kehrig 91e7b3b84f Fix #50444: PDO-ODBC changes for 64-bit
This bug is also referenced in
[#61777](https://bugs.php.net/bug.php?id=61777) and is still present in
the latest stable release of the 5.5 branch. I see two tickets exist for
this problem already, and I'm just submitting these changes via github
as a reminder that this is a serious problem for anyone using PDO_ODBC
on the x64 builds.
2014-05-26 22:17:29 -07:00
Stanislav Malyshev 43faeaa621 Merge branch 'PHP-5.6'
* PHP-5.6:
  update NEWS
  backport this piece from 5.6, related to the #66307 fix
  Fixed bug #66307 Fileinfo crashes with powerpoint files
  Fix bug #67328 (fileinfo: numerous file_printf calls resulting in performance degradation)
  Fix bug #67327: fileinfo: CDF infinite loop in nelements DoS
  fix my last commit with some locales
  fix my last commit with some locales
2014-05-26 18:11:38 -07:00
Stanislav Malyshev 4c64bb27b1 update NEWS 2014-05-26 18:11:07 -07:00
Stanislav Malyshev bc87ba8ee6 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  backport this piece from 5.6, related to the #66307 fix
  Fixed bug #66307 Fileinfo crashes with powerpoint files
  Fix bug #67328 (fileinfo: numerous file_printf calls resulting in performance degradation)
  Fix bug #67327: fileinfo: CDF infinite loop in nelements DoS
  fix my last commit with some locales
2014-05-26 18:06:58 -07:00
Stanislav Malyshev 076c25bfec Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  backport this piece from 5.6, related to the #66307 fix
  Fixed bug #66307 Fileinfo crashes with powerpoint files
2014-05-26 18:06:15 -07:00
Anatol Belski d184f07b3c backport this piece from 5.6, related to the #66307 fix 2014-05-26 18:05:13 -07:00
Anatol Belski 15ee33eb21 Fixed bug #66307 Fileinfo crashes with powerpoint files 2014-05-26 18:04:27 -07:00
Stanislav Malyshev 5ce11c2698 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #67328 (fileinfo: numerous file_printf calls resulting in performance degradation)
  Fix bug #67327: fileinfo: CDF infinite loop in nelements DoS
2014-05-26 18:03:01 -07:00
Stanislav Malyshev 4005f06df6 Fix bug #67328 (fileinfo: numerous file_printf calls resulting in performance degradation)
Upstream patch: https://github.com/file/file/commit/b8acc83781d5a24cc5101e525d15efe0482c280d
2014-05-26 18:01:17 -07:00
Stanislav Malyshev 57225f09ed Fix bug #67327: fileinfo: CDF infinite loop in nelements DoS
Upstream fix: https://github.com/file/file/commit/f97486ef5dc3e8735440edc4fc8808c63e1a3ef0
2014-05-26 17:45:14 -07:00
Nuno Lopes 21f579b338 fix my last commit with some locales 2014-05-26 15:09:10 -04:00
Nuno Lopes bdae3d2548 fix my last commit with some locales 2014-05-26 15:08:28 -04:00
Nuno Lopes f105e1589d fix my last commit with some locales 2014-05-26 15:08:00 -04:00
Xinchen Hui cdacf4c90a Merge branch 'PHP-5.6' 2014-05-26 15:40:57 +08:00
Xinchen Hui b0b0be176f Merge branch 'PHP-5.5' into PHP-5.6 2014-05-26 15:40:50 +08:00
Xinchen Hui 70699d7f68 Update NEWs and add a test 2014-05-26 15:40:26 +08:00
Anatol Belski 567f5e5247 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  Added tests for ZipArchive::addGlob() and ZipArchive::addPattern()
  gcov: tentative fix for broken coverage data after fix for opcache coverage slightly hackish, but works. The idea is that we want to give priority to .gcda files in .libs dirs vs the files in the upper level dir
  fix test
2014-05-26 08:51:32 +02:00
Anatol Belski a4a5e34ed9 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport: (29 commits)
  Fixed issue #183 (TMP_VAR is not only used once)
  Fix broken Junit output with --disable-cgi
  Added folder mark
  Further test fixes for the fdb2709 breakage.
  Fix broken test caused by fdb2709.
  Fix run-tests.php with Valgrind >= 3.10.0.
  Add microseconds to the serialised form of DateTime objects.
  Improved test for bug #62479
  fix typo in ODBC code
  Support for __debugInfo (Joe Watkins)
  Optimize ZEND_POW (Rouven Weßling)
  gcov: tentative fix for broken coverage data after fix for opcache coverage slightly hackish, but works. The idea is that we want to give priority to .gcda files in .libs dirs vs the files in the upper level dir
  gcov: tentative fix for broken coverage data after fix for opcache coverage slightly hackish, but works. The idea is that we want to give priority to .gcda files in .libs dirs vs the files in the upper level dir
  Prevent recursion in ZF2 Parameters class
  5.5.14 now
  adding NEWS block for beta4
  5.4.30 next
  enable email notifications
  update NEWS
  update NEWS
  ...

Conflicts:
	ext/opcache/ZendAccelerator.h
	ext/spl/spl_array.c
2014-05-26 08:39:06 +02:00
Anatol Belski 317e8058e0 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Fixed issue #183 (TMP_VAR is not only used once)
  Fix broken Junit output with --disable-cgi
  Added folder mark
2014-05-26 08:31:21 +02:00
Dmitry Stogov 347b430a03 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed issue #183 (TMP_VAR is not only used once)
2014-05-26 10:12:36 +04:00
Dmitry Stogov 24a86dbb6f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed issue #183 (TMP_VAR is not only used once)
2014-05-26 10:12:10 +04:00
Dmitry Stogov 19be8b676c Fixed issue #183 (TMP_VAR is not only used once) 2014-05-26 10:10:59 +04:00
Matteo Beccati 2c8ce5ba17 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix broken Junit output with --disable-cgi
2014-05-25 00:08:56 +02:00
Matteo Beccati 370256ad4b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix broken Junit output with --disable-cgi
2014-05-25 00:08:41 +02:00
Matteo Beccati 980c63651c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix broken Junit output with --disable-cgi
2014-05-25 00:08:32 +02:00
Matteo Beccati f9357b44f3 Fix broken Junit output with --disable-cgi 2014-05-25 00:07:52 +02:00
Xinchen Hui dc8a53d4ba Merge branch 'PHP-5.6' 2014-05-24 21:11:26 +08:00
Xinchen Hui 666197b8cc Added folder mark 2014-05-24 21:11:13 +08:00
Anatol Belski 1d28acb437 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Further test fixes for the fdb2709 breakage.
  Fix broken test caused by fdb2709.
  Fix run-tests.php with Valgrind >= 3.10.0.
  Add microseconds to the serialised form of DateTime objects.
  Improved test for bug #62479
2014-05-24 13:58:35 +02:00
Xinchen Hui 9b730bf4bf Merge branch 'new-tests' of https://github.com/SammyK/php-src 2014-05-24 15:43:37 +08:00
Matteo Beccati 4a773c0e58 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  Further test fixes for the fdb2709 breakage.
  Fix broken test caused by fdb2709.
  Fix run-tests.php with Valgrind >= 3.10.0.
  Add microseconds to the serialised form of DateTime objects.
2014-05-24 08:06:53 +02:00
Adam Harvey bbdbb6f7eb Merge branch 'PHP-5.6'
* PHP-5.6:
  Further test fixes for the fdb2709 breakage.
  Fix broken test caused by fdb2709.
2014-05-23 15:23:55 +00:00
Adam Harvey 80a2716b56 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Further test fixes for the fdb2709 breakage.
  Fix broken test caused by fdb2709.
2014-05-23 15:23:15 +00:00
Adam Harvey 2260fca3dd Further test fixes for the fdb2709 breakage. 2014-05-23 15:22:26 +00:00
Adam Harvey 6d9cc92238 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix broken test caused by fdb2709.

Conflicts:
	ext/intl/tests/dateformat_format.phpt
2014-05-23 15:14:00 +00:00
Adam Harvey 319611ffbd Fix broken test caused by fdb2709. 2014-05-23 15:07:19 +00:00
Sammy Kaye Powers e2bbe95310 Added tests for ZipArchive::addGlob() and ZipArchive::addPattern() 2014-05-23 05:51:13 +00:00
Adam Harvey 93a98202d0 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix run-tests.php with Valgrind >= 3.10.0.
2014-05-22 22:43:39 +00:00
Adam Harvey 34900eb289 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix run-tests.php with Valgrind >= 3.10.0.
2014-05-22 22:37:57 +00:00
Adam Harvey e5e6ba093f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix run-tests.php with Valgrind >= 3.10.0.

Conflicts:
	run-tests.php
2014-05-22 22:37:47 +00:00
Adam Harvey 5d1bfd6fbf Fix run-tests.php with Valgrind >= 3.10.0.
The version test that we had in run-tests.php assumed that the major and minor
version numbers were always single digits. This removes that assumption and
also uses version_compare() for the comparison instead of naively converting it
to an integer.
2014-05-22 22:37:08 +00:00
Adam Harvey 16a44b993f Merge branch 'PHP-5.6'
* PHP-5.6:
  Add microseconds to the serialised form of DateTime objects.
2014-05-21 15:06:30 -05:00
Adam Harvey 549331a925 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Add microseconds to the serialised form of DateTime objects.
2014-05-21 15:05:08 -05:00
Adam Harvey d39377924c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Add microseconds to the serialised form of DateTime objects.
2014-05-21 15:03:24 -05:00
Adam Harvey fdb2709dd2 Add microseconds to the serialised form of DateTime objects.
Fixes bug #67308 (Serialize of DateTime truncates fractions of second).
2014-05-21 14:55:52 -05:00
Matteo Beccati bb7638adbb Merge branch 'PHP-5.6'
* PHP-5.6:
  Improved test for bug #62479
2014-05-21 18:59:31 +02:00
Matteo Beccati b41ad9bfcb Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Improved test for bug #62479
2014-05-21 18:59:14 +02:00
Matteo Beccati 69d4a0b8d5 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Improved test for bug #62479
2014-05-21 18:59:02 +02:00
Matteo Beccati 00a22d4d06 Improved test for bug #62479 2014-05-21 18:58:14 +02:00
Anatol Belski ce8f7cb794 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  fix typo in ODBC code
  Support for __debugInfo (Joe Watkins)
  Optimize ZEND_POW (Rouven Weßling)
  gcov: tentative fix for broken coverage data after fix for opcache coverage slightly hackish, but works. The idea is that we want to give priority to .gcda files in .libs dirs vs the files in the upper level dir
  gcov: tentative fix for broken coverage data after fix for opcache coverage slightly hackish, but works. The idea is that we want to give priority to .gcda files in .libs dirs vs the files in the upper level dir
  Prevent recursion in ZF2 Parameters class
  5.5.14 now
  Fix bug #67060: use default mode of 660
2014-05-19 09:44:18 +02:00
Stanislav Malyshev 134d38118c Merge branch 'PHP-5.6'
* PHP-5.6:
  fix typo in ODBC code
  gcov: tentative fix for broken coverage data after fix for opcache coverage slightly hackish, but works. The idea is that we want to give priority to .gcda files in .libs dirs vs the files in the upper level dir
  5.5.14 now
  Fix bug #67060: use default mode of 660
2014-05-18 23:47:14 -07:00
Stanislav Malyshev 7df1e42d8a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix typo in ODBC code
  gcov: tentative fix for broken coverage data after fix for opcache coverage slightly hackish, but works. The idea is that we want to give priority to .gcda files in .libs dirs vs the files in the upper level dir
  5.5.14 now
  Fix bug #67060: use default mode of 660

Conflicts:
	configure.in
	main/php_version.h
2014-05-18 23:46:30 -07:00
Stanislav Malyshev fc076ef605 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix typo in ODBC code
  Fix bug #67060: use default mode of 660
2014-05-18 23:44:33 -07:00
Stanislav Malyshev fa6aaf8c03 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  fix typo in ODBC code
  Fix bug #67060: use default mode of 660

Conflicts:
	ext/odbc/php_odbc.c
2014-05-18 23:43:59 -07:00
Stanislav Malyshev adc070ca99 fix typo in ODBC code 2014-05-18 23:42:30 -07:00
Dmitry Stogov 91c475fc00 Merge branch 'PHP-5.6'
* PHP-5.6:
  Support for __debugInfo (Joe Watkins)
2014-05-18 20:56:34 +04:00
Dmitry Stogov 1d1fdfb51d Support for __debugInfo (Joe Watkins) 2014-05-18 20:55:40 +04:00
Dmitry Stogov 0019b512ff Merge branch 'PHP-5.6'
* PHP-5.6:
  Optimize ZEND_POW (Rouven Weßling)
  gcov: tentative fix for broken coverage data after fix for opcache coverage slightly hackish, but works. The idea is that we want to give priority to .gcda files in .libs dirs vs the files in the upper level dir

Conflicts:
	ext/opcache/ZendAccelerator.h
2014-05-18 20:51:37 +04:00
Dmitry Stogov 3fff53fc57 Optimize ZEND_POW (Rouven Weßling) 2014-05-18 20:48:16 +04:00
Nuno Lopes 5164b81324 gcov: tentative fix for broken coverage data after fix for opcache coverage
slightly hackish, but works. The idea is that we want to give priority to .gcda files in .libs dirs vs the files in the upper level dir
2014-05-18 11:24:22 -04:00
Nuno Lopes 1759905a23 gcov: tentative fix for broken coverage data after fix for opcache coverage
slightly hackish, but works. The idea is that we want to give priority to .gcda files in .libs dirs vs the files in the upper level dir
2014-05-18 11:23:21 -04:00
Nuno Lopes 4f8a84b2e7 gcov: tentative fix for broken coverage data after fix for opcache coverage
slightly hackish, but works. The idea is that we want to give priority to .gcda files in .libs dirs vs the files in the upper level dir
2014-05-18 11:21:05 -04:00
Tjerk Meesters 6aac353acc Merge branch 'PHP-5.6'
Conflicts:
	ext/spl/spl_array.c
2014-05-18 22:51:36 +08:00
Bob Weinand 17039ed362 PHP 5.4/5.5 compability in phpdbg_watch.c 2014-05-18 11:38:55 +02:00
Martin Jansen 068bf645e1 Remove usage of pointless COOKIE_SET_COOKIE constant. 2014-05-18 10:45:31 +02:00
Tjerk Meesters d4295eb26a Prevent recursion in ZF2 Parameters class 2014-05-16 16:49:47 +08:00
zborboa-google ec7eccaaae Test 2014-05-14 13:11:51 -07:00
Anatol Belski 4fb177b916 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  adding NEWS block for beta4
2014-05-14 13:02:08 +02:00
Julien Pauli b4c92f31ad 5.5.14 now 2014-05-14 10:24:32 +02:00
Ferenc Kovacs 886fafc34f Merge branch 'PHP-5.6'
* PHP-5.6:
  adding NEWS block for beta4
2014-05-14 09:14:57 +02:00
Ferenc Kovacs 7b9c1b6576 adding NEWS block for beta4 2014-05-14 09:14:04 +02:00
Anatol Belski 1ddecc9d12 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6: (32 commits)
  5.4.30 next
  enable email notifications
  update NEWS
  update NEWS
  update NEWS
  - Updated to version 2014.3 (2014c)
  fix test - output can be chunked
  fix test
  Fixed test for commit 997be125eb
  Add bug fix to NEWS
  Update UPGRADING according to bug fix
  improve CURL tests to allow testing without separate server
  Fixed bug #67199	mb_regex_encoding mishmash
  fix bug #67253: timelib_meridian_with_check out-of-bounds read
  Fix bug #67252: convert_uudecode out-of-bounds read
  Fix bug #67251 - date_parse_from_format out-of-bounds read
  Fix bug #67250 (iptcparse out-of-bounds read)
  Fix bug #67248 (imageaffinematrixget missing check of parameters)
  Fix bug #67247	spl_fixedarray_resize integer overflow
  fix news
  ...

Conflicts:
	ext/gd/gd.c
	ext/standard/iptc.c
2014-05-14 08:21:12 +02:00
Stanislav Malyshev 5b9f7ee147 Merge branch 'PHP-5.6'
* PHP-5.6:
  5.4.30 next
2014-05-13 22:22:13 -07:00
Stanislav Malyshev 5a169310f0 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  5.4.30 next
2014-05-13 22:22:03 -07:00
Stanislav Malyshev b17efe82ff Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  5.4.30 next

Conflicts:
	configure.in
	main/php_version.h
2014-05-13 22:21:50 -07:00
Stanislav Malyshev b1c944dfd2 5.4.30 next 2014-05-13 22:20:15 -07:00
Stanislav Malyshev 4fd19c0397 Merge branch 'PHP-5.6'
* PHP-5.6:
  enable email notifications
2014-05-13 17:15:09 -07:00
Stanislav Malyshev 3a90a8b888 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  enable email notifications
2014-05-13 17:14:56 -07:00
Stanislav Malyshev 6b6a58c904 enable email notifications
[skip ci]
2014-05-13 17:14:06 -07:00
Stanislav Malyshev fedb908b58 Merge branch 'PHP-5.6'
* PHP-5.6:
  update NEWS
  update NEWS
  update NEWS
2014-05-13 17:09:30 -07:00
Stanislav Malyshev de20e2224b update NEWS 2014-05-13 17:09:16 -07:00
Stanislav Malyshev 7a14a460cf Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update NEWS
  update NEWS
2014-05-13 17:08:22 -07:00
Stanislav Malyshev de95dc7297 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  update NEWS
2014-05-13 17:08:06 -07:00
Stanislav Malyshev 09ea489aef update NEWS 2014-05-13 17:07:51 -07:00
Stanislav Malyshev ffd74a0a29 update NEWS 2014-05-13 17:07:35 -07:00
Stanislav Malyshev 3c107d6434 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix bug #67253: timelib_meridian_with_check out-of-bounds read
  Fix bug #67252: convert_uudecode out-of-bounds read
  Fix bug #67251 - date_parse_from_format out-of-bounds read
  Fix bug #67250 (iptcparse out-of-bounds read)
2014-05-13 17:04:44 -07:00
Stanislav Malyshev 292b2fd3b3 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix bug #67253: timelib_meridian_with_check out-of-bounds read
  Fix bug #67252: convert_uudecode out-of-bounds read
  Fix bug #67251 - date_parse_from_format out-of-bounds read
  Fix bug #67250 (iptcparse out-of-bounds read)
2014-05-13 17:03:50 -07:00
Stanislav Malyshev a03a1ab88c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix bug #67253: timelib_meridian_with_check out-of-bounds read
  Fix bug #67252: convert_uudecode out-of-bounds read
  Fix bug #67251 - date_parse_from_format out-of-bounds read
  Fix bug #67250 (iptcparse out-of-bounds read)

Conflicts:
	ext/date/lib/parse_date.c
	ext/date/lib/parse_date.re
2014-05-13 17:02:09 -07:00
Stanislav Malyshev dc92e81922 Merge branch 'bug67251' into PHP-5.4
* bug67251:
  Fix bug #67251 - date_parse_from_format out-of-bounds read

Conflicts:
	ext/date/lib/parse_date.c
2014-05-13 16:52:45 -07:00
Stanislav Malyshev 0094fd0969 Merge branch 'bug67252' into PHP-5.4
* bug67252:
  fix bug #67253: timelib_meridian_with_check out-of-bounds read
  Fix bug #67252: convert_uudecode out-of-bounds read
2014-05-13 16:47:27 -07:00
Stanislav Malyshev 9103c9eb4f Merge branch 'bug67250' into PHP-5.4
* bug67250:
  Fix bug #67250 (iptcparse out-of-bounds read)
2014-05-13 16:43:10 -07:00
Paul Oehler f148026017 Added support for parsing ssl certificates using GeneralizedTime format.
fix bug #65698
fix bug #66636
2014-05-13 18:32:15 -04:00
Derick Rethans 7ee66c51e6 Merge branch 'PHP-5.6' 2014-05-13 16:37:07 +01:00
Derick Rethans db42f83c2e Merge branch 'PHP-5.5' into PHP-5.6 2014-05-13 16:37:05 +01:00
Derick Rethans e3a48b3a43 Merge branch 'PHP-5.4' into PHP-5.5 2014-05-13 16:36:59 +01:00
Derick Rethans 3e276d6728 - Updated to version 2014.3 (2014c) 2014-05-13 16:36:58 +01:00
Stanislav Malyshev c7abe84d94 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix test - output can be chunked
  fix test

Conflicts:
	ext/curl/tests/curl_basic_006.phpt
2014-05-12 10:58:18 -07:00
Stanislav Malyshev 2152e2f127 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix test - output can be chunked

Conflicts:
	ext/curl/tests/curl_basic_006.phpt
2014-05-12 10:56:03 -07:00
Stanislav Malyshev e3ca87265d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix test - output can be chunked
2014-05-12 10:54:34 -07:00
Stanislav Malyshev 6ef8e0f088 fix test - output can be chunked 2014-05-12 10:54:16 -07:00
Jefersson Nathan dd2005535c Fix align indentation 2014-05-12 13:37:47 -03:00
Stanislav Malyshev db35409136 fix test 2014-05-12 01:40:39 -07:00
Stanislav Malyshev 9c27063a65 fix test 2014-05-12 01:27:18 -07:00
Anatol Belski 63f57b5901 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master: (29 commits)
  Fixed test for commit 997be125eb
  Add bug fix to NEWS
  Update UPGRADING according to bug fix
  fix test
  improve CURL tests to allow testing without separate server
  improve CURL tests to allow testing without separate server
  Fixed bug #67199	mb_regex_encoding mishmash
  Fix bug #67248 (imageaffinematrixget missing check of parameters)
  Fix bug #67247	spl_fixedarray_resize integer overflow
  fix news
  add tests stuff to README
  Updated NEWS
  Fix Linux specific fail in error traces (cherry-picked and fix for bug #67245) Linux apparently does not like memcpy in overlapping regions...
  - Fixed off-by-one in phar_build (patch by crrodriguez at opensuse dot org)
  - Move checking
  - Fixed missing NULL check in SimpleXMLElement::xpath()
  - Fixed missing NULL check
  updated NEWS
  Bug #67238 Ungreedy and min/max quantifier bug in PCRE 8.34 upstream
  oops, 5.4 and 5.5 use malloc in TSRM
  ...

Conflicts:
	ext/gd/gd.c
2014-05-12 09:59:02 +02:00
Anatol Belski 1c5b635281 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  Allow crypto_method context value in stream_socket_enable_crypto()
2014-05-12 09:56:35 +02:00
Anatol Belski a582692720 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Allow crypto_method context value in stream_socket_enable_crypto()

Conflicts:
	ext/standard/streamsfuncs.c
2014-05-12 08:55:10 +02:00
Yasuo Ohgaki 072bbe95ea Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed test for commit 997be125eb
2014-05-12 15:38:40 +09:00
Yasuo Ohgaki 00cacc6048 Fixed test for commit 997be125eb 2014-05-12 15:35:16 +09:00
Yasuo Ohgaki eb1278cb5d Add bug fix to NEWS 2014-05-12 15:35:16 +09:00
Yasuo Ohgaki 2f9766fd02 Update UPGRADING according to bug fix 2014-05-12 15:35:16 +09:00
Stanislav Malyshev 8a22540a95 Fix bug #67060: use default mode of 660 2014-05-11 23:32:35 -07:00
Stanislav Malyshev 97b203c93f fix test 2014-05-11 23:20:33 -07:00
Stanislav Malyshev 41b655d9cd improve CURL tests to allow testing without separate server 2014-05-11 23:04:09 -07:00
Stanislav Malyshev 89798f57d4 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  improve CURL tests to allow testing without separate server
2014-05-11 23:03:21 -07:00
Stanislav Malyshev c507c9f01b improve CURL tests to allow testing without separate server 2014-05-11 22:43:08 -07:00
Yasuo Ohgaki a33a817f0e Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #67199	mb_regex_encoding mishmash
2014-05-12 13:34:43 +09:00
Yasuo Ohgaki 997be125eb Fixed bug #67199 mb_regex_encoding mishmash 2014-05-12 13:33:53 +09:00
Stanislav Malyshev 466b8aa444 fix bug #67253: timelib_meridian_with_check out-of-bounds read 2014-05-11 21:09:11 -07:00
Stanislav Malyshev 1e2818b143 Fix bug #67252: convert_uudecode out-of-bounds read 2014-05-11 20:29:27 -07:00
Stanislav Malyshev 0a80849250 Fix bug #67251 - date_parse_from_format out-of-bounds read 2014-05-11 19:34:21 -07:00
Stanislav Malyshev 3e9cb6a4a5 Fix bug #67250 (iptcparse out-of-bounds read) 2014-05-11 19:09:19 -07:00
Stanislav Malyshev eaa39c9388 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #67248 (imageaffinematrixget missing check of parameters)
  Fix bug #67247	spl_fixedarray_resize integer overflow
  fix news
  add tests stuff to README
  Updated NEWS
  Fix Linux specific fail in error traces (cherry-picked and fix for bug #67245) Linux apparently does not like memcpy in overlapping regions...
2014-05-11 18:57:39 -07:00
Stanislav Malyshev f2fdeba19d Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #67248 (imageaffinematrixget missing check of parameters)
  Fix bug #67247	spl_fixedarray_resize integer overflow
  fix news
  add tests stuff to README
  Updated NEWS
  Fix Linux specific fail in error traces (cherry-picked and fix for bug #67245) Linux apparently does not like memcpy in overlapping regions...
2014-05-11 18:56:32 -07:00
Stanislav Malyshev af5cc61cf3 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #67247	spl_fixedarray_resize integer overflow
  fix news
2014-05-11 18:16:19 -07:00
Stanislav Malyshev 291b45afb5 Fix bug #67248 (imageaffinematrixget missing check of parameters) 2014-05-11 18:14:57 -07:00
Stanislav Malyshev 2b475eebbe Fix bug #67247 spl_fixedarray_resize integer overflow 2014-05-11 17:54:27 -07:00
Stanislav Malyshev 14dd6c2d54 fix news 2014-05-11 17:43:28 -07:00
Stanislav Malyshev cdd1c1122e add tests stuff to README 2014-05-11 16:04:28 -07:00
Bob Weinand 5bc4eb714a Merge branch 'PHP-5.4' into PHP-5.5 2014-05-11 15:15:27 +02:00
Bob Weinand 62b2eb666d Updated NEWS 2014-05-11 15:13:40 +02:00
Bob Weinand 5bf6a093ad Fix Linux specific fail in error traces (cherry-picked and fix for bug #67245)
Linux apparently does not like memcpy in overlapping regions...
2014-05-11 15:11:03 +02:00
Felipe Pena 2ed2283932 Merge branch 'PHP-5.6'
* PHP-5.6:
  - Fixed off-by-one in phar_build (patch by crrodriguez at opensuse dot org)
2014-05-11 09:46:47 -03:00
Felipe Pena 9d8a00337d Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  - Fixed off-by-one in phar_build (patch by crrodriguez at opensuse dot org)
2014-05-11 09:46:38 -03:00
Felipe Pena b99862e7ae Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed off-by-one in phar_build (patch by crrodriguez at opensuse dot org)
2014-05-11 09:46:25 -03:00
Felipe Pena fb3b8de98d - Fixed off-by-one in phar_build (patch by crrodriguez at opensuse dot org) 2014-05-11 09:45:17 -03:00
Felipe Pena bd88e8dfd2 Merge branch 'PHP-5.6'
* PHP-5.6:
  - Move checking
2014-05-10 11:55:51 -03:00
Felipe Pena ece7421864 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  - Move checking
2014-05-10 11:55:48 -03:00
Felipe Pena 16b293de50 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Move checking
2014-05-10 11:55:45 -03:00
Felipe Pena c575ab0c88 - Move checking 2014-05-10 11:55:42 -03:00
Felipe Pena b09529ec1a Merge branch 'PHP-5.6'
* PHP-5.6:
  - Fixed missing NULL check in SimpleXMLElement::xpath()
2014-05-10 11:53:59 -03:00
Felipe Pena c54b9f7b72 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  - Fixed missing NULL check in SimpleXMLElement::xpath()
2014-05-10 11:53:54 -03:00
Felipe Pena 8bea8cf9cd Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed missing NULL check in SimpleXMLElement::xpath()
2014-05-10 11:53:45 -03:00
Felipe Pena 345f6d90d5 - Fixed missing NULL check in SimpleXMLElement::xpath() 2014-05-10 11:53:40 -03:00
Felipe Pena 4308cf30ba Merge branch 'PHP-5.6'
* PHP-5.6:
  - Fixed missing NULL check
2014-05-10 11:40:04 -03:00
Felipe Pena edbd6c7cc0 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  - Fixed missing NULL check
2014-05-10 11:39:47 -03:00
Felipe Pena 2379ec474e Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed missing NULL check
2014-05-10 11:39:28 -03:00
Felipe Pena 5bd443a452 - Fixed missing NULL check 2014-05-10 11:39:08 -03:00
Sobak 9db82df076 Removed another cvsclean file 2014-05-10 13:30:54 +02:00
Sobak 21642861b2 Removed cvsclean and svnclean tools 2014-05-10 13:16:48 +02:00
Anatol Belski 7ac7069e99 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  Bug #67238 Ungreedy and min/max quantifier bug in PCRE 8.34 upstream
2014-05-09 22:18:07 +02:00
Anatol Belski 398ff21923 updated NEWS 2014-05-09 22:17:22 +02:00
Anatol Belski c925c7a5b6 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Bug #67238 Ungreedy and min/max quantifier bug in PCRE 8.34 upstream
2014-05-09 22:16:42 +02:00
Anatol Belski c62f32c3cc Bug #67238 Ungreedy and min/max quantifier bug in PCRE 8.34 upstream
upstream patch applied
2014-05-09 22:15:54 +02:00
Stanislav Malyshev 281bde7701 Merge branch 'PHP-5.6'
* PHP-5.6:
  oops, 5.4 and 5.5 use malloc in TSRM
2014-05-08 02:04:50 -07:00
Stanislav Malyshev a3f09eb323 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  oops, 5.4 and 5.5 use malloc in TSRM
2014-05-08 02:04:11 -07:00
Stanislav Malyshev cf2b9955d4 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  oops, 5.4 and 5.5 use malloc in TSRM
2014-05-08 02:00:23 -07:00
Stanislav Malyshev 4392339c3e oops, 5.4 and 5.5 use malloc in TSRM 2014-05-08 01:59:39 -07:00
Stanislav Malyshev 607b0f99bf Merge branch 'PHP-5.6'
* PHP-5.6:
  make release tags not fail Travis CI
2014-05-08 01:12:06 -07:00
Stanislav Malyshev aa1a25e303 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  make release tags not fail Travis CI
2014-05-08 01:11:44 -07:00
Stanislav Malyshev e9be93b333 make release tags not fail Travis CI 2014-05-08 01:11:29 -07:00
Stanislav Malyshev cfe9596260 make release tags not fail Travis CI 2014-05-08 01:08:55 -07:00
Stanislav Malyshev 79bdc75cb3 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix memory leak in TSRM
2014-05-08 01:01:34 -07:00
Stanislav Malyshev 0c709cc2dc Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix memory leak in TSRM
2014-05-08 01:01:15 -07:00
Stanislav Malyshev a444900c8d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix memory leak in TSRM
2014-05-08 01:00:51 -07:00
Stanislav Malyshev 0cc18fdfba Fix memory leak in TSRM 2014-05-08 01:00:34 -07:00
Stanislav Malyshev da4cd8edb0 Fix memory leak in TSRM 2014-05-07 13:28:03 -07:00
Daniel Lowrey b637946a23 Merge branch 'PHP-5.6'
* PHP-5.6:
  Allow crypto_method context value in stream_socket_enable_crypto()
2014-05-07 08:13:31 -06:00
Daniel Lowrey 27f5957e9f Bug #67224: stream_socket_enable_crypto()
- Allow crypto_method context value in stream_socket_enable_crypto()
- As of 5.6.x stream crypto type may be specified in the SSL context,
  making the $crypto_type parameter to stream_socket_enable_crypto()
  optional. This commit checks for a crypto type in the context prior
  to erroring out.
- Update NEWS/UPGRADING
2014-05-07 08:05:29 -06:00
Anatol Belski fe09b5b0b6 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  Fixed test (it requires ext/hash)
  Fixed tests (they might fail from time to time because of session GC)
  NEWS
  XFAIL-- for bug #67198
  remove useless indirection
  fix bug #67198 (php://input regression)
  rename a constant - old name to new name
  test for bug #67198
  Fix author name on the #63228 patch.
2014-05-07 15:01:44 +02:00
Anatol Belski ede2963963 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Fixed test (it requires ext/hash)
  Fixed tests (they might fail from time to time because of session GC)
  NEWS
  XFAIL-- for bug #67198
  remove useless indirection
  fix bug #67198 (php://input regression)
  rename a constant - old name to new name
  test for bug #67198
  Fix author name on the #63228 patch.

Conflicts:
	ext/standard/php_fopen_wrapper.c
2014-05-07 15:00:18 +02:00
Ferenc Kovacs 64162cd3c2 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed test (it requires ext/hash)

Conflicts:
	ext/session/tests/031.phpt
2014-05-07 01:03:31 +02:00
Ferenc Kovacs f63ca453e0 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed test (it requires ext/hash)
2014-05-07 01:00:01 +02:00
Ferenc Kovacs 8e2d396b52 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed test (it requires ext/hash)
2014-05-07 00:55:05 +02:00
Dmitry Stogov 8517001b25 Fixed test (it requires ext/hash) 2014-05-07 00:52:49 +02:00
Ferenc Kovacs 0cd679fb17 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed tests (they might fail from time to time because of session GC)
  Fix author name on the #63228 patch.
2014-05-07 00:39:57 +02:00
Ferenc Kovacs d2f283884f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed tests (they might fail from time to time because of session GC)
  Fix author name on the #63228 patch.
2014-05-07 00:38:57 +02:00
Ferenc Kovacs 579898e338 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed tests (they might fail from time to time because of session GC)
  Fix author name on the #63228 patch.
2014-05-07 00:38:32 +02:00
Dmitry Stogov f880013c4d Fixed tests (they might fail from time to time because of session GC) 2014-05-07 00:37:56 +02:00
Martin Jansen 71ad601dee Fix typo 2014-05-06 22:08:52 +02:00
Martin Jansen c5f9a231d5 Streamlining of cookie handling in ext/session and setcookie
Up until now the session cookie used "HttpOnly" to indicate cookies
only available through HTTP while setcookie() used "httponly".  The
relevant RFC 6265 claims that case does not matter for this token,
but only explicitely mentions "HttpOnly".  Thus this seems like a
logical choice when streamlining the code.

Also the setcookie implementation now uses the same string constants
as the session extension for other tokens like Max-Age or the domain
attribute.

This change poses a slight risk of backwards incompatibility in places
where people deliberately ignore chapter 5.2.5 of RFC 6265 and perform
case-sensitive checks for the HttpOnly attribute.
2014-05-06 22:00:59 +02:00
Martin Jansen c0f4e270a8 This test requires the hash extension. 2014-05-06 21:34:10 +02:00
Michael Wallner 4609f202f0 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
2014-05-06 12:39:34 +02:00
Michael Wallner 78cb0c1dbc NEWS 2014-05-06 12:39:23 +02:00
Michael Wallner 950bd5e20a Merge branch 'PHP-5.6'
* PHP-5.6:
  XFAIL-- for bug #67198
  remove useless indirection
  fix bug #67198 (php://input regression)
2014-05-06 12:36:55 +02:00
Michael Wallner 416cc83f4e XFAIL-- for bug #67198 2014-05-06 12:22:09 +02:00
Michael Wallner 333638b0d3 remove useless indirection
the stream was initialized within the ops
in a prior version of the slim_post_data patch
2014-05-06 12:22:08 +02:00
Michael Wallner 86b6bfb9b7 fix bug #67198 (php://input regression) 2014-05-06 12:22:08 +02:00
Michael Wallner 66c177c770 XFAIL-- for bug #67198 2014-05-06 12:21:43 +02:00
Michael Wallner 5bdfa4d1c6 remove useless indirection
the stream was initialized within the ops
in a prior version of the slim_post_data patch
2014-05-06 12:21:43 +02:00
Michael Wallner 7308d47c4b fix bug #67198 (php://input regression) 2014-05-06 12:21:43 +02:00
Andrey Hristov 4df71647b6 Merge branch 'PHP-5.6' 2014-05-06 12:17:29 +03:00
Andrey Hristov 1a293e6bd9 rename a constant - old name to new name 2014-05-06 11:36:03 +03:00
Ferenc Kovacs 875c48ae67 Merge branch 'PHP-5.6'
* PHP-5.6:
  test for bug #67198
2014-05-05 16:25:38 +02:00
Ferenc Kovacs 94231ac454 test for bug #67198 2014-05-05 16:25:15 +02:00
Anatol Belski 19b6e2cc9a Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport: (32 commits)
  fixed ZEND_DEBUG usage
  updated libmagic.patch
  added missing stdint header, bug #66907
  fix macros
  /me blushes, really hard
  only build and test nts non-debug and ts debug builds as discussed at https://github.com/php/php-src/pull/654
  Fix mysqli build when building against libmysqlclient.
  Fix author name on the #63228 patch.
  Fixed bug #67169: []= after_array_splice incorrect
  Revert "show leaks in their own group" using valgrind would be a bit too much for travis I guess.
  show leaks in their own group
  Use the right path for the suggested PHP invocation in ext_skel.
  Changed to more understandable NEWS message
  one heading is enough
  add new NEWS block for alpha3
  XFAIL the leaking multibyte tests, we should really get to the bottom of this
  Fixed numbering in UPGRADING file
  Updated NEWS for fixed phpdbg issue #85
  Added stdion/stdout/stderr constsnts and their php:// wrappers Fixes issue #85
  Added stdion/stdout/stderr constsnts and their php:// wrappers Fixes issue #85
  ...
2014-05-05 08:59:08 +02:00
Anatol Belski bc92917e73 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  fixed ZEND_DEBUG usage
  updated libmagic.patch
  added missing stdint header, bug #66907
2014-05-05 08:29:35 +02:00
Anatol Belski 149568f4da Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed ZEND_DEBUG usage
2014-05-05 00:51:40 +02:00
Anatol Belski 0d5121a3c7 fixed ZEND_DEBUG usage 2014-05-05 00:50:51 +02:00
Anatol Belski 53b4d2feea Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libmagic.patch
2014-05-04 21:34:36 +02:00
Anatol Belski 06ae920165 updated libmagic.patch 2014-05-04 21:34:17 +02:00
Anatol Belski fe7853137b Merge branch 'PHP-5.6'
* PHP-5.6:
  added missing stdint header, bug #66907
2014-05-04 21:27:37 +02:00
Anatol Belski 031cafd4e2 added missing stdint header, bug #66907 2014-05-04 21:26:53 +02:00
Anatol Belski 5168611127 fix macros 2014-05-04 21:15:35 +02:00
Anatol Belski 2044884812 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6: (28 commits)
  /me blushes, really hard
  only build and test nts non-debug and ts debug builds as discussed at https://github.com/php/php-src/pull/654
  Fix mysqli build when building against libmysqlclient.
  Fix author name on the #63228 patch.
  Fixed bug #67169: []= after_array_splice incorrect
  Revert "show leaks in their own group" using valgrind would be a bit too much for travis I guess.
  show leaks in their own group
  Use the right path for the suggested PHP invocation in ext_skel.
  Changed to more understandable NEWS message
  one heading is enough
  add new NEWS block for alpha3
  XFAIL the leaking multibyte tests, we should really get to the bottom of this
  Fixed numbering in UPGRADING file
  Updated NEWS for fixed phpdbg issue #85
  Added stdion/stdout/stderr constsnts and their php:// wrappers Fixes issue #85
  Added stdion/stdout/stderr constsnts and their php:// wrappers Fixes issue #85
  add missing NEWS entry to the correct release where it was added
  5.5.12 was released yesterday
  add missing NEWS entry to the correct release where it was added
  Updated NEWS entry for phpdbg
  ...

Conflicts:
	ext/curl/interface.c
2014-05-04 21:12:47 +02:00
Bob Weinand f66449a467 Merge branch 'PHP-5.6' 2014-05-03 11:41:33 +02:00
Bob Weinand 003ba74d99 Merge sapi/phpdbg into PHP-5.6 2014-05-03 11:40:25 +02:00
krakjoe c8d8e851fa /me blushes, really hard 2014-05-03 10:37:11 +01:00
Ferenc Kovacs a6a1785e23 Merge branch 'PHP-5.5'
* PHP-5.5:
  only build and test nts non-debug and ts debug builds as discussed at https://github.com/php/php-src/pull/654
2014-05-03 02:51:46 +02:00
Ferenc Kovacs c29a72d17f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  only build and test nts non-debug and ts debug builds as discussed at https://github.com/php/php-src/pull/654
2014-05-03 02:51:02 +02:00
Ferenc Kovacs 58f4bf441a only build and test nts non-debug and ts debug builds as discussed at https://github.com/php/php-src/pull/654 2014-05-03 02:50:37 +02:00
Adam Harvey 2f1148ae8a Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix mysqli build when building against libmysqlclient.
2014-05-02 14:34:48 -07:00
Adam Harvey 06a03bbfa6 Fix mysqli build when building against libmysqlclient. 2014-05-02 14:33:52 -07:00
Adam Harvey 62d72d9105 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix author name on the #63228 patch.
2014-05-02 10:26:18 -07:00
Adam Harvey fbb0c4b800 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix author name on the #63228 patch.
2014-05-02 10:25:42 -07:00
Adam Harvey d8ff8f6f20 Fix author name on the #63228 patch. 2014-05-02 10:24:09 -07:00
Adam Harvey f7cb87f333 Fix author name on the #63228 patch. 2014-05-02 10:23:09 -07:00
Nikita Popov 46bcaf1b28 Merge branch 'PHP-5.6' 2014-05-02 12:52:44 +02:00
Nikita Popov 69b5ee61d0 Fixed bug #67169: []= after_array_splice incorrect
This fixes a regression I introduced in beta 1.
2014-05-02 12:49:51 +02:00
Ferenc Kovacs db3b70673f Merge branch 'PHP-5.6'
* PHP-5.6:
  Revert "show leaks in their own group" using valgrind would be a bit too much for travis I guess.
2014-05-02 09:50:40 +02:00
Ferenc Kovacs cc2e89d4e1 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Revert "show leaks in their own group" using valgrind would be a bit too much for travis I guess.
2014-05-02 09:50:25 +02:00
Ferenc Kovacs 192b35382a Revert "show leaks in their own group"
using valgrind would be a bit too much for travis I guess.

This reverts commit ea60d79e23.
2014-05-02 09:49:10 +02:00
Ferenc Kovacs 3ca7bc089b Merge branch 'PHP-5.6'
* PHP-5.6:
  show leaks in their own group
2014-05-02 09:33:31 +02:00
Ferenc Kovacs a7437db776 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  show leaks in their own group
2014-05-02 09:33:08 +02:00
Ferenc Kovacs ea60d79e23 show leaks in their own group 2014-05-02 09:32:42 +02:00
Adam Harvey aacc49191c Merge branch 'PHP-5.6'
* PHP-5.6:
  Use the right path for the suggested PHP invocation in ext_skel.
  Changed to more understandable NEWS message
  one heading is enough
2014-05-01 11:23:48 -07:00
Adam Harvey d5712d6ba4 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Use the right path for the suggested PHP invocation in ext_skel.
2014-05-01 11:23:14 -07:00
Adam Harvey eb46096608 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Use the right path for the suggested PHP invocation in ext_skel.
2014-05-01 11:22:46 -07:00
Adam Harvey 941c39bd06 Use the right path for the suggested PHP invocation in ext_skel.
Fixes bug #67160 (ext_skel outputs incorrect information).
2014-05-01 11:22:20 -07:00
Bob Weinand f99449c309 Changed to more understandable NEWS message 2014-05-01 17:10:00 +02:00
Ferenc Kovacs 0a73853798 one heading is enough 2014-05-01 16:38:06 +02:00
Ferenc Kovacs f8f5d311cb Merge branch 'PHP-5.6'
* PHP-5.6:
  add new NEWS block for alpha3
2014-05-01 16:25:38 +02:00
Ferenc Kovacs 75640d0d85 add new NEWS block for alpha3 2014-05-01 16:24:49 +02:00
Ferenc Kovacs 562a845dcc Merge branch 'PHP-5.6'
* PHP-5.6:
  XFAIL the leaking multibyte tests, we should really get to the bottom of this
2014-05-01 12:50:28 +02:00
Ferenc Kovacs 95325e5c5d XFAIL the leaking multibyte tests, we should really get to the bottom of this 2014-05-01 12:49:57 +02:00
Bob Weinand e0b9e5249c Merge branch 'PHP-5.6' 2014-05-01 12:30:46 +02:00
Bob Weinand d27b76a779 Fixed numbering in UPGRADING file 2014-05-01 12:27:38 +02:00
Bob Weinand 3695bf27f8 Merge branch 'PHP-5.6' 2014-05-01 11:47:28 +02:00
Bob Weinand 5d13b7f191 Updated NEWS for fixed phpdbg issue #85 2014-05-01 11:46:35 +02:00
Bob Weinand 3ad8616aff Added stdion/stdout/stderr constsnts and their php:// wrappers
Fixes issue #85
2014-05-01 11:43:46 +02:00
Bob Weinand 191e3a0210 Merge sapi/phpdbg 2014-05-01 11:41:49 +02:00
Bob Weinand bcf85252e2 Added stdion/stdout/stderr constsnts and their php:// wrappers
Fixes issue #85
2014-05-01 11:38:08 +02:00
Ferenc Kovacs 94f279258d Merge branch 'PHP-5.6'
* PHP-5.6:
  add missing NEWS entry to the correct release where it was added
  5.5.12 was released yesterday
  add missing NEWS entry to the correct release where it was added
  add missing NEWS entry to the correct release where it was added
2014-05-01 10:57:12 +02:00
Ferenc Kovacs a67d4d33c2 add missing NEWS entry to the correct release where it was added 2014-05-01 10:56:39 +02:00
Ferenc Kovacs 3da5ef47ca Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  5.5.12 was released yesterday
  add missing NEWS entry to the correct release where it was added
  add missing NEWS entry to the correct release where it was added
2014-05-01 10:56:21 +02:00
Ferenc Kovacs 0842200501 5.5.12 was released yesterday 2014-05-01 10:54:15 +02:00
Ferenc Kovacs b14b8dfc10 add missing NEWS entry to the correct release where it was added 2014-05-01 10:52:24 +02:00
Ferenc Kovacs ef7821506a Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add missing NEWS entry to the correct release where it was added
2014-05-01 10:52:13 +02:00
Bob Weinand ae8010a0f4 Merge branch 'PHP-5.6' 2014-05-01 10:51:45 +02:00
Bob Weinand 5ba657ce89 Updated NEWS entry for phpdbg 2014-05-01 10:50:41 +02:00
Ferenc Kovacs 1c13ad7c0e add missing NEWS entry to the correct release where it was added 2014-05-01 10:50:08 +02:00
Ferenc Kovacs 8b2fdb496d Merge branch 'PHP-5.6'
* PHP-5.6:
  add some missing NEWS entries
2014-05-01 10:44:31 +02:00
Ferenc Kovacs f090ddeac7 add some missing NEWS entries 2014-05-01 10:43:34 +02:00
Michael Wallner e7e44d7d56 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix test locality inconsitency
2014-04-30 13:03:12 +02:00
Michael Wallner 42fbb952d7 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix test locality inconsitency
2014-04-30 13:02:43 +02:00
Michael Wallner b79301d11f fix test locality inconsitency 2014-04-30 13:01:59 +02:00
Michael Wallner 8c559c7d8d Merge branch 'PHP-5.6'
* PHP-5.6:
  BFN
  fix bug #64247 (CURLOPT_INFILE doesn't allow reset)
2014-04-30 09:29:53 +02:00
Michael Wallner aaad7ead55 BFN 2014-04-30 09:29:37 +02:00
Michael Wallner 407612083f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix bug #64247 (CURLOPT_INFILE doesn't allow reset)
2014-04-30 09:28:21 +02:00
Michael Wallner 54fee59598 fix bug #64247 (CURLOPT_INFILE doesn't allow reset) 2014-04-30 09:27:58 +02:00
Ferenc Kovacs 50396e6c10 Merge remote-tracking branch 'origin/PHP-5.6'
* origin/PHP-5.6:
  Added further notice about removal of IS_CONSTANT_INDEX/ARRAY macros
  separate travis jobs for debug and non-debug builds
  separate travis jobs for TS and NTS builds
  put this test back to XFAIL, as it was before, since it is still leaking memory
2014-04-30 00:08:38 +02:00
Ferenc Kovacs 98fcee48f9 Merge remote-tracking branch 'origin/PHP-5.5' into PHP-5.6
* origin/PHP-5.5:
  separate travis jobs for debug and non-debug builds
  separate travis jobs for TS and NTS builds
  put this test back to XFAIL, as it was before, since it is still leaking memory

Conflicts:
	ext/mbstring/tests/zend_multibyte-08.phpt
2014-04-30 00:07:49 +02:00
Anatol Belski 3491ef6cdc Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-04-29 23:53:00 +02:00
Anatol Belski 908c364248 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  Added further notice about removal of IS_CONSTANT_INDEX/ARRAY macros
  Fix bug #67060: use default mode of 660
  updated NEWS
  updated NEWS
  Fixed bug #66431 Special Character via COM Interface (CP_UTF8)
  Cleanup ZEND_MODULE_API_NO => 20050922
  Fix crashes in GMP serialize/unserialize
  enable gmp for tests
  C89 compat
2014-04-29 23:52:49 +02:00
Anatol Belski ba19cc7b45 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Added further notice about removal of IS_CONSTANT_INDEX/ARRAY macros
  Fix bug #67060: use default mode of 660
2014-04-29 23:49:56 +02:00
Ferenc Kovacs 220e0d4a55 Merge remote-tracking branch 'tyrael/more_travis' into PHP-5.5
* tyrael/more_travis:
  separate travis jobs for debug and non-debug builds
  separate travis jobs for TS and NTS builds
  put this test back to XFAIL, as it was before, since it is still leaking memory
2014-04-29 23:34:10 +02:00
Bob Weinand 82ecdcdb63 Added further notice about removal of IS_CONSTANT_INDEX/ARRAY macros 2014-04-29 20:43:58 +02:00
Stanislav Malyshev f2a3be9627 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #67060: use default mode of 660
2014-04-29 09:17:10 -07:00
Stanislav Malyshev c397fcc35f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #67060: use default mode of 660
2014-04-29 09:16:24 -07:00
Stanislav Malyshev 770fcdab90 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #67060: use default mode of 660
2014-04-29 09:15:23 -07:00
Stanislav Malyshev 35ceea928b Fix bug #67060: use default mode of 660 2014-04-29 09:14:11 -07:00
Ferenc Kovacs ea1d42641c separate travis jobs for debug and non-debug builds 2014-04-29 16:09:51 +02:00
Ferenc Kovacs 4cad8fcad2 separate travis jobs for TS and NTS builds 2014-04-29 16:09:42 +02:00
Ferenc Kovacs 35d213c9ce put this test back to XFAIL, as it was before, since it is still leaking memory 2014-04-29 15:58:00 +02:00
Anatol Belski 0f42656fed Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  updated NEWS
  updated NEWS
  Fixed bug #66431 Special Character via COM Interface (CP_UTF8)
  Cleanup ZEND_MODULE_API_NO => 20050922
  Fix crashes in GMP serialize/unserialize
  enable gmp for tests
  C89 compat

Conflicts:
	ext/com_dotnet/com_variant.c
2014-04-29 14:05:57 +02:00
Anatol Belski 8928611b0e Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  Fixed bug #66431 Special Character via COM Interface (CP_UTF8)
2014-04-29 13:47:38 +02:00
Anatol Belski 6d20c5bea8 updated NEWS 2014-04-29 13:47:09 +02:00
Anatol Belski 3023257ff0 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  Fixed bug #66431 Special Character via COM Interface (CP_UTF8)
2014-04-29 13:46:38 +02:00
Anatol Belski 3fbacdc6e8 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #66431 Special Character via COM Interface (CP_UTF8)
2014-04-29 13:46:03 +02:00
Anatol Belski b22f33afe2 updated NEWS 2014-04-29 13:44:54 +02:00
Anatol Belski 2d625b5f81 Fixed bug #66431 Special Character via COM Interface (CP_UTF8) 2014-04-29 13:40:44 +02:00
Popa Adrian Marius aa1c4fd0be Merge branch 'PHP-5.5' of https://git.php.net/push/php-src into PHP-5.5
* 'PHP-5.5' of https://git.php.net/push/php-src:
  enable gmp for tests
2014-04-28 12:15:53 +03:00
Popa Adrian Marius 6de915205c Merge branch 'PHP-5.6' of https://git.php.net/push/php-src into PHP-5.6
* 'PHP-5.6' of https://git.php.net/push/php-src:
  Fix crashes in GMP serialize/unserialize
  enable gmp for tests
2014-04-28 12:15:16 +03:00
Popa Adrian Marius 005f589dc4 Merge branch 'master' of https://git.php.net/push/php-src
* 'master' of https://git.php.net/push/php-src:
  Fix crashes in GMP serialize/unserialize
  enable gmp for tests
2014-04-28 12:14:39 +03:00
Popa Adrian Marius 7c58c5cc90 Merge branch 'PHP-5.6'
* PHP-5.6:
  Cleanup ZEND_MODULE_API_NO => 20050922
2014-04-28 12:14:12 +03:00
Popa Adrian Marius 0edf1d4fe6 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Cleanup ZEND_MODULE_API_NO => 20050922
2014-04-28 12:14:01 +03:00
Popa Adrian Marius a827fa9cd8 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Cleanup ZEND_MODULE_API_NO => 20050922
2014-04-28 12:13:44 +03:00
Popa Adrian Marius bb422cb60e Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Cleanup ZEND_MODULE_API_NO => 20050922
2014-04-28 12:13:11 +03:00
Popa Adrian Marius dbcd6304bb Cleanup ZEND_MODULE_API_NO => 20050922 2014-04-28 12:12:52 +03:00
Stanislav Malyshev 8c5ea5624b Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix crashes in GMP serialize/unserialize
  enable gmp for tests
2014-04-28 01:23:39 -07:00
Stanislav Malyshev c18ae51aeb Fix crashes in GMP serialize/unserialize 2014-04-28 01:22:02 -07:00
Stanislav Malyshev 3842417289 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  enable gmp for tests
2014-04-28 00:57:47 -07:00
Stanislav Malyshev b576cbbf05 enable gmp for tests 2014-04-28 00:56:22 -07:00
Anatol Belski 705909aa48 Merge branch 'PHP-5.6'
* PHP-5.6:
  C89 compat
2014-04-27 18:02:07 +02:00
Anatol Belski 3b6bf6eec8 Merge remote-tracking branch 'phpdbg/master' into PHP-5.6
* phpdbg/master:
  C89 compat
2014-04-27 18:01:26 +02:00
Anatol Belski 4aa80db758 C89 compat 2014-04-27 17:57:38 +02:00
Anatol Belski 92a73b042f Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  Fix #66908: php-fpm reload leaks epoll_create() file descriptor
  fix file descriptor leak of epollfd
  Fix a compiler warning in php_rand.h
  Fix #50444: PDO-ODBC changes for 64-bit
2014-04-26 01:27:13 +02:00
Anatol Belski 2b6be48685 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport: (168 commits)
  some more after merge fixes
  fixed macro names
  removed /EHa as __try/__catch syntax is used anyway
  fix ZEND_DEBUG usage
  fixed test
  updated NEWS
  updated NEWS
  Fixed bug #67118 DateTime constructor crash with invalid data
  update NEWS
  update NEWS
  add a test case previously broken by a bad fix
  Revert "Fixed bug #64604"
  updated libmagic.patch for 5.6+
  updated libmagic.patch
  backport this piece from 5.6, related to the #66307 fix
  updated NEWS
  Fixed bug #66307 Fileinfo crashes with powerpoint files
  fix CFLAGS_PHPDBGS and some formatting
  use a portable strndup implementation
  fixed C89 compat
  ...
2014-04-26 01:26:55 +02:00
Anatol Belski 047a39c946 some more after merge fixes 2014-04-26 00:42:22 +02:00
Anatol Belski e88c8cbb7b fixed macro names 2014-04-26 00:40:58 +02:00
Anatol Belski 14b9658a38 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  removed /EHa as __try/__catch syntax is used anyway
  fix ZEND_DEBUG usage
  fix CFLAGS_PHPDBGS and some formatting
2014-04-26 00:40:16 +02:00
Anatol Belski 5dbe7c98e4 Merge branch 'PHP-5.6'
* PHP-5.6:
  removed /EHa as __try/__catch syntax is used anyway
  fix ZEND_DEBUG usage
  fix CFLAGS_PHPDBGS and some formatting
2014-04-26 00:17:09 +02:00
Anatol Belski a10dc3aa4f Merge remote-tracking branch 'phpdbg/master' into PHP-5.6
* phpdbg/master:
  removed /EHa as __try/__catch syntax is used anyway
  fix ZEND_DEBUG usage
  fix CFLAGS_PHPDBGS and some formatting
2014-04-26 00:15:32 +02:00
Anatol Belski c8617d82cc removed /EHa as __try/__catch syntax is used anyway
see http://msdn.microsoft.com/en-us/library/1deeycx5.aspx
2014-04-26 00:07:13 +02:00
Anatol Belski cdb775906d fix ZEND_DEBUG usage 2014-04-25 22:33:28 +02:00
Anatol Belski 36a0950b39 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6: (158 commits)
  fixed test
  updated NEWS
  updated NEWS
  Fixed bug #67118 DateTime constructor crash with invalid data
  update NEWS
  update NEWS
  add a test case previously broken by a bad fix
  Revert "Fixed bug #64604"
  updated libmagic.patch for 5.6+
  updated libmagic.patch
  backport this piece from 5.6, related to the #66307 fix
  updated NEWS
  Fixed bug #66307 Fileinfo crashes with powerpoint files
  use a portable strndup implementation
  fixed C89 compat
  prepare config.w32
  fix dll export
  add parser files to dist
  Fix accepting ill-formed UTF-8 characters
  sapi/litespeed/lsapi_main.c: Fix bug #63228
  ...

Conflicts:
	ext/date/php_date.c
	sapi/phpdbg/phpdbg_bp.c
	sapi/phpdbg/phpdbg_frame.c
	sapi/phpdbg/phpdbg_help.c
	sapi/phpdbg/phpdbg_list.c
	sapi/phpdbg/phpdbg_prompt.c
2014-04-25 19:49:10 +02:00
Anatol Belski e5b8fd2cc7 Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed test
2014-04-25 17:40:46 +02:00
Anatol Belski 70fdb21d93 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fixed test
2014-04-25 17:40:33 +02:00
Anatol Belski 1c7f4d2b4b Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fixed test
2014-04-25 17:40:19 +02:00
Anatol Belski d3dcd61623 fixed test 2014-04-25 17:39:53 +02:00
Anatol Belski f5c0cc64ed Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  Fixed bug #67118 DateTime constructor crash with invalid data
2014-04-25 17:27:35 +02:00
Anatol Belski 38248e445d updated NEWS 2014-04-25 17:27:07 +02:00
Anatol Belski 6448916535 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  Fixed bug #67118 DateTime constructor crash with invalid data
2014-04-25 17:26:20 +02:00
Anatol Belski 46344b11b4 updated NEWS 2014-04-25 17:25:37 +02:00
Anatol Belski cc9f02751b Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #67118 DateTime constructor crash with invalid data
2014-04-25 17:24:58 +02:00
Anatol Belski c1aa9baf29 Fixed bug #67118 DateTime constructor crash with invalid data 2014-04-25 17:23:26 +02:00
Stanislav Malyshev b82d077f98 Merge branch 'PHP-5.6'
* PHP-5.6:
  update NEWS
  update NEWS
  add a test case previously broken by a bad fix
  Revert "Fixed bug #64604"
2014-04-25 00:07:12 -07:00
Stanislav Malyshev 5ddee799d2 update NEWS 2014-04-25 00:00:49 -07:00
Stanislav Malyshev 1bad4aa355 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update NEWS
  add a test case previously broken by a bad fix
  Revert "Fixed bug #64604"
2014-04-25 00:00:20 -07:00
Stanislav Malyshev 81098de41c update NEWS 2014-04-25 00:00:01 -07:00
Stanislav Malyshev f6841d250a Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add a test case previously broken by a bad fix
  Revert "Fixed bug #64604"
2014-04-24 23:59:32 -07:00
Stanislav Malyshev 03c703b8bd add a test case previously broken by a bad fix 2014-04-24 23:58:38 -07:00
Stanislav Malyshev a328803803 Revert "Fixed bug #64604"
This reverts commit b05c088a3a.
Breaks parsing urls where query has : in it, like: /foo/bar?baz=goo:boo
2014-04-24 23:50:45 -07:00
Anatol Belski ad22add191 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libmagic.patch for 5.6+
  updated libmagic.patch
2014-04-24 20:16:29 +02:00
Anatol Belski 5c34146104 updated libmagic.patch for 5.6+ 2014-04-24 20:16:06 +02:00
Anatol Belski 305c025cdd Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated libmagic.patch
2014-04-24 20:15:01 +02:00
Anatol Belski db960e82b4 updated libmagic.patch 2014-04-24 20:13:47 +02:00
Anatol Belski a9d714f874 Merge branch 'PHP-5.6'
* PHP-5.6:
  backport this piece from 5.6, related to the #66307 fix
2014-04-24 19:53:20 +02:00
Anatol Belski 8f43032ea4 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  backport this piece from 5.6, related to the #66307 fix
2014-04-24 19:52:53 +02:00
Anatol Belski d7bb09cc1d backport this piece from 5.6, related to the #66307 fix 2014-04-24 19:50:23 +02:00
Anatol Belski 78eeefb946 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  Fixed bug #66307 Fileinfo crashes with powerpoint files
2014-04-24 19:36:20 +02:00
Anatol Belski 0c381e19ad updated NEWS 2014-04-24 19:35:52 +02:00
Anatol Belski 74ce9da5dc Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #66307 Fileinfo crashes with powerpoint files

Conflicts:
	ext/fileinfo/libmagic/readcdf.c
2014-04-24 19:33:54 +02:00
Anatol Belski 03fa5501a8 Fixed bug #66307 Fileinfo crashes with powerpoint files 2014-04-24 19:30:34 +02:00
Anatol Belski 4350c89428 fix CFLAGS_PHPDBGS and some formatting 2014-04-24 13:15:16 +02:00
Anatol Belski ceec2152a6 Merge branch 'PHP-5.6'
* PHP-5.6:
  use a portable strndup implementation
  fixed C89 compat
  prepare config.w32
  add parser files to dist
2014-04-24 11:07:08 +02:00
Anatol Belski cd2641973c Merge remote-tracking branch 'phpdbg/master' into PHP-5.6 2014-04-24 11:05:52 +02:00
Anatol Belski 3e6a387454 use a portable strndup implementation 2014-04-24 11:01:54 +02:00
Anatol Belski 165994043a fixed C89 compat 2014-04-24 11:00:36 +02:00
Anatol Belski 5da403264f prepare config.w32 2014-04-24 10:58:30 +02:00
Anatol Belski 60f976a45e Merge branch 'PHP-5.6'
* PHP-5.6:
  fix dll export
2014-04-24 10:53:31 +02:00
Anatol Belski 9280e25534 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix dll export
2014-04-24 10:52:59 +02:00
Anatol Belski acfed1c4c7 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix dll export
2014-04-24 10:52:22 +02:00
Anatol Belski 03be983398 fix dll export 2014-04-24 10:51:42 +02:00
krakjoe f1493e0069 add parser files to dist 2014-04-24 08:09:35 +01:00
Stanislav Malyshev c0c452d1e0 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix accepting ill-formed UTF-8 characters
2014-04-22 16:59:11 -07:00
Stanislav Malyshev ab8065e4ec Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix accepting ill-formed UTF-8 characters
2014-04-22 16:57:47 -07:00
Stanislav Malyshev aca526a13b Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix accepting ill-formed UTF-8 characters

Conflicts:
	ext/phar/phar_path_check.c
2014-04-22 16:57:17 -07:00
Jakub Zelenka 61499bf282 Fix accepting ill-formed UTF-8 characters
Conflicts:
	ext/phar/phar_path_check.c
2014-04-22 16:55:58 -07:00
Felipe Pena fd96831f68 Merge branch 'PHP-5.6'
* PHP-5.6:
  sapi/litespeed/lsapi_main.c: Fix bug #63228
2014-04-22 10:49:18 -03:00
George Wang 742f4704a9 sapi/litespeed/lsapi_main.c: Fix bug #63228
Fix compiling error at line 606 (error: format not a string
literal and no format arguments [-Werror=format-security]
2014-04-22 10:48:14 -03:00
Bob Weinand 70fc31b8be Merge branch 'PHP-5.6' 2014-04-22 00:21:34 +02:00
Bob Weinand 4784d99866 Added autogenerated phpdbg parser files to .gitignore 2014-04-22 00:19:38 +02:00
Bob Weinand 823ddab3f3 Merge branch 'PHP-5.6' 2014-04-21 23:32:57 +02:00
Bob Weinand 708af5fd8e Merge sapi/phpdbg into PHP-5.6 2014-04-21 23:30:08 +02:00
Bob Weinand 447ec05f31 Fixed infinite loop when quitting (sometimes) 2014-04-21 23:14:06 +02:00
krakjoe c1e12316f1 fixup help, behaviour of step command when not executing 2014-04-21 22:00:21 +01:00
krakjoe e9668d4ce8 buffer input to repeat commands 2014-04-21 21:43:19 +01:00
krakjoe bb0f0347dd Merge branch 'master' of https://github.com/krakjoe/phpdbg 2014-04-21 21:28:02 +01:00
krakjoe 0873f2bfb4 remove -e option in favour of taking script from argv[] 2014-04-21 21:24:41 +01:00
Anatol Belski 70707a58c9 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Allow valid multi-byte utf-8 characters to be allowed as file names in phar archives.
  Fix #50444: PDO-ODBC changes for 64-bit
  Fix a compiler warning in php_rand.h
  Fix #66908: php-fpm reload leaks epoll_create() file descriptor
  Fix bug #65701: Do not use cache for file file copy
2014-04-21 08:57:18 +02:00
Stanislav Malyshev 57ca493c95 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #64498: Allow valid multi-byte utf-8 characters to be allowed as file names in phar archives.
2014-04-20 17:24:24 -07:00
Stanislav Malyshev 32d5f269a0 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Allow valid multi-byte utf-8 characters to be allowed as file names in phar archives.
2014-04-20 17:23:52 -07:00
Stanislav Malyshev dafb2af705 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Allow valid multi-byte utf-8 characters to be allowed as file names in phar archives.

Conflicts:
	ext/phar/phar_path_check.c
2014-04-20 17:22:21 -07:00
Danack ea4cee93c8 Allow valid multi-byte utf-8 characters to be allowed as file names in phar archives. 2014-04-20 17:19:20 -07:00
Stanislav Malyshev 1ff58c10c9 Merge branch 'pull-request/603'
* pull-request/603:
  Fix #50444: PDO-ODBC changes for 64-bit
2014-04-20 16:50:01 -07:00
Stanislav Malyshev e680b098e3 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix #50444: PDO-ODBC changes for 64-bit
2014-04-20 16:49:40 -07:00
Andrew Kehrig 186ffcb72c Fix #50444: PDO-ODBC changes for 64-bit
This bug is also referenced in
[#61777](https://bugs.php.net/bug.php?id=61777) and is still present in
the latest stable release of the 5.5 branch. I see two tickets exist for
this problem already, and I'm just submitting these changes via github
as a reminder that this is a serious problem for anyone using PDO_ODBC
on the x64 builds.
2014-04-20 16:49:15 -07:00
Stanislav Malyshev fc35b548d3 Merge branch 'pull-request/605'
* pull-request/605:
  Fix a compiler warning in php_rand.h
2014-04-20 16:37:42 -07:00
Stanislav Malyshev 821cc39882 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix a compiler warning in php_rand.h
2014-04-20 16:36:55 -07:00
Stanislav Malyshev 5272d6c896 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix a compiler warning in php_rand.h
2014-04-20 16:36:36 -07:00
Stanislav Malyshev 8b903f24d5 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix a compiler warning in php_rand.h
2014-04-20 16:35:49 -07:00
Rouven Weßling 68283c9f4a Fix a compiler warning in php_rand.h 2014-04-20 16:35:36 -07:00
Stanislav Malyshev 60c54f016f Merge branch 'pull-request/627'
* pull-request/627:
  Fix #66908: php-fpm reload leaks epoll_create() file descriptor
  fix file descriptor leak of epollfd
2014-04-20 16:25:37 -07:00
Stanislav Malyshev 185e5c0327 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix #66908: php-fpm reload leaks epoll_create() file descriptor
2014-04-20 16:25:25 -07:00
Stanislav Malyshev 0df431482f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix #66908: php-fpm reload leaks epoll_create() file descriptor
2014-04-20 16:25:03 -07:00
Stanislav Malyshev 6bad228b4e Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix #66908: php-fpm reload leaks epoll_create() file descriptor
2014-04-20 16:23:43 -07:00
Julio Pintos 49341e992a Fix #66908: php-fpm reload leaks epoll_create() file descriptor
This patch fixes descriptor leak which could lead to DoS once Max open files is reached
2014-04-20 16:21:49 -07:00
Stanislav Malyshev dd9c80e44b Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #65701: Do not use cache for file file copy
2014-04-20 15:27:55 -07:00
Stanislav Malyshev 774f16318b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #65701: Do not use cache for file file copy
2014-04-20 15:27:39 -07:00
Stanislav Malyshev 5addf223d5 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #65701: Do not use cache for file file copy
2014-04-20 15:25:03 -07:00
Boro Sitnikovski a18cec1b86 Fix bug #65701: Do not use cache for file file copy 2014-04-20 15:22:44 -07:00
Anatol Belski f3e56c8c9e Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  Fixed test case for 5328d42
  These links to ~helly don't work anymore.
2014-04-20 20:39:39 +02:00
Anatol Belski 7c6ac6be55 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport: (23 commits)
  updated libs versions
  added some notes about the win build system
  UPGRADING note about bug #67072
  UPGRADING note about bug #67072
  UPGRADING note about bug #67072
  refixed the test related to bug #67072
  Improved the fix for bug #67072, thanks Nikita
  Fixed test case for 5328d42
  These links to ~helly don't work anymore.
  updated NEWS
  updated NEWS
  Fixed bug #67072 Echoing unserialized "SplFileObject" crash
  updated UPGRADING
  updated UPGRADING
  correct the bug #67081 fix
  updated NEWS
  updated NEWS
  Fixed bug #67081 DOMDocumentType->internalSubset returns entire DOCTYPE tag, not only the subset
  updated NEWS
  Fixed bug #67079 Missing MIME types for XML/XSL files
  ...
2014-04-20 20:39:29 +02:00
Anatol Belski 3eaf40c3fc Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  updated libs versions
  added some notes about the win build system
  UPGRADING note about bug #67072
  UPGRADING note about bug #67072
  UPGRADING note about bug #67072
  refixed the test related to bug #67072
  Improved the fix for bug #67072, thanks Nikita
  Fixed test case for 5328d42
  These links to ~helly don't work anymore.
  updated NEWS
  updated NEWS
  Fixed bug #67072 Echoing unserialized "SplFileObject" crash
  updated UPGRADING
  updated UPGRADING
  correct the bug #67081 fix
  updated NEWS
  updated NEWS
  Fixed bug #67081 DOMDocumentType->internalSubset returns entire DOCTYPE tag, not only the subset
2014-04-20 20:30:54 +02:00
Bob Weinand 577c6ed0ce Fixed stepping 2014-04-20 20:20:59 +02:00
Bob Weinand 422dc49c0d Merge branch 'master' of https://github.com/krakjoe/phpdbg
Conflicts:
	phpdbg_help.c
	phpdbg_prompt.c
2014-04-20 19:55:44 +02:00
krakjoe f96feea00c step by line and opcode modes preserved, set stepping added, help updated 2014-04-20 18:46:35 +01:00
krakjoe 373b9ecd05 rename next to continue, cleanup help 2014-04-20 17:10:52 +01:00
Bob Weinand 56293fc0dd Update help 2014-04-20 16:55:49 +02:00
Bob Weinand e097919f16 Stepping is now line by line with gdb style command 2014-04-20 16:47:24 +02:00
Bob Weinand d21d5c98a5 Fixed potential bug in run command 2014-04-20 13:28:11 +02:00
Bob Weinand 5a7497904e Breakpoints now hit only once if line was not switched 2014-04-20 13:25:28 +02:00
Bob Weinand 508c379428 Added error on compile failure in exec cmd 2014-04-20 12:54:50 +02:00
krakjoe fd74024a49 remove compile command 2014-04-19 21:22:09 +01:00
krakjoe 89868dd4d9 Merge branch 'master' of https://github.com/krakjoe/phpdbg 2014-04-19 21:09:10 +01:00
krakjoe 11c707d836 auto compile when execution context set 2014-04-19 21:08:54 +01:00
Anatol Belski 0cdc57b3cf Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libs versions
2014-04-18 16:09:02 +02:00
Anatol Belski 1bca3ecacc updated libs versions 2014-04-18 16:08:42 +02:00
Anatol Belski 2bb7f3adfc Merge branch 'PHP-5.6'
* PHP-5.6:
  added some notes about the win build system
2014-04-18 16:05:11 +02:00
Anatol Belski 620d7207ef added some notes about the win build system 2014-04-18 16:04:15 +02:00
Anatol Belski 5745a513c7 Merge branch 'PHP-5.6'
* PHP-5.6:
  UPGRADING note about bug #67072
  UPGRADING note about bug #67072
  UPGRADING note about bug #67072
2014-04-18 15:55:12 +02:00
Anatol Belski b93d040dc5 UPGRADING note about bug #67072 2014-04-18 15:54:49 +02:00
Anatol Belski f09f7f22d8 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  UPGRADING note about bug #67072
  UPGRADING note about bug #67072
2014-04-18 15:54:17 +02:00
Anatol Belski 3586d14b61 UPGRADING note about bug #67072 2014-04-18 15:50:15 +02:00
Anatol Belski fae4f64865 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  UPGRADING note about bug #67072
2014-04-18 15:44:18 +02:00
Anatol Belski 53c68811ba UPGRADING note about bug #67072 2014-04-18 15:43:05 +02:00
Anatol Belski f5f1abdc29 Merge branch 'PHP-5.6'
* PHP-5.6:
  refixed the test related to bug #67072
  Improved the fix for bug #67072, thanks Nikita
2014-04-18 15:17:39 +02:00
Anatol Belski cfd20c90a5 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  refixed the test related to bug #67072
  Improved the fix for bug #67072, thanks Nikita
2014-04-18 15:17:12 +02:00
Anatol Belski d963cf94a5 refixed the test related to bug #67072 2014-04-18 15:16:09 +02:00
Anatol Belski 7c400dc867 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Improved the fix for bug #67072, thanks Nikita
2014-04-18 15:14:42 +02:00
Anatol Belski c2acdbdd3d Improved the fix for bug #67072, thanks Nikita 2014-04-18 15:13:32 +02:00
Stanislav Malyshev c2b20c467f Merge branch 'pull-request/646'
* pull-request/646:
  Fixed test case for 5328d42
2014-04-17 17:37:17 -07:00
Stanislav Malyshev 3405d799f8 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed test case for 5328d42
2014-04-17 17:37:05 -07:00
Stanislav Malyshev ce4c78dd07 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed test case for 5328d42
2014-04-17 17:36:26 -07:00
Tjerk Meesters 5e988a888a Fixed test case for 5328d42 2014-04-17 17:36:03 -07:00
Tjerk Meesters bb565de5cc Fixed test case for 5328d42 2014-04-18 08:29:32 +08:00
Bob Weinand 1bc0dbba7b Merge branch 'PHP-5.6' 2014-04-17 17:37:31 +02:00
Bob Weinand c02003e6b8 Merge branch 'PHP-5.5' into PHP-5.6 2014-04-17 17:23:05 +02:00
Bob Weinand 0ec122b804 Merge branch 'PHP-5.4' into PHP-5.5 2014-04-17 17:21:21 +02:00
Levi Morrison 6e1e98d7b8 These links to ~helly don't work anymore. 2014-04-17 17:20:24 +02:00
Levi Morrison 0193895bb4 These links to ~helly don't work anymore. 2014-04-17 08:46:38 -06:00
Anatol Belski a381cc3c40 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  Fixed bug #67072 Echoing unserialized "SplFileObject" crash
2014-04-17 11:08:45 +02:00
Anatol Belski 00bef4b1c7 updated NEWS 2014-04-17 11:08:27 +02:00
Anatol Belski f9a1eab435 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  Fixed bug #67072 Echoing unserialized "SplFileObject" crash
2014-04-17 11:07:22 +02:00
Anatol Belski de6f297e7c updated NEWS 2014-04-17 11:06:55 +02:00
Anatol Belski dc407c2402 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #67072 Echoing unserialized "SplFileObject" crash

Conflicts:
	ext/standard/var_unserializer.c
2014-04-17 11:05:21 +02:00
Anatol Belski 5328d42899 Fixed bug #67072 Echoing unserialized "SplFileObject" crash
The actual issue lays in the unserializer code which doesn't honor
the unserialize callback. By contrast, the serialize callback is
respected. This leads to the situation that even if a class has
disabled the serialization explicitly, user could still construct
a vulnerable string which would result bad things when trying
to unserialize.

This conserns also the classes implementing Serializable as well
as some core classes disabling serialize/unserialize callbacks
explicitly (PDO, SimpleXML, SplFileInfo and co). As of now, the
flow is first to call the unserialize callback (if available),
then call __wakeup. If the unserialize callback returns with no
success, no object is instantiated. This makes the scheme used
by internal classes effective, to disable unserialize just assign
zend_class_unserialize_deny as callback.
2014-04-17 10:48:14 +02:00
Bob Weinand a0ee96289b Commented out a few PHPDBG_IS_QUITTING checks to fix bug
If it does not work, please revert...
2014-04-16 20:55:41 +02:00
Bob Weinand 58c3f7e699 command tokens just available at the beginning now 2014-04-16 20:55:29 +02:00
Bob Weinand 2ab2b74af3 Also check for length to not segfault 2014-04-16 20:55:02 +02:00
Anatol Belski 7d9e161fa7 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated UPGRADING
  updated UPGRADING
2014-04-16 20:49:35 +02:00
Anatol Belski 542a7aceb1 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated UPGRADING
2014-04-16 20:49:21 +02:00
Anatol Belski 05dac1d0a5 updated UPGRADING 2014-04-16 20:48:31 +02:00
Anatol Belski ba03830241 updated UPGRADING 2014-04-16 20:47:17 +02:00
Anatol Belski 3456b73656 Merge branch 'PHP-5.6'
* PHP-5.6:
  correct the bug #67081 fix
2014-04-16 15:08:46 +02:00
Anatol Belski 9d39177943 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  correct the bug #67081 fix
2014-04-16 15:08:34 +02:00
Anatol Belski 947b20bc67 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  correct the bug #67081 fix
2014-04-16 15:08:08 +02:00
Anatol Belski 7a5f1663c6 correct the bug #67081 fix 2014-04-16 15:06:57 +02:00
Anatol Belski 8a985edfb2 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  Fixed bug #67081 DOMDocumentType->internalSubset returns entire DOCTYPE tag, not only the subset
2014-04-16 14:16:56 +02:00
Anatol Belski e74a03fa43 updated NEWS 2014-04-16 14:16:36 +02:00
Anatol Belski 801d312507 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  Fixed bug #67081 DOMDocumentType->internalSubset returns entire DOCTYPE tag, not only the subset
2014-04-16 14:15:52 +02:00
Anatol Belski 228a3537d3 updated NEWS 2014-04-16 14:15:26 +02:00
Anatol Belski 444690eca8 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #67081 DOMDocumentType->internalSubset returns entire DOCTYPE tag, not only the subset
2014-04-16 14:14:52 +02:00
Anatol Belski 5224614f23 Fixed bug #67081 DOMDocumentType->internalSubset returns entire DOCTYPE tag, not only the subset 2014-04-16 14:13:45 +02:00
Bob Weinand b1a22ae6dc Updated version number to 0.4.0
Made run accept any input and lexer re2c compatible
2014-04-16 13:56:26 +02:00
Bob Weinand 7ab1c07a51 Fixed bug: ev output was buffered instead of directly displayed 2014-04-16 11:40:29 +02:00
Anatol Belski 6162a993dd Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  updated NEWS
  Fixed bug #67079 Missing MIME types for XML/XSL files
  5.4.29 is next
  Fixed bug #66907 Solaris 10 is missing strcasestr and needs substitute
  5.5.12RC1 setup
2014-04-16 10:48:48 +02:00
Anatol Belski 0ffdcfe756 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  Fixed bug #67079 Missing MIME types for XML/XSL files
2014-04-16 09:50:24 +02:00
Anatol Belski d0e10dbde0 updated NEWS 2014-04-16 09:49:48 +02:00
Anatol Belski b4c238c8cf Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #67079 Missing MIME types for XML/XSL files
2014-04-16 09:48:31 +02:00
Anatol Belski 9eb726b3ab Fixed bug #67079 Missing MIME types for XML/XSL files 2014-04-16 09:47:49 +02:00
Stanislav Malyshev 59d50b5fb0 Merge branch 'PHP-5.6'
* PHP-5.6:
  5.4.29 is next
  5.5.12RC1 setup
2014-04-15 17:18:24 -07:00
Stanislav Malyshev ea8370c29a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  5.4.29 is next
  5.5.12RC1 setup

Conflicts:
	configure.in
	main/php_version.h
2014-04-15 17:17:39 -07:00
Stanislav Malyshev 6bf7c10b20 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  5.4.29 is next

Conflicts:
	configure.in
	main/php_version.h
2014-04-15 17:15:21 -07:00
Stanislav Malyshev 1d34d82231 5.4.29 is next 2014-04-15 16:51:38 -07:00
Anatol Belski b7d376c1e5 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66907 Solaris 10 is missing strcasestr and needs substitute
2014-04-15 10:29:32 -07:00
Anatol Belski aaf197180a Fixed bug #66907 Solaris 10 is missing strcasestr and needs substitute 2014-04-15 10:26:49 -07:00
Bob Weinand a981e3a1d2 Fixed refcount removing if specified 2014-04-15 19:20:01 +02:00
Julien Pauli b8d029435d 5.5.12RC1 setup 2014-04-15 17:57:27 +02:00
Bob Weinand 0e8637441c Fixed segfault when input == NULL 2014-04-15 15:52:46 +00:00
Anatol Belski 5f79883497 fixed signatures 2014-04-15 08:22:36 -07:00
Anatol Belski c0faf60be0 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  fixed signatures
2014-04-15 17:20:01 +02:00
Anatol Belski e396a3539c Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  Fix #66942: openssl_seal() memory leak
  ws fix
  Fix null byte in LDAP bindings
  Fix bug #66171: better handling of symlinks
  Fix #66562: Consistency bug where curl_multi_getcontent behaves different from curl_exec
  Fixed bug 64604
2014-04-15 14:11:13 +02:00
Anatol Belski b504468d78 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport: (58 commits)
  fix datatypes
  fix zpp
  fixed prototype
  fix test - doesn't seem to produce warning
  Fix test - on CI somebody could create a process in the meantime
  fix windows build
  Fix #66942: openssl_seal() memory leak
  ws fix
  Fix #66942: openssl_seal() memory leak
  ws fix
  Fix null byte in LDAP bindings
  Fix bug #66171: better handling of symlinks
  Fix null byte in LDAP bindings
  Fix bug #66171: better handling of symlinks
  Fix null byte in LDAP bindings
  Fix bug #66171: better handling of symlinks
  fix crash in MINFO when no mysqlnd plugins are loaded
  Add test
  backported some ext/intl tests from 5.6 into 5.4
  test fixes for ICU 53.1
  ...

Conflicts:
	ext/mysqlnd/mysqlnd_result.c
2014-04-15 14:10:50 +02:00
Anatol Belski 5e750feb21 fix datatypes 2014-04-15 14:01:50 +02:00
Anatol Belski 6e10627d54 fix zpp 2014-04-15 11:34:59 +02:00
Anatol Belski bc2b0d8ba3 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  fix test - doesn't seem to produce warning
  Fix test - on CI somebody could create a process in the meantime
  fix windows build
  Fix #66942: openssl_seal() memory leak
  ws fix
  Fix #66942: openssl_seal() memory leak
  ws fix
  Fix null byte in LDAP bindings
  Fix bug #66171: better handling of symlinks
  Fix null byte in LDAP bindings
  Fix bug #66171: better handling of symlinks
  Fix null byte in LDAP bindings
  Fix bug #66171: better handling of symlinks
  Add test

Conflicts:
	ext/openssl/openssl.c
2014-04-15 10:23:51 +02:00
Anatol Belski 4be58a12d8 fixed prototype 2014-04-15 09:59:01 +02:00
Anatol Belski f166237626 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6: (41 commits)
  fix crash in MINFO when no mysqlnd plugins are loaded
  backported some ext/intl tests from 5.6 into 5.4
  test fixes for ICU 53.1
  Fixed bug #67033 Remove reference to Windows 95
  fix NEWS
  Fixed bug #64604
  Fix #66562: Consistency bug where curl_multi_getcontent behaves different from curl_exec
  Fix bug #66482, replace wrong item name 'priority' with 'process.priority' in php-fpm.conf
  Fix windows build
  Fix bug #66721
  fix apr_psprintf format string from e0df4e3dba
  Fixed bug #67024 - getimagesize should recognize BMP files with negative height
  Bug #66840: Fix broken build when extension built separately
  Reverted to 5a0da281e5 Discussion: http://news.php.net/php.cvs/76836
  Forgot title in phpt for bug #67064
  Updated NEWS
  Fix bug #67064 in a BC safe way You can use an optional parameter now when implementing the Countable interface to get the $mode passed to count().
  Added UPGRAING notice for bug #66015 in BC break section
  Add new zend_hash_* APIs to UPGRADING.INTERNALS
  Add str_* macros to UPGRADING.INTERNALS
  ...

Conflicts:
	Zend/zend_compile.c
	Zend/zend_execute_API.c
	Zend/zend_language_parser.y
	ext/mysqli/mysqli.c
	ext/mysqlnd/mysqlnd.c
	ext/mysqlnd/mysqlnd.h
	ext/mysqlnd/mysqlnd_ps.c
	ext/mysqlnd/mysqlnd_result.c
	ext/mysqlnd/mysqlnd_result.h
	ext/mysqlnd/mysqlnd_structs.h
	ext/mysqlnd/mysqlnd_wireprotocol.c
	ext/mysqlnd/mysqlnd_wireprotocol.h
	ext/opcache/zend_accelerator_util_funcs.c
	ext/spl/spl_observer.c
	ext/standard/array.c
2014-04-15 09:53:02 +02:00
Stanislav Malyshev 0ae2328c44 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix test - doesn't seem to produce warning
  Fix test - on CI somebody could create a process in the meantime
2014-04-14 15:48:33 -07:00
Stanislav Malyshev bfbb409b32 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix test - on CI somebody could create a process in the meantime
2014-04-14 15:47:53 -07:00
Stanislav Malyshev 173cd183c9 fix test - doesn't seem to produce warning 2014-04-14 15:47:06 -07:00
Stanislav Malyshev b727934591 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix test - on CI somebody could create a process in the meantime
2014-04-14 15:45:53 -07:00
Stanislav Malyshev eea75e7146 Fix test - on CI somebody could create a process in the meantime 2014-04-14 15:44:23 -07:00
Anatol Belski 46070e956c Merge branch 'PHP-5.6'
* PHP-5.6:
  fix windows build
2014-04-14 23:35:51 +02:00
Anatol Belski 634e6b61d9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix windows build
2014-04-14 23:34:50 +02:00
Anatol Belski 793f67e852 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix windows build
2014-04-14 23:30:14 +02:00
Anatol Belski 24b72e7a27 fix windows build 2014-04-14 23:29:38 +02:00
Stanislav Malyshev 4db11ff081 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix #66942: openssl_seal() memory leak
  ws fix
  Fix #66942: openssl_seal() memory leak
  ws fix
2014-04-14 13:38:44 -07:00
Chuan Ma 8d05a777ad Fix #66942: openssl_seal() memory leak
Fix #66952: memory leak in openssl_open()
2014-04-14 13:38:32 -07:00
Stanislav Malyshev fae8ed8ae9 ws fix 2014-04-14 13:37:58 -07:00
Stanislav Malyshev 6adc84a701 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix #66942: openssl_seal() memory leak
  ws fix
2014-04-14 13:37:10 -07:00
Chuan Ma f413a77b3d Fix #66942: openssl_seal() memory leak
Fix #66952: memory leak in openssl_open()
2014-04-14 13:36:17 -07:00
Stanislav Malyshev 99b01fb3d7 ws fix 2014-04-14 13:35:59 -07:00
Stanislav Malyshev 8bc82718ae Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix #66942: openssl_seal() memory leak
  ws fix

Conflicts:
	ext/openssl/openssl.c
2014-04-14 13:35:24 -07:00
Chuan Ma a186312832 Fix #66942: openssl_seal() memory leak
Fix #66952: memory leak in openssl_open()
2014-04-14 13:24:14 -07:00
Stanislav Malyshev 56f9727305 ws fix 2014-04-14 13:16:53 -07:00
Andrey Hristov 22acea99ff Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2014-04-14 23:11:29 +03:00
Andrey Hristov 84fcc44083 Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6 2014-04-14 23:11:16 +03:00
Andrey Hristov f1c70fbbd6 Merge branch 'master' of git.php.net:php-src 2014-04-14 23:11:01 +03:00
Stanislav Malyshev 8bf77370e9 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix null byte in LDAP bindings
  Fix bug #66171: better handling of symlinks
  Fix null byte in LDAP bindings
  Fix bug #66171: better handling of symlinks
  Fix null byte in LDAP bindings
  Fix bug #66171: better handling of symlinks
2014-04-14 10:53:09 -07:00
Stanislav Malyshev 9af0756dd5 Fix null byte in LDAP bindings 2014-04-14 10:53:08 -07:00
Stanislav Malyshev fb96a62b7d Fix bug #66171: better handling of symlinks 2014-04-14 10:53:07 -07:00
Stanislav Malyshev 1bd3841132 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix null byte in LDAP bindings
  Fix bug #66171: better handling of symlinks
  Fix null byte in LDAP bindings
  Fix bug #66171: better handling of symlinks
2014-04-14 10:51:34 -07:00
Stanislav Malyshev 59900dd37f Fix null byte in LDAP bindings 2014-04-14 10:51:32 -07:00
Stanislav Malyshev 41569b1029 Fix bug #66171: better handling of symlinks 2014-04-14 10:51:31 -07:00
Stanislav Malyshev 5b8c4b8de5 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix null byte in LDAP bindings
  Fix bug #66171: better handling of symlinks
2014-04-14 10:46:52 -07:00
Stanislav Malyshev ed4de188dd Fix null byte in LDAP bindings 2014-04-14 10:46:46 -07:00
Stanislav Malyshev 7f43aeb167 Fix bug #66171: better handling of symlinks 2014-04-14 10:46:45 -07:00
Stanislav Malyshev ad1b9eef98 Fix null byte in LDAP bindings 2014-04-14 10:44:53 -07:00
Stanislav Malyshev 40a9316dff Fix bug #66171: better handling of symlinks 2014-04-14 10:44:53 -07:00
Bob Weinand 9b05f5d132 Made refcount info switchable by set refcount on/off. Default: off 2014-04-14 19:37:31 +02:00
Anatol Belski a35723f6e1 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix crash in MINFO when no mysqlnd plugins are loaded
2014-04-14 17:45:18 +02:00
Anatol Belski 9e76e87ca9 fix crash in MINFO when no mysqlnd plugins are loaded 2014-04-14 17:44:47 +02:00
Anatol Belski edc4aca826 Merge branch 'PHP-5.6'
* PHP-5.6:
  backported some ext/intl tests from 5.6 into 5.4
2014-04-14 16:45:18 +02:00
Andrey Hristov 0705bfc3a3 Merge branch 'PHP-5.6' 2014-04-14 17:44:21 +03:00
Andrey Hristov ce99f292de Merge branch 'PHP-5.5' into PHP-5.6
Conflicts:
	ext/mysqli/tests/mysqli_change_user_old.phpt
2014-04-14 17:44:13 +03:00
Anatol Belski 2b28fd9ab0 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  backported some ext/intl tests from 5.6 into 5.4
2014-04-14 16:42:51 +02:00
Andrey Hristov dae70a2ff7 Add test 2014-04-14 17:35:01 +03:00
Anatol Belski f6db1057fd Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  backported some ext/intl tests from 5.6 into 5.4

Conflicts:
	ext/intl/tests/collator_get_sort_key_variant2.phpt
	ext/intl/tests/locale_get_display_name3.phpt
2014-04-14 16:34:08 +02:00
Anatol Belski 4268504084 backported some ext/intl tests from 5.6 into 5.4 2014-04-14 16:31:18 +02:00
Bob Weinand 2dad85ae61 Return SUCCESS and do not confuse use with errors 2014-04-14 16:26:27 +02:00
Bob Weinand 8c22352e88 Added $this and superglobals support for watchpoints 2014-04-14 15:47:36 +02:00
Anatol Belski 333af6fe34 Merge branch 'PHP-5.6'
* PHP-5.6:
  test fixes for ICU 53.1
2014-04-14 15:35:01 +02:00
Anatol Belski d483e1daca test fixes for ICU 53.1 2014-04-14 15:34:32 +02:00
Bob Weinand fdd9bc2050 Clean up information on watchpoint breaks 2014-04-14 10:46:52 +02:00
Anatol Belski fca5889963 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #67033 Remove reference to Windows 95
2014-04-14 09:34:02 +02:00
Anatol Belski e3abcf7826 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #67033 Remove reference to Windows 95
2014-04-14 09:33:49 +02:00
Anatol Belski 57d657987d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #67033 Remove reference to Windows 95
2014-04-14 09:33:31 +02:00
Anatol Belski 95c57bb646 Fixed bug #67033 Remove reference to Windows 95 2014-04-14 09:32:31 +02:00
Stanislav Malyshev 1155b62ba4 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix NEWS
2014-04-13 20:17:30 -07:00
Stanislav Malyshev cfe24a7be2 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix NEWS
2014-04-13 20:17:14 -07:00
Stanislav Malyshev 6e81f80a1e MErge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix NEWS
2014-04-13 20:16:54 -07:00
Stanislav Malyshev b80243aece fix NEWS 2014-04-13 20:16:27 -07:00
Stanislav Malyshev 3970b9d7dd Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix #66021 (Blank line inside empty array/object)
2014-04-13 18:56:26 -07:00
Stanislav Malyshev 7c9209a0d1 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix #66021 (Blank line inside empty array/object)
2014-04-13 18:56:16 -07:00
Stanislav Malyshev 9bba219c75 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix #66021 (Blank line inside empty array/object)
2014-04-13 18:55:28 -07:00
Stanislav Malyshev 5e66ce9293 Merge branch 'pull-request/518' into PHP-5.4
* pull-request/518:
  Fix #66021 (Blank line inside empty array/object)
2014-04-13 18:50:39 -07:00
Stanislav Malyshev 9f9f378c88 Merge branch 'pull-request/533'
* pull-request/533:
  Fixed bug 64604
2014-04-13 18:39:58 -07:00
Stanislav Malyshev 0a13f8168d Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #64604
2014-04-13 18:39:28 -07:00
Stanislav Malyshev 0d4c28f2e1 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #64604
2014-04-13 18:39:17 -07:00
Stanislav Malyshev 30ec1c0051 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #64604
2014-04-13 18:38:36 -07:00
Ingo Walz b05c088a3a Fixed bug #64604 2014-04-13 18:37:40 -07:00
Stanislav Malyshev aa3cc443c3 Merge branch 'pull-request/578'
* pull-request/578:
  Fix #66562: Consistency bug where curl_multi_getcontent behaves different from curl_exec
2014-04-13 18:15:55 -07:00
Stanislav Malyshev 85d05b5654 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix #66562: Consistency bug where curl_multi_getcontent behaves different from curl_exec
2014-04-13 18:14:10 -07:00
Stanislav Malyshev 1ef0bd2633 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix #66562: Consistency bug where curl_multi_getcontent behaves different from curl_exec
2014-04-13 18:13:52 -07:00
Stanislav Malyshev f1206aef70 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix #66562: Consistency bug where curl_multi_getcontent behaves different from curl_exec
2014-04-13 18:13:09 -07:00
Freek 5558d0db9b Fix #66562: Consistency bug where curl_multi_getcontent behaves different from curl_exec
curl_exec returns an empty string when data is received from a domain that returns zero content. curl_multi_getcontent
returned null. Now it returns an empty string fixing the incosistency
2014-04-13 18:12:17 -07:00
Stanislav Malyshev d3b433bb15 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #66482, replace wrong item name 'priority' with 'process.priority' in php-fpm.conf
2014-04-13 17:33:02 -07:00
Stanislav Malyshev c1d5937f7f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #66482, replace wrong item name 'priority' with 'process.priority' in php-fpm.conf
2014-04-13 17:32:42 -07:00
Stanislav Malyshev 5811610d71 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #66482, replace wrong item name 'priority' with 'process.priority' in php-fpm.conf
2014-04-13 17:31:44 -07:00
itxx00 636adf251c Fix bug #66482, replace wrong item name 'priority' with 'process.priority' in php-fpm.conf 2014-04-13 17:30:50 -07:00
Stanislav Malyshev 3a3a05d2e8 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix windows build
2014-04-13 17:04:25 -07:00
Stanislav Malyshev 04a11b850a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix windows build
2014-04-13 17:04:00 -07:00
Stanislav Malyshev df8e34bcc1 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix windows build
2014-04-13 17:03:28 -07:00
Stanislav Malyshev 3a2660b302 Fix windows build 2014-04-13 17:02:21 -07:00
Stanislav Malyshev 11bdb85d30 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #66721
2014-04-13 15:56:02 -07:00
Stanislav Malyshev d3c4292db7 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #66721
2014-04-13 15:55:45 -07:00
Stanislav Malyshev 733b09442d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #66721
2014-04-13 15:55:07 -07:00
Boro Sitnikovski 8c88b6e81c Fix bug #66721
Add NULL check to php_date_parse_tzfile's retval
2014-04-13 15:51:55 -07:00
Stanislav Malyshev 9fb92eed83 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix apr_psprintf format string from e0df4e3dba
  Fixed bug #67024 - getimagesize should recognize BMP files with negative height
2014-04-13 15:40:21 -07:00
Stanislav Malyshev 1be29a404a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix apr_psprintf format string from e0df4e3dba
2014-04-13 15:39:32 -07:00
Stanislav Malyshev c5275b4a92 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix apr_psprintf format string from e0df4e3dba
2014-04-13 15:37:55 -07:00
Jeff Trawick 442264ffd6 fix apr_psprintf format string from e0df4e3dba 2014-04-13 15:36:43 -07:00
Stanislav Malyshev 3aab84c100 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #67024 - getimagesize should recognize BMP files with negative height
2014-04-13 15:25:58 -07:00
Stanislav Malyshev fe72caa6e5 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #67024 - getimagesize should recognize BMP files with negative height
2014-04-13 15:23:32 -07:00
Gabor Buella 1010200da5 Fixed bug #67024 - getimagesize should recognize BMP files with negative height 2014-04-13 15:17:04 -07:00
Bob Weinand 12844292b8 Merge branch 'PHP-5.6' 2014-04-14 00:10:25 +02:00
Bob Weinand a93e734f81 Merge branch 'PHP-5.5' into PHP-5.6 2014-04-14 00:08:36 +02:00
Daniel Lowrey f1aa39c1af Merge branch 'PHP-5.6'
* PHP-5.6:
  Bug #66840: Fix broken build when extension built separately
2014-04-13 15:19:23 -06:00
Daniel Lowrey 0e023e9784 Bug #66840: Fix broken build when extension built separately 2014-04-13 15:17:50 -06:00
Bob Weinand bf3edbada6 Merge branch 'PHP-5.4' into PHP-5.5 2014-04-13 23:03:53 +02:00
Bob Weinand beda5093b4 Reverted to 5a0da281e5
Discussion: http://news.php.net/php.cvs/76836
2014-04-13 23:01:31 +02:00
Bob Weinand e8728b4999 Merge branch 'PHP-5.6' 2014-04-13 19:41:27 +02:00
Bob Weinand 3636a91adc Merge branch 'PHP-5.5' into PHP-5.6 2014-04-13 19:40:39 +02:00
Bob Weinand 191d9fc227 Merge branch 'PHP-5.4' into PHP-5.5 2014-04-13 19:37:06 +02:00
Bob Weinand f07e37c96d Forgot title in phpt for bug #67064 2014-04-13 19:34:17 +02:00
Bob Weinand 2f3056fecc Updated NEWS 2014-04-13 19:32:51 +02:00
Bob Weinand ef214aa3c0 Merge branch 'PHP-5.6' 2014-04-13 19:28:32 +02:00
Bob Weinand fb99409f89 Merge branch 'PHP-5.5' into PHP-5.6 2014-04-13 19:27:43 +02:00
Bob Weinand eca0644e0a Merge branch 'PHP-5.4' into PHP-5.5 2014-04-13 19:25:07 +02:00
Bob Weinand 1a4a9eede5 Fix bug #67064 in a BC safe way
You can use an optional parameter now when implementing the Countable interface
to get the $mode passed to count().
2014-04-13 19:24:12 +02:00
krakjoe 774a879e65 tidy help 2014-04-13 16:58:45 +01:00
Bob Weinand 2f54e68ade CR CR etc. in help 2014-04-13 17:55:18 +02:00
Bob Weinand f53e438933 Added information about $var parameter in watchpoints 2014-04-13 17:48:35 +02:00
Bob Weinand eae91d9de7 Added help 2014-04-13 17:34:27 +02:00
krakjoe ce7097fb60 less strange! 2014-04-13 14:43:34 +01:00
Bob Weinand 286dd4dc71 Remove some dead code... 2014-04-13 13:33:07 +02:00
krakjoe faa7e3264e fix compat with lexer stuff 2014-04-13 11:42:47 +01:00
krakjoe 5c69f3dd8b Merge branch 'master' of https://github.com/krakjoe/phpdbg into watchpoints_recursive 2014-04-13 11:32:43 +01:00
krakjoe c2c4a5bd25 fix build 2014-04-13 11:32:35 +01:00
krakjoe 1b2f12159b fix command structure 2014-04-13 11:17:04 +01:00
krakjoe 42355fb9bf Merge branch 'master' of https://github.com/krakjoe/phpdbg into watchpoints_recursive
Conflicts:
	config.m4
	phpdbg.c
	phpdbg_prompt.c
2014-04-13 11:07:38 +01:00
Bob Weinand d86c297659 Merge branch 'PHP-5.6' 2014-04-13 11:42:30 +02:00
Bob Weinand a3eafe535f Added UPGRAING notice for bug #66015 in BC break section 2014-04-13 11:38:52 +02:00
Nikita Popov 099c070f18 Merge branch 'PHP-5.6' 2014-04-13 10:49:38 +02:00
Nikita Popov fb5d5d9700 Add new zend_hash_* APIs to UPGRADING.INTERNALS 2014-04-13 10:49:14 +02:00
Nikita Popov 57b88ba6ea Add str_* macros to UPGRADING.INTERNALS 2014-04-13 10:49:14 +02:00
Ferenc Kovacs c459805cb2 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #66660: use str_efree instead of efree to handle interned empty strings correctly
2014-04-13 10:48:42 +02:00
Ferenc Kovacs 20036525e2 Fix bug #66660: use str_efree instead of efree to handle interned empty strings correctly 2014-04-13 10:45:46 +02:00
krakjoe b8a4a4c700 squish warnings 2014-04-13 09:07:15 +01:00
krakjoe 0dc9be6f1e cleanup 2014-04-13 08:48:59 +01:00
krakjoe 8c23b038cd fix moar 2014-04-13 08:43:19 +01:00
krakjoe 4387723ef7 fix argc/argv 2014-04-13 08:34:16 +01:00
krakjoe 65984df220 merge master 2014-04-13 08:09:53 +01:00
krakjoe ef86b57f3b Merge branch 'master' of https://github.com/krakjoe/phpdbg into lexer
Conflicts:
	phpdbg_prompt.c
2014-04-13 08:06:42 +01:00
krakjoe 2fde2ada50 fix addr parameters 2014-04-13 08:06:21 +01:00
Matteo Beccati 0175bbb767 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66604 'pdo/php_pdo_error.h' not copied to the include dir
2014-04-13 08:55:13 +02:00
Matteo Beccati 7fd9898a2d Fixed bug #66604 'pdo/php_pdo_error.h' not copied to the include dir 2014-04-13 08:53:21 +02:00
Ferenc Kovacs fdbf467d2e Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #66568: the second arg for unserialize is optional.
2014-04-13 02:50:03 +02:00
Ferenc Kovacs aefc8f22b3 Fix bug #66568: the second arg for unserialize is optional. 2014-04-13 02:49:35 +02:00
Ferenc Kovacs fb326bbd9b Merge branch 'PHP-5.6'
* PHP-5.6:
  fix typo
2014-04-13 01:57:49 +02:00
Ferenc Kovacs 51cbb85ea9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix typo
2014-04-13 01:57:15 +02:00
Ferenc Kovacs 2876bde634 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix typo
2014-04-13 01:56:47 +02:00
Ferenc Kovacs 5a0da281e5 fix typo 2014-04-13 01:55:55 +02:00
Bob Weinand 3db29ee439 Added support for command line arg passing
"phpdbg -- arg" in shell
"run arg" in phpdbg prompt
2014-04-13 00:27:46 +02:00
Bob Weinand eae0f529f2 Merge branch 'PHP-5.6' 2014-04-12 23:55:35 +02:00
Bob Weinand 53b1dce587 Merge branch 'PHP-5.5' into PHP-5.6 2014-04-12 23:54:57 +02:00
Bob Weinand 9302be3754 Merge branch 'PHP-5.4' into PHP-5.5 2014-04-12 23:54:29 +02:00
Bob Weinand edd90e5ae3 Made usage of php_hash_environment useful by updating instead of just adding argc 2014-04-12 23:53:21 +02:00
Bob Weinand 86a7731763 Fixed frame number order 2014-04-12 22:08:02 +02:00
Bob Weinand 48bcaf2e72 Retain full compability for all micro versions since PHP 5.4 2014-04-12 18:00:33 +02:00
Bob Weinand ca447a8f6f Merge branch 'PHP-5.6' 2014-04-11 20:14:44 +02:00
Bob Weinand 096e40a027 Fixed tests for recent constant array changes 2014-04-11 20:13:24 +02:00
Bob Weinand ccf863c8ce Merge branch 'PHP-5.6' 2014-04-11 19:35:11 +02:00
Bob Weinand 99d1a1bb3f Shut up, my lovely compiler; I do not like your warnings 2014-04-11 19:33:56 +02: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
Bob Weinand 920c5508ef Updated NEWS 2014-04-11 18:30:14 +02:00
Bob Weinand 38ec4d20bf Merge branch 'PHP-5.6' 2014-04-11 18:24:41 +02:00
Bob Weinand ee2a7c7d41 Fixed disallowal of array usage in constants at run-time
Added at the same time the possibility of array dereferencing
to complete the set of features (useful application of arrays in constants)
2014-04-11 18:21:46 +02:00
Bob Weinand 53e71e47b9 Merge branch 'PHP-5.6' 2014-04-11 16:21:15 +02:00
Bob Weinand ad05d3898e Updated zend_vm_execute.h 2014-04-11 16:18:42 +02:00
Anatol Belski f0c95cb705 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix syntax error in vc++
2014-04-11 13:28:13 +02:00
Anatol Belski 5c87ed058b fix syntax error in vc++ 2014-04-11 13:08:46 +02:00
Anatol Belski 3af4be482c Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  Fixed bug #66967 Updated the bundled libsqlite to 3.8.4.3
2014-04-11 11:02:02 +02:00
Anatol Belski 4c32c8d549 updated NEWS 2014-04-11 11:01:42 +02:00
Anatol Belski c5181ef6c2 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #66967 Updated the bundled libsqlite to 3.8.4.3
2014-04-11 11:01:01 +02:00
Anatol Belski e08172e0d5 Fixed bug #66967 Updated the bundled libsqlite to 3.8.4.3 2014-04-11 11:00:10 +02:00
Bob Weinand 9663193bbc Merge branch 'PHP-5.6' 2014-04-11 10:11:58 +02:00
Bob Weinand f7ac308950 Updated NEWS 2014-04-11 10:10:36 +02:00
Bob Weinand f614fc6898 Fix bug #66015 by reverting "Removed operations on constant arrays." 2014-04-11 10:08:44 +02:00
Andrey Hristov 6828437c11 Merge branch 'PHP-5.6'
Conflicts:
	NEWS
	ext/mysqlnd/mysqlnd_result.c
2014-04-10 18:22:01 +03:00
Andrey Hristov d3f390a268 Here comes the news 2014-04-10 18:15:42 +03:00
Andrey Hristov e02fdcf3f7 Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6 2014-04-10 18:13:58 +03:00
Andrey Hristov af5fa00c97 Fix the fix 2014-04-10 18:13:44 +03:00
Popa Adrian Marius c2ce0df01b Merge branch 'PHP-5.6'
* PHP-5.6:
  Cleanup $ is not needed for git
2014-04-10 17:43:45 +03:00
Popa Adrian Marius 4048872317 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Cleanup $ is not needed for git
2014-04-10 17:43:29 +03:00
Popa Adrian Marius 1a0b80fe90 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Cleanup $ is not needed for git
2014-04-10 17:43:09 +03:00
Popa Adrian Marius 1c3ed86211 Cleanup $ is not needed for git 2014-04-10 17:42:32 +03:00
Andrey Hristov 090c3e87c0 Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6
Conflicts:
	ext/mysqli/tests/mysqli_begin_transaction.phpt
2014-04-10 16:49:13 +03:00
Andrey Hristov 63791d055a New result fetching mode for mysqlnd, which should use less memory but
implies more memory copy. The old method is still available and can be used.
It stays as default. Choosing the method is through a flag to mysqli_query()/mysqli_real_query()
New mode can be forced with an INI setting, for all extensions that support this mode
(ext/mysql and mysqli, because PDO due to it's architecture can't support it)
The setting is mysqlnd.fetch_data_copy=[0|1]
2014-04-10 16:44:54 +03:00
Anatol Belski 0eb34f25ae Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-04-10 12:43:08 +02:00
Anatol Belski dfbc874a11 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  fix prototype
  fix typo
  fix typo
  fix typo
  add a NEWS block for beta2
  add missing entries to NEWS
  abstract namespace for unix sockets is a linux only feature
  Don't test for specific non-zero substr_compare() return value
  Add only_integer_keys option to zend_hash_reindex
  Don't always separate splice replacement array
  Add zend_hash_splice
  Add zend_hash_reindex
  Remove some usages of hashtable internals
  Updated NEWS
  fixed bug66702 : regexiterator's invert flag doesn't work as expected
2014-04-10 12:42:58 +02:00
Anatol Belski 9112c2f122 fix prototype 2014-04-10 11:44:28 +02:00
Anatol Belski af53cc6799 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  fix typo
  fix typo
  fix typo
  add a NEWS block for beta2
  add missing entries to NEWS
  abstract namespace for unix sockets is a linux only feature
  Don't test for specific non-zero substr_compare() return value
  Add only_integer_keys option to zend_hash_reindex
  Don't always separate splice replacement array
  Add zend_hash_splice
  Add zend_hash_reindex
  Remove some usages of hashtable internals
  Updated NEWS
  fixed bug66702 : regexiterator's invert flag doesn't work as expected

Conflicts:
	Zend/zend_hash.c
	ext/spl/spl_iterators.c
	ext/standard/array.c
	ext/standard/php_array.h
2014-04-10 10:49:48 +02:00
Ferenc Kovacs 7b3e369740 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix typo
  fix typo
  fix typo
2014-04-10 07:07:50 +02:00
Ferenc Kovacs 3204ad5858 fix typo 2014-04-10 07:07:11 +02:00
Ferenc Kovacs 5cc93aa9a6 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix typo
  fix typo
2014-04-10 07:06:53 +02:00
Ferenc Kovacs b78d1b901c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix typo
2014-04-10 07:06:14 +02:00
Ferenc Kovacs 49d46ad29e fix typo 2014-04-10 07:05:55 +02:00
Ferenc Kovacs 9540ced221 fix typo 2014-04-10 07:05:07 +02:00
Ferenc Kovacs edbaa1fa5e Merge branch 'PHP-5.6'
* PHP-5.6:
  add a NEWS block for beta2
  add missing entries to NEWS
2014-04-10 06:23:23 +02:00
Ferenc Kovacs 08faf19d09 add a NEWS block for beta2 2014-04-10 06:22:43 +02:00
Ferenc Kovacs ec6a0966bc add missing entries to NEWS 2014-04-10 06:21:31 +02:00
Ferenc Kovacs 1b1dabcf60 Merge branch 'PHP-5.6'
* PHP-5.6:
  abstract namespace for unix sockets is a linux only feature
2014-04-09 19:04:35 +02:00
Ferenc Kovacs cbcce72308 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  abstract namespace for unix sockets is a linux only feature
2014-04-09 19:02:56 +02:00
Ferenc Kovacs e00e4b9334 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  abstract namespace for unix sockets is a linux only feature
2014-04-09 19:02:25 +02:00
Ferenc Kovacs 2c8aeda6dc abstract namespace for unix sockets is a linux only feature 2014-04-09 19:01:01 +02:00
Tjerk Meesters 939b2db87d Merge branch 'PHP-5.6' 2014-04-09 20:11:36 +08:00
Tjerk Meesters 16ae472769 Merge branch 'PHP-5.5' into PHP-5.6 2014-04-09 20:11:07 +08:00
Tjerk Meesters 287790d5c8 Don't test for specific non-zero substr_compare() return value 2014-04-09 20:10:34 +08:00
Nikita Popov 21e01f2b70 Merge branch 'PHP-5.6' 2014-04-09 12:31:35 +02:00
Nikita Popov ad2ef3d97e Add only_integer_keys option to zend_hash_reindex
This allows to either do a full reindex, or only reindex the integer
keys.
2014-04-09 12:31:21 +02:00
Nikita Popov f485c84a14 Don't always separate splice replacement array
Only perform separation when a typecast is done. Avoids doing a
full hash copy in many cases.
2014-04-09 12:31:21 +02:00
Nikita Popov 22d3eb3117 Add zend_hash_splice
This implements the original functionality of php_splice, but
as an in-place operation, thus avoiding copying the HT.

This is much faster (~10x) if the splice removes a small portion
of the array and doesn't insert many elements.
2014-04-09 12:31:21 +02:00
Nikita Popov 1aa8719e32 Add zend_hash_reindex
The implementation differs from the original in array.c in that it
rehashes the hashtable in the same loop. This is approximately two
times faster (not counting the rare case of a purely associative
array).
2014-04-09 12:31:21 +02:00
Nikita Popov eaf44ec397 Remove some usages of hashtable internals 2014-04-09 12:31:21 +02:00
Etienne Kneuss 6acfaa982b Merge branch 'PHP-5.6' 2014-04-09 11:52:11 +02:00
Etienne Kneuss 6006a3ed51 Merge branch 'PHP-5.5' into PHP-5.6 2014-04-09 11:36:36 +02:00
Etienne Kneuss a95a6e93ee Updated NEWS 2014-04-09 11:35:54 +02:00
Anatol Belski b0ddef8ba3 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  cleanup old unsupported versions of Firebird 1.0.x
  cleanup
  Fixes bug #66071: isc_interprete is unsafe and deprecated , it is replaced with fb_iterpret
2014-04-09 11:17:43 +02:00
Anatol Belski 71a8b01b2b Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  Updated NEWS for #67043
  Fixed bug 67043
  cleanup
  Fixes bug #66071: isc_interprete is unsafe and deprecated , it is replaced with fb_iterpret
  updated libs versions
  fixed the test for ICI >= 52.1
  Fix Linux specific fail in error traces Linux apparently does not like memcpy in overlapping regions...
  add missing skip to the output, so we actually skip this test
  fix the test according to how new date code does it
  fix to work on different ICU versions
  multibytes tests still fail, put them in XFAIL
2014-04-09 11:17:23 +02:00
Joshua Thijssen e8d6c6587d fixed bug66702 : regexiterator's invert flag doesn't work as expected 2014-04-09 11:13:33 +02:00
Anatol Belski abad64c50e Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Updated NEWS for #67043
  Fixed bug 67043
  cleanup
  Fixes bug #66071: isc_interprete is unsafe and deprecated , it is replaced with fb_iterpret
  updated libs versions
  fixed the test for ICI >= 52.1
  Fix Linux specific fail in error traces Linux apparently does not like memcpy in overlapping regions...
  add missing skip to the output, so we actually skip this test
  fix the test according to how new date code does it
  fix to work on different ICU versions
  multibytes tests still fail, put them in XFAIL

Conflicts:
	ext/standard/string.c
2014-04-09 11:04:50 +02:00
Tjerk Meesters 419d98b291 Merge branch 'PHP-5.6' 2014-04-09 07:37:07 +08:00
Tjerk Meesters 2cdf38b7a0 Updated NEWS for #67043 2014-04-09 07:36:34 +08:00
Tjerk Meesters 2aba2494f5 Merge branch 'PHP-5.5' into PHP-5.6 2014-04-09 07:34:49 +08:00
Tjerk Meesters 032921d80c Fixed bug 67043 2014-04-09 07:33:55 +08:00
Stanislav Malyshev d349971bb2 Merge branch 'PHP-5.6'
* PHP-5.6:
  cleanup
  Fixes bug #66071: isc_interprete is unsafe and deprecated , it is replaced with fb_iterpret
2014-04-08 09:39:34 -07:00
Popa Adrian Marius 002c8e8356 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  cleanup
  Fixes bug #66071: isc_interprete is unsafe and deprecated , it is replaced with fb_iterpret
2014-04-08 17:52:22 +03:00
Popa Adrian Marius 4141ceb795 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  cleanup
  Fixes bug #66071: isc_interprete is unsafe and deprecated , it is replaced with fb_iterpret
2014-04-08 17:51:54 +03:00
Popa Adrian Marius 0ea731fc83 cleanup 2014-04-08 17:51:06 +03:00
Popa Adrian Marius cc20351134 Fixes bug #66071: isc_interprete is unsafe and deprecated , it is replaced with fb_iterpret 2014-04-08 17:50:41 +03:00
Popa Adrian Marius 8abcd97333 cleanup old unsupported versions of Firebird 1.0.x 2014-04-08 17:36:38 +03:00
Popa Adrian Marius 88cd44aa62 cleanup 2014-04-08 15:29:32 +03:00
Popa Adrian Marius 6d7093cbbe Fixes bug #66071: isc_interprete is unsafe and deprecated , it is replaced with fb_iterpret 2014-04-08 14:11:58 +03:00
Anatol Belski 1157f81b2f Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libs versions
2014-04-08 11:43:55 +02:00
Anatol Belski ff5896a04c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated libs versions
2014-04-08 11:43:32 +02:00
Anatol Belski 7a71f5d112 updated libs versions 2014-04-08 11:42:58 +02:00
Anatol Belski 6c2f7bc2c4 Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed the test for ICI >= 52.1
2014-04-07 17:41:47 +02:00
Anatol Belski 964f65484c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fixed the test for ICI >= 52.1
2014-04-07 17:41:32 +02:00
Anatol Belski 040194d6a0 fixed the test for ICI >= 52.1 2014-04-07 17:40:56 +02:00
Bob Weinand d58a7500a7 Merge branch 'PHP-5.6' 2014-04-07 17:16:48 +02:00
Bob Weinand 0e273217cf Fix Linux specific fail in error traces
Linux apparently does not like memcpy in overlapping regions...
2014-04-07 17:14:38 +02:00
Ferenc Kovacs a6e56586c6 Merge branch 'PHP-5.6'
* PHP-5.6:
  add missing skip to the output, so we actually skip this test
2014-04-07 16:59:27 +02:00
Ferenc Kovacs 7446766dab add missing skip to the output, so we actually skip this test 2014-04-07 16:57:52 +02:00
Stanislav Malyshev 2000c8ed46 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix the test according to how new date code does it
  fix to work on different ICU versions
2014-04-05 20:13:48 -07:00
Stanislav Malyshev 63e7b84593 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix the test according to how new date code does it
  fix to work on different ICU versions
2014-04-05 20:13:24 -07:00
Stanislav Malyshev ee1b807219 fix the test according to how new date code does it 2014-04-05 20:09:53 -07:00
Stanislav Malyshev 8b0d133b13 fix to work on different ICU versions 2014-04-05 19:30:55 -07:00
Stanislav Malyshev ca31c8f4fe Merge branch 'PHP-5.6'
* PHP-5.6:
  multibytes tests still fail, put them in XFAIL
2014-04-05 18:35:18 -07:00
Stanislav Malyshev cf910f351a multibytes tests still fail, put them in XFAIL
clean up XFAIL from tests no longer failing
2014-04-05 18:34:39 -07:00
Anatol Belski 589384cb2c Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  Remove call_user_method() and call_user_method_array() from master, long time deprecated in favour of call_user_func*().
2014-04-05 10:34:46 +02:00
Anatol Belski 62a25407a9 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  updated NEWS
  updated NEWS
  Fixed bug #66084 simplexml_load_string() mangles empty node name
  cleanup NEWS
  NEWS
  NEWS
  Fix Bug #66736 	fpassthru broken
2014-04-05 10:34:40 +02:00
Anatol Belski d308724d19 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  updated NEWS
  updated NEWS
  Fixed bug #66084 simplexml_load_string() mangles empty node name
  cleanup NEWS
  NEWS
  NEWS
  Fix Bug #66736 	fpassthru broken
2014-04-05 09:53:38 +02:00
Anatol Belski d7f5f608ac Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  Fixed bug #66084 simplexml_load_string() mangles empty node name
2014-04-05 09:50:13 +02:00
Anatol Belski 12e222ee91 updated NEWS 2014-04-05 09:49:51 +02:00
Anatol Belski a094f6d255 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  Fixed bug #66084 simplexml_load_string() mangles empty node name
2014-04-05 09:48:54 +02:00
Anatol Belski a3d6f28312 updated NEWS 2014-04-05 09:48:20 +02:00
Anatol Belski bbfda90d72 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #66084 simplexml_load_string() mangles empty node name
2014-04-05 09:47:14 +02:00
Anatol Belski a0beddf5e9 Fixed bug #66084 simplexml_load_string() mangles empty node name 2014-04-05 09:46:24 +02:00
Kalle Sommer Nielsen 96d5d7c240 Merge branch 'master' of https://git.php.net/push/php-src 2014-04-05 06:45:02 +02:00
Kalle Sommer Nielsen 91aa9fbb47 Remove call_user_method() and call_user_method_array() from master, long time deprecated in favour of call_user_func*(). 2014-04-05 06:43:41 +02:00
Stanislav Malyshev 882862eb6e Merge branch 'PHP-5.6'
* PHP-5.6:
  cleanup NEWS
2014-04-03 15:57:26 -07:00
Stanislav Malyshev 38e084d312 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  cleanup NEWS
2014-04-03 15:57:08 -07:00
Stanislav Malyshev c1f273908e Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  cleanup NEWS
2014-04-03 15:56:46 -07:00
Stanislav Malyshev 7e5de3a1ce cleanup NEWS 2014-04-03 15:54:00 -07:00
Bob Weinand 9d72a84f06 Add array watchpoints if recursive zval watchpoint changed + WS 2014-04-03 19:53:58 +00:00
Bob Weinand fcacee0595 Fixed deleting watchpoints (plus error in btree_delete) 2014-04-03 19:34:08 +00:00
Michael Wallner 8d4ee1dbed Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  Fix Bug #66736 	fpassthru broken
2014-04-03 10:41:53 +02:00
Michael Wallner b628c36a85 NEWS 2014-04-03 10:41:45 +02:00
Michael Wallner 55005c8638 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  Fix Bug #66736 	fpassthru broken
2014-04-03 10:41:24 +02:00
Michael Wallner 60ef357ffc NEWS 2014-04-03 10:40:42 +02:00
Michael Wallner bbd25ca01f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix Bug #66736 	fpassthru broken
2014-04-03 10:40:20 +02:00
Michael Wallner d08b4dbf23 Fix Bug #66736 fpassthru broken 2014-04-03 10:40:06 +02:00
Anatol Belski d7aed3c631 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-04-03 10:02:53 +02:00
Anatol Belski bccac3c79b Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  NEWS
  NEWS
  Fix bug #66182 	exit in stream filter produces segfault
  NEWS
  NEWS
  Fixed bug #61019 (Out of memory on command stream_get_contents)
  NEWS
  NEWS
  Fix bug #64330
  update NEWS
  updated NEWS
  updated NEWS
  added test for bug #53965
  Fixed bug #53965 <xsl:include> cannot find files w/ relative paths when loaded w/ "file://"
  updated libmagic.patch
  NEWS
  NEWS
  NEWS
  Fixed Bug #66987 Memory corruption in fileinfo ext (bigendian)
2014-04-03 10:02:44 +02:00
Anatol Belski 582bf28311 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  NEWS
  NEWS
  Fix bug #66182 	exit in stream filter produces segfault
  NEWS
  NEWS
  Fixed bug #61019 (Out of memory on command stream_get_contents)
  NEWS
  NEWS
  Fix bug #64330
  update NEWS
  updated NEWS
  updated NEWS
  added test for bug #53965
  Fixed bug #53965 <xsl:include> cannot find files w/ relative paths when loaded w/ "file://"
  updated libmagic.patch
  NEWS
  NEWS
  NEWS
  Fixed Bug #66987 Memory corruption in fileinfo ext (bigendian)
2014-04-03 09:12:26 +02:00
Michael Wallner 3f8c45e28c Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  Fix bug #66182 	exit in stream filter produces segfault
2014-04-03 09:10:02 +02:00
Michael Wallner 1c2bcec68a NEWS 2014-04-03 09:09:51 +02:00
Michael Wallner 5d42ce838c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  Fix bug #66182 	exit in stream filter produces segfault
2014-04-03 09:09:24 +02:00
Michael Wallner f17fe2cabc NEWS 2014-04-03 09:09:15 +02:00
Michael Wallner ba4fddd2da Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #66182 	exit in stream filter produces segfault
2014-04-03 09:08:35 +02:00
Michael Wallner 7ab5c593f7 Fix bug #66182 exit in stream filter produces segfault
Unfortunately, a segv caused by exit cannot be tested reliably.
2014-04-03 09:07:35 +02:00
Michael Wallner 4d412421df Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  Fixed bug #61019 (Out of memory on command stream_get_contents)
2014-04-02 15:39:16 +02:00
Michael Wallner 06e6d42ee3 NEWS 2014-04-02 15:39:07 +02:00
Michael Wallner 68c57f8149 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  Fixed bug #61019 (Out of memory on command stream_get_contents)
2014-04-02 15:38:35 +02:00
Michael Wallner 9eb0c634d4 NEWS 2014-04-02 15:38:22 +02:00
Michael Wallner f453917f62 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #61019 (Out of memory on command stream_get_contents)
2014-04-02 15:37:50 +02:00
Michael Wallner 1ec83d44a1 Fixed bug #61019 (Out of memory on command stream_get_contents) 2014-04-02 15:36:39 +02:00
Michael Wallner 2b7bf2cb6e Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
2014-04-02 11:15:11 +02:00
Michael Wallner c4a3f67708 NEWS 2014-04-02 11:14:34 +02:00
Michael Wallner 80d58ca8cd Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
2014-04-02 11:13:42 +02:00
Michael Wallner 68556f3384 NEWS 2014-04-02 11:13:21 +02:00
Michael Wallner 1d6b3f1293 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #64330
2014-04-02 11:11:39 +02:00
Michael Wallner 669459da8c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #64330
2014-04-02 11:11:23 +02:00
Michael Wallner af147ac9b7 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #64330
2014-04-02 11:10:59 +02:00
Michael Wallner 91a9d24aa3 Fix bug #64330
stream_socket_server() creates wrong Abstract Namespace UNIX sockets
2014-04-02 11:09:26 +02:00
Anatol Belski 45c1e28161 Merge branch 'PHP-5.6'
* PHP-5.6:
  update NEWS
  updated NEWS
  updated NEWS
  added test for bug #53965
  Fixed bug #53965 <xsl:include> cannot find files w/ relative paths when loaded w/ "file://"
2014-04-01 10:15:05 +02:00
Anatol Belski 88a44b15d7 update NEWS 2014-04-01 10:14:38 +02:00
Anatol Belski ef6538875f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  updated NEWS
  added test for bug #53965
  Fixed bug #53965 <xsl:include> cannot find files w/ relative paths when loaded w/ "file://"
2014-04-01 10:13:38 +02:00
Anatol Belski 8e238148f9 updated NEWS 2014-04-01 10:12:56 +02:00
Anatol Belski eb84d5d0a6 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated NEWS
  added test for bug #53965
  Fixed bug #53965 <xsl:include> cannot find files w/ relative paths when loaded w/ "file://"
2014-04-01 10:12:06 +02:00
Anatol Belski f244513fc0 updated NEWS 2014-04-01 10:11:40 +02:00
Anatol Belski fca1501ed6 added test for bug #53965 2014-04-01 10:08:08 +02:00
Anatol Belski 3cb056f523 Fixed bug #53965 <xsl:include> cannot find files w/ relative paths when loaded w/ "file://" 2014-04-01 10:07:18 +02:00
Anatol Belski 41d63e38e1 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libmagic.patch
2014-03-31 17:24:53 +02:00
Anatol Belski e265df460d updated libmagic.patch 2014-03-31 17:24:15 +02:00
Remi Collet cf4e7837d1 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  NEWS
  Fixed Bug #66987 Memory corruption in fileinfo ext (bigendian)
2014-03-31 16:58:21 +02:00
Remi Collet 3f6073602b NEWS 2014-03-31 16:58:10 +02:00
Remi Collet 62305edc5b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  NEWS
  Fixed Bug #66987 Memory corruption in fileinfo ext (bigendian)
2014-03-31 16:57:39 +02:00
Remi Collet 60fb57d4f6 NEWS 2014-03-31 16:57:29 +02:00
Remi Collet 178eac6c98 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Fixed Bug #66987 Memory corruption in fileinfo ext (bigendian)
2014-03-31 16:57:12 +02:00
Remi Collet fca331cae9 NEWS 2014-03-31 16:57:02 +02:00
Remi Collet 2c204a55af Fixed Bug #66987 Memory corruption in fileinfo ext (bigendian)
On little endian:
	map->p == php_magic_database
	map->magic[i] = pointer into the map

	map->p == NULL
	map->magic[i] = pointer to allocated memory

On big endian (ppc64, s390x, ...):
	map->p != php_magic_database and map->p != NULL
        map->magic[i] = pointer into a copy of the map

Trying to efree pointer in the later cause memory corruption
Thanks to dkatulek / Red Hat for the report.
2014-03-31 16:50:47 +02:00
Anatol Belski 4dd4eac9d5 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-03-31 12:04:04 +02:00
Anatol Belski 0fb1f51435 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  update lib versions
  Remove unneeded string copy. Allow to set ''(empty string values) internal/input/output_encoding for better compatibility. i.e. Runtime INI value changes. More compliance to the RFC. Improve/add encoding handling tests. i.e. Rather than set encoding automagic way, detect it.
  Fix test
2014-03-31 12:03:50 +02:00
Anatol Belski 295cec706e Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  update lib versions
  Remove unneeded string copy. Allow to set ''(empty string values) internal/input/output_encoding for better compatibility. i.e. Runtime INI value changes. More compliance to the RFC. Improve/add encoding handling tests. i.e. Rather than set encoding automagic way, detect it.
  Fix test

Conflicts:
	ext/iconv/iconv.c
	ext/standard/html.c
2014-03-31 11:57:46 +02:00
Julio Pintos 389d4e5ec3 Fix #66908: php-fpm reload leaks epoll_create() file descriptor
This patch fixes descriptor leak which could lead to DoS once Max open files is reached
2014-03-28 13:26:43 -03:00
Anatol Belski 5000a2cd37 Merge branch 'PHP-5.6'
* PHP-5.6:
  update lib versions
2014-03-27 18:20:17 +01:00
Anatol Belski 5f54cecde9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update lib versions
2014-03-27 18:19:43 +01:00
Anatol Belski 972c451c73 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  update lib versions

Conflicts:
	win32/build/libs_version.txt
2014-03-27 18:19:24 +01:00
Anatol Belski 1283722589 update lib versions 2014-03-27 18:18:06 +01:00
Yasuo Ohgaki 08cd3c6146 Merge branch 'PHP-5.6'
* PHP-5.6:
  Remove unneeded string copy. Allow to set ''(empty string values) internal/input/output_encoding for better compatibility. i.e. Runtime INI value changes. More compliance to the RFC. Improve/add encoding handling tests. i.e. Rather than set encoding automagic way, detect it.
2014-03-27 17:21:23 +09:00
Yasuo Ohgaki a84e5dc37d Remove unneeded string copy.
Allow to set ''(empty string values) internal/input/output_encoding for better compatibility. i.e. Runtime INI value changes.
More compliance to the RFC. Improve/add encoding handling tests. i.e. Rather than set encoding automagic way, detect it.
2014-03-27 17:20:57 +09:00
Andrey Hristov a496525744 Merge branch 'PHP-5.6' 2014-03-26 15:40:54 +02:00
Andrey Hristov 7ccbfb2e84 Merge branch 'PHP-5.5' into PHP-5.6 2014-03-26 14:27:25 +02:00
Andrey Hristov 84cd0f9911 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2014-03-26 13:57:13 +02:00
Andrey Hristov 89ea2650a1 Fix test 2014-03-26 13:56:58 +02:00
Anatol Belski fd89d420a8 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  fix merge issue
  Added TSRMLS_CC to zend_is_true() calls

Conflicts:
	ext/spl/spl_array.c
2014-03-26 08:31:42 +01:00
Anatol Belski 9a9af437cb Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  - Updated to version 2014.2 (2014b)
  fix merge issue
  Updated NEWS for #66834
  Call offsetGet() when called with isset() on ArrayObject derivatives
  NEWS
  NEWS
  NEWS
  Fixed bug #66946 extensive backtracking in awk rule regular expression CVE-2013-7345
  Fixed bug #66946 extensive backtracking in awk rule regular expression CVE-2013-7345

Conflicts:
	ext/spl/spl_array.c
2014-03-26 08:30:15 +01:00
Anatol Belski ef05ba6411 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  - Updated to version 2014.2 (2014b)
  fix merge issue
  Updated NEWS for #66834
  Call offsetGet() when called with isset() on ArrayObject derivatives
  NEWS
  NEWS
  NEWS
  Fixed bug #66946 extensive backtracking in awk rule regular expression CVE-2013-7345
  Fixed bug #66946 extensive backtracking in awk rule regular expression CVE-2013-7345

Conflicts:
	ext/spl/spl_array.c
2014-03-25 17:37:06 +01:00
Derick Rethans 5fe735c5a2 Merge branch 'PHP-5.6' 2014-03-25 12:17:22 +00:00
Derick Rethans dcc0644cde Merge branch 'PHP-5.5' into PHP-5.6 2014-03-25 12:17:19 +00:00
Derick Rethans 039cb10fa3 Merge branch 'PHP-5.4' into PHP-5.5 2014-03-25 12:17:15 +00:00
Derick Rethans 170cf3ec00 - Updated to version 2014.2 (2014b) 2014-03-25 12:17:14 +00:00
Remi Collet ab72457d7f fix merge issue 2014-03-25 12:07:29 +01:00
Remi Collet 5f0428e8cc fix merge issue 2014-03-25 12:07:15 +01:00
Tjerk Meesters 4cb19f0a0f Added TSRMLS_CC to zend_is_true() calls 2014-03-25 19:05:43 +08:00
Tjerk Meesters 6018c47a28 Merge branch 'PHP-5.6' 2014-03-25 18:19:42 +08:00
Tjerk Meesters 98163c7d1b Updated NEWS for #66834 2014-03-25 18:16:30 +08:00
Tjerk Meesters 5dee3c11fe Call offsetGet() when called with isset() on ArrayObject derivatives 2014-03-25 18:15:18 +08:00
Remi Collet 94647425d7 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  NEWS
  Fixed bug #66946 extensive backtracking in awk rule regular expression CVE-2013-7345
  Fixed bug #66946 extensive backtracking in awk rule regular expression CVE-2013-7345
2014-03-25 11:05:11 +01:00
Remi Collet c5f6d1ab29 NEWS 2014-03-25 11:04:49 +01:00
Remi Collet 64d7dd55d3 Fix merge (5.6 already have file 5.17) 2014-03-25 11:03:59 +01:00
Remi Collet 8b7b67a21b NEWS 2014-03-25 11:01:56 +01:00
Remi Collet 84b0ab6d8f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Fixed bug #66946 extensive backtracking in awk rule regular expression CVE-2013-7345
  Fixed bug #66946 extensive backtracking in awk rule regular expression CVE-2013-7345
2014-03-25 11:01:20 +01:00
Remi Collet 3616db6d38 NEWS 2014-03-25 11:00:47 +01:00
Remi Collet 4374a52e9d Fixed bug #66946 extensive backtracking in awk rule regular expression
CVE-2013-7345

Applied upstream patch:
https://github.com/file/file/commit/ef2329cf71acb59204dd981e2c6cce6c81fe467c

Add the magicdata.patch to track patches applied to upstream data file.
2014-03-25 11:00:33 +01:00
Remi Collet 1df558c6a0 Fixed bug #66946 extensive backtracking in awk rule regular expression
CVE-2013-7345

Applied upstream patch:
https://github.com/file/file/commit/ef2329cf71acb59204dd981e2c6cce6c81fe467c

Add the magicdata.patch to track patches applied to upstream data file.
2014-03-25 10:58:50 +01:00
Anatol Belski 0e15725152 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-03-25 09:06:02 +01:00
Anatol Belski 7915eb8c5c Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  fix disabling PGO for extensions, rel bug #65715
  more fixes related to bug #65715
  fix some warnings
  PHP-5.6 compatibility for apache2 filter SAPI
  updated NEWS
  updated NEWS
  updated NEWS
  Fixed bug #65715 php5embed.lib isn't provided anymore
2014-03-25 09:05:49 +01:00
Anatol Belski 2fb527660d Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  fix disabling PGO for extensions, rel bug #65715
  more fixes related to bug #65715
  fix some warnings
  PHP-5.6 compatibility for apache2 filter SAPI
  updated NEWS
  updated NEWS
  updated NEWS
  Fixed bug #65715 php5embed.lib isn't provided anymore
2014-03-25 09:03:32 +01:00
Anatol Belski 86e77b6b58 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix disabling PGO for extensions, rel bug #65715
2014-03-25 06:46:25 +01:00
Anatol Belski 655f2973eb Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix disabling PGO for extensions, rel bug #65715
2014-03-25 06:46:06 +01:00
Anatol Belski 7477f5b387 fix disabling PGO for extensions, rel bug #65715 2014-03-25 06:44:54 +01:00
Anatol Belski 978ceb2830 Merge branch 'PHP-5.6'
* PHP-5.6:
  more fixes related to bug #65715
2014-03-24 19:19:24 +01:00
Anatol Belski 59dcf9879b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  more fixes related to bug #65715
2014-03-24 19:19:06 +01:00
Anatol Belski 223f7d9a44 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  more fixes related to bug #65715
2014-03-24 19:18:39 +01:00
Anatol Belski 6612e1ba6a more fixes related to bug #65715 2014-03-24 19:15:02 +01:00
Michael Wallner 8b9d12dd47 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix some warnings
  PHP-5.6 compatibility for apache2 filter SAPI

Fixes bug #66595
2014-03-24 17:53:08 +01:00
Michael Wallner caba0203e8 fix some warnings 2014-03-24 17:51:50 +01:00
Michael Wallner 275b2c420d PHP-5.6 compatibility for apache2 filter SAPI 2014-03-24 17:48:28 +01:00
Bob Weinand e55bbd47af Use the internal zend_get_opcode_name() function
Requires now >=5.4.24 or >=5.5.8 or >=5.6
2014-03-24 14:46:14 +01:00
Anatol Belski 12bc572008 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  updated NEWS
  Fixed bug #65715 php5embed.lib isn't provided anymore
2014-03-24 10:32:07 +01:00
Anatol Belski 26f7051cf4 updated NEWS 2014-03-24 10:31:08 +01:00
Anatol Belski 13e8486550 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  updated NEWS
  Fixed bug #65715 php5embed.lib isn't provided anymore
2014-03-24 10:30:05 +01:00
Anatol Belski 8558640a6a updated NEWS 2014-03-24 10:29:39 +01:00
Anatol Belski 76066b304c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated NEWS
  Fixed bug #65715 php5embed.lib isn't provided anymore
2014-03-24 10:28:48 +01:00
Anatol Belski 5efda763be updated NEWS 2014-03-24 10:28:21 +01:00
Anatol Belski 17a57ad980 Fixed bug #65715 php5embed.lib isn't provided anymore 2014-03-24 10:24:37 +01:00
Bob Weinand c86ba551ac Merge branch 'master' into watchpoints_recursive
Conflicts:
	phpdbg.c
	phpdbg_utils.c
	phpdbg_utils.h
2014-03-23 23:32:13 +01:00
Bob Weinand 30fab784dc Fixed TSRM build 2014-03-23 14:57:25 +01:00
Bob Weinand bd2305f1d2 Fixed possible duplication of watchpoints output 2014-03-22 21:27:25 -04:00
Bob Weinand 7b0219212d Fixed possible segmentation fault upon unset with watchpoints 2014-03-22 09:39:39 -04:00
Anatol Belski 8afbb5cdd6 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-03-22 11:06:37 +01:00
Anatol Belski 208af7e86c Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  fix C89 compat
  fix signature
  Revert "Add helper function for updating bucket contents"
  Rename+move zend_hash_apply_deleter and reuse it
  Make zend_hash_apply_deleter() void, to allow reuse
  Add helper function for updating bucket contents
  Remove unnecessary check
  Fixes after merge
  Emit a warning in case of unallowed characters. Fix another place this code is used - reuse
  add info: empty strings are interned
  don't replace with ?, just skip it
2014-03-22 11:06:27 +01:00
Anatol Belski 18405e9dff Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  fix C89 compat
2014-03-22 10:45:56 +01:00
Anatol Belski d374c7703c Merge branch 'PHP-5.6'
* PHP-5.6:
  fix C89 compat
2014-03-22 10:44:40 +01:00
Anatol Belski 9d4001f1c8 fix C89 compat 2014-03-22 10:44:01 +01:00
Anatol Belski 4d647197cf fix signature 2014-03-22 10:34:32 +01:00
Anatol Belski 69ae149b4f Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Revert "Add helper function for updating bucket contents"
  Rename+move zend_hash_apply_deleter and reuse it
  Make zend_hash_apply_deleter() void, to allow reuse
  Add helper function for updating bucket contents
  Remove unnecessary check
  Fixes after merge
  Emit a warning in case of unallowed characters. Fix another place this code is used - reuse
  add info: empty strings are interned
  don't replace with ?, just skip it

Conflicts:
	Zend/zend_hash.c
	ext/mysqlnd/mysqlnd.c
2014-03-22 10:24:11 +01:00
Andrey Hristov 61103cc25c Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6 2014-03-21 14:33:44 +02:00
Andrey Hristov b418bea1ac Merge branch 'master' of git.php.net:php-src 2014-03-21 14:33:32 +02:00
Nikita Popov 4290293b81 Merge branch 'PHP-5.6' 2014-03-21 01:34:46 +01:00
Nikita Popov f331ed1414 Revert "Add helper function for updating bucket contents"
Reverting this for now, because it would require further changes
thanks to the zend signals tsrms-but-only-sometimes awesomeness.
2014-03-21 01:32:49 +01:00
Nikita Popov 2b89f618ff Merge branch 'PHP-5.6' 2014-03-21 00:16:03 +01:00
Nikita Popov 4e7e301dda Rename+move zend_hash_apply_deleter and reuse it
The interruption handling was normalized to wrap the entire deletion
operation (instead of leaving out the destructor call and/or the
deallocation) per the recommendation of somebody (don't remember who)
familiar with zend signals.

There is an always-inlined variant of the function for use in
the main deletion function, to ensure there is no performance
impact.
2014-03-21 00:14:52 +01:00
Nikita Popov 4efa58dd59 Make zend_hash_apply_deleter() void, to allow reuse
Also remove lies in the comment above the function. apply_deleter
is not safe against modification, if the modification involves
removing the next bucket.

Also modified the implementation of zend_hash_graceful_destroy()
to be fully graceful (the reverse variant already was).
2014-03-21 00:14:51 +01:00
Nikita Popov c3a317117a Add helper function for updating bucket contents 2014-03-21 00:14:46 +01:00
Nikita Popov 994fcfcff9 Remove unnecessary check
In case of an update the key already existed, so the next free
element can not change.
2014-03-20 22:58:10 +01:00
Andrey Hristov e3babd3ac3 Merge branch 'PHP-5.6' 2014-03-20 17:29:02 +02:00
Andrey Hristov 113f22550a Fixes after merge 2014-03-20 17:28:49 +02:00
Andrey Hristov ea93d1fe83 Merge branch 'PHP-5.6' 2014-03-20 17:24:26 +02:00
Andrey Hristov d2ab74588e Merge branch 'PHP-5.5' into PHP-5.6 2014-03-20 16:30:01 +02:00
Andrey Hristov 41b4b84dda Emit a warning in case of unallowed characters. Fix another place this
code is used - reuse
2014-03-20 16:23:40 +02:00
Remi Collet 3b4fcd3f39 Merge branch 'PHP-5.6'
* PHP-5.6:
  add info: empty strings are interned
2014-03-20 15:18:50 +01:00
Remi Collet 7f7c84d64f add info: empty strings are interned 2014-03-20 15:18:41 +01:00
Andrey Hristov 8ed85557e0 Merge branch 'PHP-5.6' 2014-03-20 16:16:27 +02:00
Andrey Hristov e52334fdbe Merge branch 'PHP-5.5' into PHP-5.6
Conflicts:
	ext/mysqli/mysqli_api.c
2014-03-20 16:16:12 +02:00
Andrey Hristov 059bc99d94 don't replace with ?, just skip it 2014-03-20 12:11:16 +02:00
Anatol Belski f52f68303f Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  Add default_charset handling
2014-03-20 08:58:37 +01:00
Anatol Belski 8aed7642c2 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  Add default_charset handling
  Updated UPGRADING to add three changes
  OCI8: fix prototypes for oci_field_*().  They can take a column index or name.
  Change test package name ARRAYBINDPKG1 to a per-file unique name to aid parallel testing
  fix compilation error
  fix typo
  Fix problem with mysqli_commt()/mysqli_rollback()
  Restore NEWS and UPGRADING for hash_equals().
  5.5.11RC1 preparation
  Fixed typo
  Add missing E_DEPRECATED error for https://wiki.php.net/rfc/default_encoding
2014-03-20 08:56:27 +01:00
Anatol Belski 10248d3b5a Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Add default_charset handling
  Updated UPGRADING to add three changes
  OCI8: fix prototypes for oci_field_*().  They can take a column index or name.
  Change test package name ARRAYBINDPKG1 to a per-file unique name to aid parallel testing
  fix compilation error
  fix typo
  Fix problem with mysqli_commt()/mysqli_rollback()
  Restore NEWS and UPGRADING for hash_equals().
  5.5.11RC1 preparation
  Fixed typo
  Add missing E_DEPRECATED error for https://wiki.php.net/rfc/default_encoding

Conflicts:
	ext/mysqli/mysqli_api.c
	ext/mysqlnd/mysqlnd.c
	ext/standard/html.c
2014-03-20 08:47:51 +01:00
Yasuo Ohgaki bd9978331f Merge branch 'PHP-5.6'
* PHP-5.6:
  Add default_charset handling
2014-03-20 11:04:23 +09:00
Yasuo Ohgaki 8f5a31ff37 Add default_charset handling 2014-03-20 11:03:02 +09:00
Yasuo Ohgaki e1fe76f28a Add default_charset handling 2014-03-20 10:50:32 +09:00
Tjerk Meesters d0e3173016 Updated UPGRADING to add three changes 2014-03-20 07:44:23 +08:00
Christopher Jones 122c69a0be Merge branch 'PHP-5.6'
* PHP-5.6:
  OCI8: fix prototypes for oci_field_*().  They can take a column index or name.
2014-03-19 15:23:40 -07:00
Christopher Jones 014c5706a8 Merge branch 'oci_field_doc_prototype_fixes' into PHP-5.6
* oci_field_doc_prototype_fixes:
  OCI8: fix prototypes for oci_field_*().  They can take a column index or name.
2014-03-19 15:23:07 -07:00
Christopher Jones 6c20b07190 OCI8: fix prototypes for oci_field_*(). They can take a column index or name. 2014-03-19 15:20:40 -07:00
Christopher Jones 3406f98439 Merge branch 'PHP-5.6'
* PHP-5.6:
  Change test package name ARRAYBINDPKG1 to a per-file unique name to aid parallel testing
2014-03-19 14:13:40 -07:00
Christopher Jones 8bdf272758 Change test package name ARRAYBINDPKG1 to a per-file unique name to aid parallel testing 2014-03-19 14:10:56 -07:00
Andrey Hristov d22d1035cb Merge branch 'PHP-5.6' 2014-03-19 19:15:15 +02:00
Andrey Hristov 62ab3af12f fix compilation error 2014-03-19 19:15:04 +02:00
Andrey Hristov e756f417b9 Merge branch 'PHP-5.6' 2014-03-19 18:55:40 +02:00
Andrey Hristov b86595a37c Merge branch 'PHP-5.5' into PHP-5.6
Conflicts:
	NEWS
2014-03-19 18:55:29 +02:00
Andrey Hristov 44fb74fad1 fix typo 2014-03-19 18:54:56 +02:00
Andrey Hristov 01c2ec03bc Merge branch 'PHP-5.5' into PHP-5.6
Conflicts:
	NEWS
	configure.in
	ext/mysqli/mysqli_api.c
	main/php_version.h
2014-03-19 18:54:39 +02:00
Andrey Hristov d63ed101ee Fix problem with mysqli_commt()/mysqli_rollback() 2014-03-19 18:32:19 +02:00
Adam Harvey 4bac43a520 Merge branch 'PHP-5.6' 2014-03-19 06:25:06 -07:00
Adam Harvey d613b0acc2 Restore NEWS and UPGRADING for hash_equals(). 2014-03-19 06:24:01 -07:00
Julien Pauli c4145619be 5.5.11RC1 preparation 2014-03-19 10:43:32 +01:00
Yasuo Ohgaki dc471acafe Merge branch 'PHP-5.6'
* PHP-5.6:
  Add missing E_DEPRECATED error for https://wiki.php.net/rfc/default_encoding
2014-03-19 18:14:32 +09:00
Anatol Belski 3b55f66d93 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  fix macros
2014-03-19 09:46:01 +01:00
Anatol Belski fa6ba0ecdb fix macros 2014-03-19 09:45:22 +01:00
Anatol Belski 177d45ee17 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-03-19 09:43:16 +01:00
Anatol Belski c569a6502d Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  prep for 5.4.27 rc1
  remove obsolete comment
  Fixes to various stream cast on win64
  - Updated to version 2014.1 (2014a)
  Add a test
  Add hash_equals() to perform string comparisons that are not vulnerable to timing attacks.
2014-03-19 09:42:59 +01:00
Yasuo Ohgaki 3ce980cf97 Merge branch 'pull-request/622' into PHP-5.6
* pull-request/622:
  Fixed typo
  Add missing E_DEPRECATED error for https://wiki.php.net/rfc/default_encoding
2014-03-19 17:29:24 +09:00
Yasuo Ohgaki babaa43762 Fixed typo 2014-03-19 17:25:45 +09:00
Anatol Belski 87da8f58e2 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  prep for 5.4.27 rc1
  remove obsolete comment
  Fixes to various stream cast on win64
  - Updated to version 2014.1 (2014a)
  Add a test
  Add hash_equals() to perform string comparisons that are not vulnerable to timing attacks.

Conflicts:
	ext/bz2/bz2.c
	ext/standard/streamsfuncs.c
2014-03-19 08:53:59 +01:00
Stanislav Malyshev 2833c3b77d Merge branch 'PHP-5.6'
* PHP-5.6:
  prep for 5.4.27 rc1
2014-03-18 23:25:32 -07:00
Stanislav Malyshev c1765d7ffe Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  prep for 5.4.27 rc1
2014-03-18 23:25:08 -07:00
Stanislav Malyshev 1ff28cd0ec Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  prep for 5.4.27 rc1

Conflicts:
	configure.in
	main/php_version.h
2014-03-18 23:24:09 -07:00
Stanislav Malyshev 9b88bc494e prep for 5.4.27 rc1 2014-03-18 23:19:09 -07:00
Anatol Belski 6d6cce0f56 Merge branch 'PHP-5.6'
* PHP-5.6:
  remove obsolete comment
  Fixes to various stream cast on win64
2014-03-19 06:38:18 +01:00
Anatol Belski ec11530620 remove obsolete comment 2014-03-19 06:35:58 +01:00
Anatol Belski 62f6c5853f Fixes to various stream cast on win64
This fixes further issues on win64 with casts from the streams.
Sockets/descriptors handling was unitized. This has an impact only on
win64, php_socket_t otherwise can be feed back to int datatype.
2014-03-19 06:33:46 +01:00
Adam Harvey 68e479b94d Merge branch 'PHP-5.6'
* PHP-5.6:
  Add hash_equals() to perform string comparisons that are not vulnerable to timing attacks.
2014-03-18 09:33:22 -07:00
Adam Harvey a6f7fca637 Merge accepted RFC https://wiki.php.net/rfc/timing_attack into 5.6. 2014-03-18 09:22:13 -07:00
Derick Rethans 22fc261628 Merge branch 'PHP-5.6' 2014-03-18 15:02:27 +00:00
Derick Rethans 415233d26d Merge branch 'PHP-5.5' into PHP-5.6 2014-03-18 15:02:25 +00:00
Derick Rethans 2dfb8fbdf4 Merge branch 'PHP-5.4' into PHP-5.5 2014-03-18 14:48:56 +00:00
Derick Rethans b30304fb78 - Updated to version 2014.1 (2014a) 2014-03-18 14:48:55 +00:00
Andrey Hristov dd1670067c Merge branch 'PHP-5.6' 2014-03-18 16:19:34 +02:00
Andrey Hristov 39c53031e0 Merge branch 'PHP-5.5' into PHP-5.6 2014-03-18 15:42:57 +02:00
Andrey Hristov 2b811a5aec Add a test 2014-03-18 15:42:38 +02:00
Anatol Belski 849b546ba0 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-03-18 14:12:54 +01:00
Anatol Belski 4535642ad4 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  Fixed wrong indentation
  Fix phpdbg build on FreeBSD
  Fixed off-by-one in php_url_parse_ex
  Fixed typo in UPGRADING and modified php.ini-* description for encoding related changes
  Add support for PCRE marks
  Update UPGRADING. Add more descriptions about default_charset and encoding related changes. Many thanks to Christopher.
  UPGRADING (openssl updates)
  Support async pgsql connections and non-blocking queries
2014-03-18 14:11:44 +01:00
Anatol Belski ed70f02b29 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Fixed wrong indentation
  Fix phpdbg build on FreeBSD
  Fixed off-by-one in php_url_parse_ex
  Fixed typo in UPGRADING and modified php.ini-* description for encoding related changes
  Add support for PCRE marks
  Update UPGRADING. Add more descriptions about default_charset and encoding related changes. Many thanks to Christopher.
  UPGRADING (openssl updates)
  Support async pgsql connections and non-blocking queries

Conflicts:
	ext/pcre/php_pcre.c
	ext/pgsql/pgsql.c
2014-03-18 14:03:25 +01:00
Mateusz Kocielski 582032b659 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed wrong indentation
2014-03-18 10:50:16 +01:00
Mateusz Kocielski 6c259625c4 Fixed wrong indentation 2014-03-18 10:49:28 +01:00
Mateusz Kocielski 1a5c51829a Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix phpdbg build on FreeBSD
  Fixed off-by-one in php_url_parse_ex
2014-03-18 10:03:06 +01:00
Mateusz Kocielski 888f467d63 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed off-by-one in php_url_parse_ex
2014-03-18 09:53:58 +01:00
Mateusz Kocielski ccae70b765 Fix phpdbg build on FreeBSD
Added missing netinet/in.h header.
2014-03-18 09:51:39 +01:00
Mateusz Kocielski 156cc39e21 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed off-by-one in php_url_parse_ex
2014-03-18 08:57:30 +01:00
Mateusz Kocielski 497b918e62 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed off-by-one in php_url_parse_ex

Conflicts:
	ext/standard/url.c
2014-03-18 08:54:57 +01:00
Mateusz Kocielski 46566b78c9 Fixed off-by-one in php_url_parse_ex
Change order of condition, previously pointer could be derefrenced before
bound check was done.
2014-03-18 08:48:41 +01:00
Yasuo Ohgaki 789b10ccb5 Merge branch 'PHP-5.6'
* PHP-5.6:
 Modified php.ini-* description for encoding related changes
2014-03-18 07:29:22 +09:00
Yasuo Ohgaki a28389b2ab Fixed typo in UPGRADING and modified php.ini-* description for encoding related changes 2014-03-18 07:28:26 +09:00
Nikita Popov 2c31b9f506 Merge branch 'PHP-5.6' 2014-03-17 22:32:45 +01: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
Yasuo Ohgaki c4c97d878d Update UPGRADING.
Add more descriptions about default_charset and encoding related changes.
Many thanks to Christopher.
2014-03-18 05:49:09 +09:00
Daniel Lowrey ddbd20bd29 Merge branch 'PHP-5.6'
* PHP-5.6:
  Support async pgsql connections and non-blocking queries
2014-03-17 08:03:54 -06:00
Daniel Lowrey 33c7976dfc UPGRADING (openssl updates) 2014-03-17 08:03:40 -06:00
Daniel Lowrey 098b4e8f5a Merge branch 'pgsql-async' into PHP-5.6
* pgsql-async:
  Support async pgsql connections and non-blocking queries
2014-03-17 07:55:42 -06:00
Daniel Lowrey 2ee4c987e6 Support async pgsql connections and non-blocking queries
- New functions (each accepts a pgsql $connection resource):

  . pg_connect_poll
  . pg_socket
  . pg_consume_input
  . pg_flush

- Modified functions

  The following functions now additionally return zero if the
  underlying socket is set to non-blocking mode and the send
  operation does not complete immediately. Previously these
  functions returned only boolean TRUE/FALSE and blocked
  execution while polling until all data was sent:

  . pg_send_execute
  . pg_send_prepare
  . pg_send_query
  . pg_send_query_params

- New constants

  Used with pg_connect() to initiate an asynchronous connection
  attempt:

  . PGSQL_CONNECT_ASYNC

  Used with pg_connection_status() to determine the current state
  of an async connection attempt:

  . PGSQL_CONNECTION_STARTED
  . PGSQL_CONNECTION_MADE
  . PGSQL_CONNECTION_AWAITING_RESPONSE
  . PGSQL_CONNECTION_AUTH_OK
  . PGSQL_CONNECTION_SSL_STARTUP
  . PGSQL_CONNECTION_SETENV

  Used with pg_connect_poll() to determine the result of an
  async connection attempt:

  . PGSQL_POLLING_FAILED
  . PGSQL_POLLING_READING
  . PGSQL_POLLING_WRITING
  . PGSQL_POLLING_OK
  . PGSQL_POLLING_ACTIVE

- Polling via returned pg_socket() stream

  pg_socket() returns a read-only socket stream that may be
  cast to a file descriptor for select (and similar) polling
  operations. Blocking behavior of the pgsql connection socket
  can be controlled by calling stream_set_blocking() on the
  stream returned by pg_socket().
2014-03-17 06:31:15 -06:00
Bob Weinand 1401314a1b Fixed one major bug in phpdbg_btree_delete
There is some bug when arrays/property tables are deleted: the children are not notified

(Considering now to overwrite the dtor of the array)
2014-03-17 06:19:14 -04:00
Anatol Belski 87958f8cf7 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  fix macros
2014-03-17 11:15:13 +01:00
Anatol Belski 1ad45a3741 fix macros 2014-03-17 11:14:33 +01:00
Anatol Belski 81fc3398c1 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-03-17 11:08:17 +01:00
Anatol Belski 263572fbe3 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  Fix bug #66873: check if obj->src is set
  updated NEWS
  updated to oniguruma to 5.9.5
2014-03-17 11:07:54 +01:00
Anatol Belski 300a8df8f4 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Fix bug #66873: check if obj->src is set
  updated NEWS
  updated to oniguruma to 5.9.5

Conflicts:
	ext/intl/converter/converter.c
2014-03-17 10:37:46 +01:00
Rouven Weßling 2148a88b3d Add hash_equals() to perform string comparisons that are not vulnerable to timing attacks. 2014-03-17 09:37:28 +01:00
Stanislav Malyshev 5b6c416002 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #66873: check if obj->src is set
2014-03-17 01:20:31 -07:00
Stanislav Malyshev 2499b6518c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #66873: check if obj->src is set
2014-03-17 01:20:09 -07:00
Stanislav Malyshev 66bf216c66 Fix bug #66873: check if obj->src is set 2014-03-17 01:19:02 -07:00
Bob Weinand f887960f9b removed some weird crash when freeing to early 2014-03-16 22:37:33 +01:00
Bob Weinand 98025a40b8 Cleanup 2014-03-16 20:04:08 +01:00
Bob Weinand 3fcdd6ab0f Added WINDOWS support for watchpoints
Actually it mainly works by just a bit macro substitution and function
redeclarations.
So it leaves the code working on UNIX mostly untouched.

I needed to substitute the allocating functions by a Virtual*() functions
wrapper to use VirtualProtect() on the memory.
2014-03-16 19:39:02 +01:00
Anatol Belski 511ea15808 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated to oniguruma to 5.9.5
2014-03-15 18:00:38 +01:00
Anatol Belski 7c904c6cbd updated NEWS 2014-03-15 18:00:16 +01:00
Anatol Belski f5ebea91b0 updated to oniguruma to 5.9.5 2014-03-15 17:56:04 +01:00
Julio Pintos 4c70701e58 fix file descriptor leak of epollfd 2014-03-14 16:47:30 -03:00
Anatol Belski aa0c920cc5 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-03-14 12:36:50 +01:00
Anatol Belski c302a31491 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  NEWS
  NEWS
  NEWS
  Fixed Bug #66833 Default digest algo is still MD5
  reorder the struct members which reduces its size by at least 112 bytes
  arg count is zend_size_t now, fix type
  Fix 5.5.10 NEWS
  fix declarations
  Typo fix: sicret -> secret
2014-03-14 12:27:09 +01:00
Anatol Belski 78fef11fe5 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  NEWS
  NEWS
  NEWS
  Fixed Bug #66833 Default digest algo is still MD5
  Fix 5.5.10 NEWS
  Typo fix: sicret -> secret
2014-03-14 12:21:20 +01:00
Remi Collet 90ea07a25c Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  NEWS
  Fixed Bug #66833 Default digest algo is still MD5
  Fix 5.5.10 NEWS
2014-03-14 09:53:35 +01:00
Remi Collet 8cde747336 NEWS 2014-03-14 09:53:11 +01:00
Remi Collet 89dc5924c9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  NEWS
  Fixed Bug #66833 Default digest algo is still MD5
  Fix 5.5.10 NEWS
2014-03-14 09:52:47 +01:00
Remi Collet 80fa2ff646 NEWS 2014-03-14 09:52:37 +01:00
Remi Collet e1d8c0a051 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Fixed Bug #66833 Default digest algo is still MD5
2014-03-14 09:52:02 +01:00
Remi Collet 87a87c6682 NEWS 2014-03-14 09:51:53 +01:00
Remi Collet 17f6391bf8 Fixed Bug #66833 Default digest algo is still MD5
Switch to SHA1, which match internal openssl hardcoded algo.

In most case, won't even be noticed
- priority on user input (default_md)
- fallback on system config
- fallback on this default value

Recent system reject MD5 digest, noticed in bug36732.phpt failure.

While SHA1 is better than MD5, SHA256 is recommenced,
and defined as default algo in provided configuration on
recent system (Fedora 21, RHEL-7, ...). But the idea is to
keep in sync with openssl internal value for PHP internal value.
2014-03-14 09:50:15 +01:00
Anatol Belski beac52a78b reorder the struct members which reduces its size by at least 112 bytes 2014-03-13 18:28:22 +01:00
Anatol Belski 39fa14d089 arg count is zend_size_t now, fix type 2014-03-13 18:26:43 +01:00
David Zülke db6c33875c Fix 5.5.10 NEWS
The FPM change didn't make it into 5.5.10 but will instead be in 5.5.11; http://php.net/Changelog-5.php, the release and the NEWS file in the release accurately reflect this, but the 5.5 branch NEWS doesn't (as the release was made and tagged from the last RC, which didn't contain that change yet).
2014-03-13 16:51:44 +01:00
Anatol Belski 3a66f6343c fix declarations 2014-03-13 05:47:31 -07:00
Lior Kaplan 14731a7501 Merge branch 'PHP-5.6'
* PHP-5.6:
  Typo fix: sicret -> secret
2014-03-13 12:43:15 +02:00
Lior Kaplan f120463efe Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Typo fix: sicret -> secret
2014-03-13 12:41:48 +02:00
Lior Kaplan 356c442558 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Typo fix: sicret -> secret
2014-03-13 12:40:14 +02:00
Michael Meyer 737c187013 Typo fix: sicret -> secret 2014-03-13 12:37:25 +02:00
Anatol Belski 386d326e8a Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-03-13 11:17:04 +01:00
Anatol Belski b4c627c826 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  fix array types for pass by ref
  fix macro
  updated libs_version.txt
2014-03-13 11:16:55 +01:00
Anatol Belski af0bc1a306 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  updated libs_version.txt
2014-03-13 11:16:12 +01:00
Anatol Belski 65fcde6651 fix array types for pass by ref 2014-03-13 11:02:05 +01:00
Anatol Belski be0563b5b0 fix macro 2014-03-13 10:50:30 +01:00
Anatol Belski 21db15ed1d Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libs_version.txt
2014-03-13 10:31:26 +01:00
Anatol Belski f0634b5be5 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated libs_version.txt

Conflicts:
	win32/build/libs_version.txt
2014-03-13 10:31:03 +01:00
Anatol Belski f7b9c12ed9 updated libs_version.txt 2014-03-13 10:28:04 +01:00
Anatol Belski 90bf37bff9 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-03-13 10:19:02 +01:00
Anatol Belski 1f094bf6f5 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  fix zpp
  Remove unneeded test
  Update NEWS
  Revert "Implement Bug #54649 Create session_serializer_name()"
  Revert "Implemented Request #11100 (session_gc() function)."
  made libgd recognize the 9 version series
  fix include search
  NEWS
  NEWS
  Fix bug  #66887 imagescale - poor quality of scaled image
  NEWS
  Fixed Bug #66893i imagescale ignore method argument
  Add SKIPIF in GMP test
  Fix hash_pbkdf2() with missing $length argument
  typo in NEWS
  typo in NEWS
  NEWS
  NEWS
  Fixed Bug #66890 imagescale segfault
  Updated UPGRADING to cover PDO_pgsql changes
2014-03-13 10:18:50 +01:00
Anatol Belski 5ea53dc6df fix zpp 2014-03-13 10:16:19 +01:00
Anatol Belski 3fdbb0d39f Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Remove unneeded test
  Update NEWS
  Revert "Implement Bug #54649 Create session_serializer_name()"
  Revert "Implemented Request #11100 (session_gc() function)."
  made libgd recognize the 9 version series
  fix include search
  NEWS
  NEWS
  Fix bug  #66887 imagescale - poor quality of scaled image
  NEWS
  Fixed Bug #66893i imagescale ignore method argument
  Add SKIPIF in GMP test
  Fix hash_pbkdf2() with missing $length argument
  typo in NEWS
  typo in NEWS
  NEWS
  NEWS
  Fixed Bug #66890 imagescale segfault
  Updated UPGRADING to cover PDO_pgsql changes

Conflicts:
	ext/gd/gd.c
	ext/hash/hash.c
	ext/session/session.c
2014-03-13 08:38:58 +01:00
Yasuo Ohgaki ea72093259 Merge branch 'PHP-5.6'
* PHP-5.6:
  Remove unneeded test
2014-03-13 06:55:10 +09:00
Yasuo Ohgaki 973f379efc Remove unneeded test 2014-03-13 06:54:52 +09:00
Yasuo Ohgaki 96d25b4b76 Update NEWS 2014-03-13 06:34:46 +09:00
Yasuo Ohgaki 0021095c40 Merge branch 'PHP-5.6'
* PHP-5.6:
  Revert "Implement Bug #54649 Create session_serializer_name()"
  Revert "Implemented Request #11100 (session_gc() function)."
2014-03-13 06:33:28 +09:00
Yasuo Ohgaki 6f0ad9ea12 Revert "Implement Bug #54649 Create session_serializer_name()"
This reverts commit 678ec30655.

Conflicts:
	ext/session/tests/session_serializer_name_basic.phpt
2014-03-13 06:32:49 +09:00
Yasuo Ohgaki 7dec5789fe Revert "Implemented Request #11100 (session_gc() function)."
This reverts commit 54a42f0d0c.

Conflicts:
	ext/session/tests/session_gc_basic.phpt
2014-03-13 06:30:32 +09:00
Anatol Belski f407482fcc Merge branch 'PHP-5.6'
* PHP-5.6:
  made libgd recognize the 9 version series
2014-03-12 19:31:21 +01:00
Anatol Belski 0bf5bce6ad Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  made libgd recognize the 9 version series
2014-03-12 19:31:07 +01:00
Anatol Belski 3f049bcff2 made libgd recognize the 9 version series 2014-03-12 19:30:27 +01:00
Anatol Belski 983e105d6b Merge branch 'PHP-5.6'
* PHP-5.6:
  fix include search
2014-03-12 19:25:44 +01:00
Anatol Belski 75486555c2 fix include search 2014-03-12 19:25:20 +01:00
Remi Collet 1db6ecc235 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  Fix bug  #66887 imagescale - poor quality of scaled image
2014-03-12 17:13:55 +01:00
Remi Collet 78cee12561 NEWS 2014-03-12 17:13:47 +01:00
Remi Collet 44c0581e0c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  Fix bug  #66887 imagescale - poor quality of scaled image
2014-03-12 17:13:31 +01:00
Remi Collet 495d5335f9 NEWS 2014-03-12 17:13:24 +01:00
Remi Collet 862c006da1 Fix bug #66887 imagescale - poor quality of scaled image
Issue with signed char overflow.

Upstream fix:
https://bitbucket.org/libgd/gd-libgd/commits/4b86e06937bc5ff116be969137f8da9d1a7869d5
2014-03-12 17:10:51 +01:00
Remi Collet a498e64914 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  Fixed Bug #66893i imagescale ignore method argument
2014-03-12 15:36:52 +01:00
Remi Collet 4a1efa350a NEWS 2014-03-12 15:36:38 +01:00
Remi Collet 5bd13c5231 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed Bug #66893i imagescale ignore method argument
2014-03-12 15:36:08 +01:00
Remi Collet f2d5b2b6c6 Fixed Bug #66893i imagescale ignore method argument
We also have our goto fail; bug.

Upstream fix for libgd
https://bitbucket.org/libgd/gd-libgd/commits/5b42b1178c37ffd30c9a15733058656be0277da0
2014-03-12 15:35:42 +01:00
Nikita Popov e2a5859b2f Merge branch 'PHP-5.6' 2014-03-12 14:17:27 +01:00
Nikita Popov 5e93a213f6 Add SKIPIF in GMP test 2014-03-12 14:17:08 +01:00
Nikita Popov e617dfbdf3 Merge branch 'PHP-5.5' into PHP-5.6 2014-03-12 14:16:58 +01:00
Nikita Popov 06bbb657ad Fix hash_pbkdf2() with missing $length argument
Also change the type of some string length variables to ensure
that the zpp call works correctly on platforms where sizeof(int)
!= sizeof(long).
2014-03-12 14:16:18 +01:00
Remi Collet bc8095350d Merge branch 'PHP-5.6'
* PHP-5.6:
  typo in NEWS
  typo in NEWS
2014-03-12 14:08:36 +01:00
Remi Collet 0bccd48d3f typo in NEWS 2014-03-12 14:08:25 +01:00
Remi Collet a912fb498e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  typo in NEWS
2014-03-12 14:08:09 +01:00
Remi Collet 68f318a422 typo in NEWS 2014-03-12 14:08:02 +01:00
Remi Collet ee06def81b Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  Fixed Bug #66890 imagescale segfault
2014-03-12 13:47:36 +01:00
Remi Collet 081e2b9928 NEWS 2014-03-12 13:47:10 +01:00
Remi Collet c8c1205d84 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  Fixed Bug #66890 imagescale segfault
2014-03-12 13:46:51 +01:00
Remi Collet 119821a452 NEWS 2014-03-12 13:46:29 +01:00
Remi Collet dada2f550f Fixed Bug #66890 imagescale segfault
zend_parse_parameters "l" expect long, not int
2014-03-12 13:44:58 +01:00
Matteo Beccati f35aba1874 Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated UPGRADING to cover PDO_pgsql changes
2014-03-12 12:32:25 +01:00
Matteo Beccati f0da85b492 Updated UPGRADING to cover PDO_pgsql changes 2014-03-12 12:31:04 +01:00
Yasuo Ohgaki ca927bb47e Add missing E_DEPRECATED error for https://wiki.php.net/rfc/default_encoding 2014-03-12 17:54:22 +09:00
Anatol Belski bda12b052a Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-03-12 09:06:05 +01:00
Anatol Belski c6f5be6427 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  Updated NEWS
  Added new PDO::PGSQL_ATTR_DISABLE_PREPARES that uses PQexecParams
  Deprecated PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT
  Drop PDO support for extremely old libpq versions
  Fix compile error with theoretically supported versions of libcurl < 7.12.3.
2014-03-12 09:05:51 +01:00
Anatol Belski 63d06ce9b0 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Updated NEWS
  Added new PDO::PGSQL_ATTR_DISABLE_PREPARES that uses PQexecParams
  Deprecated PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT
  Drop PDO support for extremely old libpq versions
  Fix compile error with theoretically supported versions of libcurl < 7.12.3.

Conflicts:
	ext/pdo_pgsql/pdo_pgsql.c
	ext/pdo_pgsql/pgsql_driver.c
2014-03-12 09:02:39 +01:00
Matteo Beccati f702bf3178 Merge branch 'PHP-5.6'
* PHP-5.6:
  Added new PDO::PGSQL_ATTR_DISABLE_PREPARES that uses PQexecParams
  Deprecated PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT
  Drop PDO support for extremely old libpq versions
2014-03-11 23:30:18 +01:00
Matteo Beccati 1241a63931 Updated NEWS 2014-03-11 23:28:53 +01:00
Matteo Beccati e378348a31 Added new PDO::PGSQL_ATTR_DISABLE_PREPARES that uses PQexecParams
Faster than prepared statements when queries are run once. Slightly
slower than PDO::ATTR_EMULATE_PREPARES but without the potential
security implications of embedding parameters in the query itself.
2014-03-11 23:10:48 +01:00
Matteo Beccati d72621ab9e Deprecated PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT 2014-03-11 23:10:48 +01:00
Matteo Beccati b1ffea3ccc Drop PDO support for extremely old libpq versions
configure will now fail if any of the following function is missing:
* PQprepare
* PQexecParams
* PQescapeStringConn
* PQescapeByteaConn
2014-03-11 23:10:47 +01:00
Adam Harvey 4ab192908f Merge branch 'PHP-5.6' 2014-03-11 11:07:21 -07:00
Adam Harvey 1a14eb53c4 Merge branch 'PHP-5.5' into PHP-5.6 2014-03-11 11:06:39 -07:00
Adam Harvey f8252aa537 Fix compile error with theoretically supported versions of libcurl < 7.12.3. 2014-03-11 11:04:26 -07:00
Anatol Belski 7fbf929125 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-03-11 16:36:35 +01:00
Anatol Belski 7d770a9d50 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  fix path separator
  Use /dev/urandom as the default mcrypt_create_iv() source
  Add tests for bug #66872 and gmp_[rem]root
  Fixed mcrypt test case
  Removed bogus loops
  restored the old code in 5.4/5 related to bug #66872
2014-03-11 16:36:12 +01:00
Anatol Belski f224455520 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  fix path separator
2014-03-11 16:30:43 +01:00
Anatol Belski 664b38a21d Merge branch 'PHP-5.6'
* PHP-5.6:
  fix path separator
2014-03-11 16:29:53 +01:00
Anatol Belski adca4c355c fix path separator 2014-03-11 16:29:30 +01:00
Anatol Belski adbb44537a Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Use /dev/urandom as the default mcrypt_create_iv() source
  Add tests for bug #66872 and gmp_[rem]root
  Fixed mcrypt test case
  Removed bogus loops
  restored the old code in 5.4/5 related to bug #66872

Conflicts:
	ext/mcrypt/mcrypt.c
2014-03-11 15:32:07 +01:00
Bob Weinand 7a9e3e422f Added support for recursive watchpoints deletion 2014-03-11 09:11:27 -04:00
Nikita Popov 32103286de Merge branch 'PHP-5.6' 2014-03-11 14:06:57 +01:00
Nikita Popov fd5fbba98c Use /dev/urandom as the default mcrypt_create_iv() source
Also fixes the ARGINFO for mcrypt_create_iv() and adds missing
UPGRADING entries.
2014-03-11 14:06:13 +01:00
Nikita Popov a117e6b937 Add tests for bug #66872 and gmp_[rem]root 2014-03-11 14:06:12 +01:00
Tjerk Meesters 03e9878c78 Fixed mcrypt test case 2014-03-11 20:49:41 +08:00
Tjerk Meesters ea72a9b771 Merge branch 'PHP-5.6' 2014-03-11 19:17:11 +08:00
Tjerk Meesters ffc0f8a16f Merge branch 'php-5.5' into PHP-5.6 2014-03-11 19:16:13 +08:00
Tjerk Meesters cb5178a450 Merge branch 'PHP-5.4' into PHP-5.5 2014-03-11 19:14:43 +08:00
Tjerk Meesters ddd7ed9b24 Removed bogus loops 2014-03-11 19:08:18 +08:00
Anatol Belski 4bebb23d00 Merge branch 'PHP-5.6'
* PHP-5.6:
  restored the old code in 5.4/5 related to bug #66872
2014-03-11 11:53:42 +01:00
Anatol Belski 54a18f3be6 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  restored the old code in 5.4/5 related to bug #66872
2014-03-11 11:53:17 +01:00
Anatol Belski 72050af855 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  restored the old code in 5.4/5 related to bug #66872
2014-03-11 11:51:35 +01:00
Anatol Belski 1a624e27a6 restored the old code in 5.4/5 related to bug #66872
The crash is reproducable in 5.6+ only, so 5.4 and 5.5 are fine
with the old code.
2014-03-11 11:50:14 +01:00
Bob Weinand 008842c7fa Added COW handling and fixed various bugs 2014-03-11 06:14:32 -04:00
Anatol Belski b873bb63c5 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  inject it directly. This is not C++ and I don't want to use hacks with similar structures that are binary compatible. Better be explicit.

Conflicts:
	ext/mysqlnd/mysqlnd_structs.h
2014-03-11 09:58:36 +01:00
Anatol Belski b99af06dfe Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  Fixed Bug #66875 (Improve performance of multi-row OCI_RETURN_LOB queries)
2014-03-11 09:56:44 +01:00
Anatol Belski 78bbfd7fac Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Fixed Bug #66875 (Improve performance of multi-row OCI_RETURN_LOB queries)
2014-03-11 09:46:41 +01:00
Anatol Belski 0ae46ce747 no need to fetch ts id here 2014-03-11 09:40:47 +01:00
Anatol Belski ddf306fdd2 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  updated libsqlite to 3.8.3.1 in 5.5 branch, too
  DI
  Switch from a single flag to a flag byte
  updated libmagic.patch
  updated libmagic.patch

Conflicts:
	Zend/zend_language_scanner.c
2014-03-11 09:40:08 +01:00
Anatol Belski bed93450cd Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  updated libsqlite to 3.8.3.1 in 5.5 branch, too
  DI
  Switch from a single flag to a flag byte
  updated libmagic.patch
  updated libmagic.patch
  update NEWS
  fix #66872, invalid argument crashes gmp_testbit
  fix #66872, invalid argument crashes gmp_testbit
  update news
  - fix #66869, Invalid 2nd argument crashes imageaffinematrixget
  add vc12 (2013)
  add vc12 (2013)

Conflicts:
	Zend/zend_ini_scanner.c
	Zend/zend_language_scanner.c
	ext/mysqlnd/mysqlnd_structs.h
2014-03-11 09:26:05 +01:00
Christopher Jones cc409199f9 Merge branch 'master' of https://git.php.net/repository/php-src
# By Andrey Hristov (3) and Anatol Belski (1)
# Via Andrey Hristov (8) and others
* 'master' of https://git.php.net/repository/php-src:
  inject it directly. This is not C++ and I don't want to use hacks with similar structures that are binary compatible. Better be explicit.
  updated libsqlite to 3.8.3.1 in 5.5 branch, too
  DI
  Switch from a single flag to a flag byte
2014-03-10 16:46:43 -07:00
Christopher Jones f0ec533573 Merge branch 'PHP-5.6' of https://git.php.net/repository/php-src into PHP-5.6
# By Pierre Joye (7) and others
# Via Pierre Joye (10) and others
* 'PHP-5.6' of https://git.php.net/repository/php-src:
  updated libsqlite to 3.8.3.1 in 5.5 branch, too
  DI
  Switch from a single flag to a flag byte
  update NEWS
  fix #66872, invalid argument crashes gmp_testbit
  fix #66872, invalid argument crashes gmp_testbit
  update news
  - fix #66869, Invalid 2nd argument crashes imageaffinematrixget
  add vc12 (2013)
  add vc12 (2013)
2014-03-10 16:46:42 -07:00
Christopher Jones 3a8282ed0f Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
# By Pierre Joye (7) and Anatol Belski (1)
# Via Pierre Joye (7) and Anatol Belski (1)
* 'PHP-5.5' of https://git.php.net/repository/php-src:
  updated libsqlite to 3.8.3.1 in 5.5 branch, too
  update NEWS
  fix #66872, invalid argument crashes gmp_testbit
  fix #66872, invalid argument crashes gmp_testbit
  update news
  - fix #66869, Invalid 2nd argument crashes imageaffinematrixget
  add vc12 (2013)
  add vc12 (2013)
2014-03-10 16:46:40 -07:00
Christopher Jones 4dc8610d34 Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4
# By Pierre Joye
# Via Pierre Joye
* 'PHP-5.4' of https://git.php.net/repository/php-src:
  fix #66872, invalid argument crashes gmp_testbit
  fix #66872, invalid argument crashes gmp_testbit
  add vc12 (2013)
2014-03-10 16:46:39 -07:00
Christopher Jones de4ff2c5a4 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed Bug #66875 (Improve performance of multi-row OCI_RETURN_LOB queries)
2014-03-10 16:34:21 -07:00
Christopher Jones 601367ee75 Fixed Bug #66875 (Improve performance of multi-row OCI_RETURN_LOB queries) 2014-03-10 16:33:35 -07:00
Andrey Hristov fa2e8615bf Merge branch 'master' of git.php.net:php-src 2014-03-10 19:24:29 +02:00
Andrey Hristov 5e836b443c Merge branch 'PHP-5.6' 2014-03-10 19:16:22 +02:00
Andrey Hristov d2a291393a inject it directly. This is not C++ and I don't want to use hacks with similar structures
that are binary compatible. Better be explicit.
2014-03-10 19:15:30 +02:00
Anatol Belski c946d7f086 Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6 2014-03-10 17:52:51 +01:00
Anatol Belski 6cac2eec27 Merge branch 'master' of git.php.net:php-src 2014-03-10 17:52:32 +01:00
Anatol Belski 720522a24d Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libsqlite to 3.8.3.1 in 5.5 branch, too
2014-03-10 17:51:05 +01:00
Anatol Belski dc87c208fd Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated libsqlite to 3.8.3.1 in 5.5 branch, too
2014-03-10 17:50:45 +01:00
Anatol Belski 73b3f58bcd updated libsqlite to 3.8.3.1 in 5.5 branch, too 2014-03-10 17:49:35 +01:00
Andrey Hristov 3456d47235 Merge branch 'PHP-5.6' 2014-03-10 18:19:22 +02:00
Andrey Hristov 73f03a47d0 DI 2014-03-10 18:18:56 +02:00
Andrey Hristov 07738a0f2b Merge branch 'PHP-5.6' 2014-03-10 17:52:48 +02:00
Andrey Hristov 16043b261f Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6 2014-03-10 17:34:18 +02:00
Andrey Hristov 2cece8574f Merge branch 'master' of git.php.net:php-src 2014-03-10 17:34:08 +02:00
Pierre Joye 8391277fb8 Merge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4
# By Anatol Belski
# Via Anatol Belski
* 'PHP-5.4' of git.php.net:php-src:
  updated libmagic.patch
2014-03-10 16:31:09 +01:00
Pierre Joye a92240e209 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
# By Anatol Belski (1) and others
# Via Anatol Belski
* 'PHP-5.5' of git.php.net:php-src:
  updated libmagic.patch
  Fix indentation
  Do not remove *.1, it's not generated by make but configure
2014-03-10 16:30:05 +01:00
Pierre Joye 52a44a736b Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6
# By Anatol Belski (2) and others
# Via Anatol Belski (3) and others
* 'PHP-5.6' of git.php.net:php-src:
  updated libmagic.patch
  updated libmagic.patch
  Fix indentation
  Do not remove *.1, it's not generated by make but configure
  Fix typo: entory -> entry
2014-03-10 16:28:41 +01:00
Pierre Joye b1e661e0c5 Merge branch 'master' of git.php.net:php-src
# By Anatol Belski
# Via Anatol Belski
* 'master' of git.php.net:php-src:
  updated libmagic.patch
  updated libmagic.patch
  fix ZTS
2014-03-10 16:26:57 +01:00
Andrey Hristov f995187d34 Merge branch 'PHP-5.6' 2014-03-10 17:26:13 +02:00
Andrey Hristov 990f9c8f3f Switch from a single flag to a flag byte 2014-03-10 17:25:53 +02:00
Anatol Belski cfe1a63f4d Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libmagic.patch
  updated libmagic.patch
2014-03-10 14:18:06 +01:00
Anatol Belski 8bda4c685a updated libmagic.patch 2014-03-10 14:17:47 +01:00
Anatol Belski 6dd80946a2 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated libmagic.patch
2014-03-10 14:14:01 +01:00
Anatol Belski c17fd65165 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated libmagic.patch
2014-03-10 14:13:15 +01:00
Anatol Belski b9d494a33b updated libmagic.patch 2014-03-10 14:12:20 +01:00
Bob Weinand b033c4fa28 Added handling of zval separation (aka watchpoint changes) 2014-03-10 09:10:27 -04:00
Anatol Belski 82c056235a Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  fix ZTS
  update NEWS
  fix #66872, invalid argument crashes gmp_testbit
  fix #66872, invalid argument crashes gmp_testbit
  update news
  - fix #66869, Invalid 2nd argument crashes imageaffinematrixget
  Fixed mcrypt test case
  add vc12 (2013)
  add vc12 (2013)

Conflicts:
	ext/openssl/openssl.c
2014-03-10 12:45:17 +01:00
Anatol Belski b582be1e23 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  Fix indentation
2014-03-10 12:33:02 +01:00
Anatol Belski be9c9da186 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Fix indentation
2014-03-10 12:30:09 +01:00
Anatol Belski 4b9cf5468a Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport: (48 commits)
  more fixes to ext/mcrypt
  partly revert the wrong merge
  Do not remove *.1, it's not generated by make but configure
  Fix typo: entory -> entry
  after merge fixes
  updated NEWS
  removed the libsqlite patch as it's not relevant anymore
  updated bundled libsqlite to 3.8.3.1
  add OPSYS_Z_CPM missing constant
  Update php.ini files (new openssl directives)
  Fixed null termination
  Updated NEWS for #65545
  Updated NEWS for #65545
  Add fread(length) method
  Updated news for #66822
  Allow T_POW in constant expressions
  Fix typo
  Fix #66698: Add fnv1a32 and fnv1a64 hash options
  Fix HTML entity table generation
  Add test for bug #62102 / RFC 2144
  ...

Conflicts:
	ext/openssl/openssl.c
	ext/openssl/xp_ssl.c
2014-03-10 12:28:00 +01:00
Anatol Belski dd7ecf2c5b fix ZTS 2014-03-10 12:24:32 +01:00
Pierre Joye 6d6da2f189 Merge branch 'PHP-5.6'
* PHP-5.6:
  update NEWS
  fix #66872, invalid argument crashes gmp_testbit
  fix #66872, invalid argument crashes gmp_testbit
  add vc12 (2013)
2014-03-10 12:19:36 +01:00
Pierre Joye 5f88102fca Merge branch 'master' of git.php.net:php-src
# By Andrey Hristov (1) and others
# Via Andrey Hristov (3) and others
* 'master' of git.php.net:php-src:
  Fix indentation
  Do not remove *.1, it's not generated by make but configure
  Fix typo: entory -> entry
2014-03-10 12:19:32 +01:00
Pierre Joye eef2978afc Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update NEWS
  fix #66872, invalid argument crashes gmp_testbit
  fix #66872, invalid argument crashes gmp_testbit
  add vc12 (2013)

Conflicts:
	ext/gmp/gmp.c
2014-03-10 12:18:57 +01:00
Pierre Joye cf7e73cf26 update NEWS 2014-03-10 12:12:46 +01:00
Pierre Joye d2e42d5372 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix #66872, invalid argument crashes gmp_testbit
  fix #66872, invalid argument crashes gmp_testbit
  add vc12 (2013)

Conflicts:
	win32/build/confutils.js
2014-03-10 12:10:57 +01:00
Pierre Joye 28fa31d6e5 fix #66872, invalid argument crashes gmp_testbit 2014-03-10 12:07:58 +01:00
Pierre Joye af41914e15 fix #66872, invalid argument crashes gmp_testbit 2014-03-10 12:06:40 +01:00
Pierre Joye cedc718f73 Merge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4
# By Dmitry Panin (1) and Remi Collet (1)
# Via Nikita Popov
* 'PHP-5.4' of git.php.net:php-src:
  Fix HTML entity table generation
  Set default Digest Message to use SHA1 instead of MD5 in openssl tests as MD5 signature are now rejected by newer openssl Version.
2014-03-10 12:04:04 +01:00
Andrey Hristov 9a112e00cd Merge branch 'PHP-5.6' 2014-03-10 12:55:53 +02:00
Andrey Hristov c8033ac207 Merge branch 'PHP-5.5' into PHP-5.6 2014-03-10 12:53:17 +02:00
Andrey Hristov 3a76cb2d95 Fix indentation 2014-03-10 12:52:56 +02:00
Anatol Belski 61363d4751 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Do not remove *.1, it's not generated by make but configure
  Fix typo: entory -> entry
2014-03-10 11:16:19 +01:00
Anatol Belski 8cea765858 more fixes to ext/mcrypt 2014-03-10 11:15:34 +01:00
Anatol Belski 0190e37ec6 partly revert the wrong merge 2014-03-10 09:21:12 +01:00
Xinchen Hui 29500848f6 Merge branch 'PHP-5.6' 2014-03-10 15:55:20 +08:00
Xinchen Hui aa23d754a9 Merge branch 'PHP-5.5' into PHP-5.6 2014-03-10 15:55:05 +08:00
Xinchen Hui a930e04792 Do not remove *.1, it's not generated by make but configure 2014-03-10 15:54:20 +08:00
Lior Kaplan 7cf0931f18 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix typo: entory -> entry
2014-03-09 23:07:48 +02:00
Lior Kaplan 6e16cc3528 Fix typo: entory -> entry 2014-03-09 22:58:04 +02:00
Pierre Joye c1732700db Merge branch 'PHP-5.6'
* PHP-5.6:
  update news
  - fix #66869, Invalid 2nd argument crashes imageaffinematrixget
  add vc12 (2013)
2014-03-09 21:18:23 +01:00
Pierre Joye ba79c45174 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update news
  - fix #66869, Invalid 2nd argument crashes imageaffinematrixget
  add vc12 (2013)

Conflicts:
	win32/build/confutils.js
2014-03-09 21:17:06 +01:00
Pierre Joye 1fdca8208f update news 2014-03-09 21:13:15 +01:00
Pierre Joye 8e3c2015dc - fix #66869, Invalid 2nd argument crashes imageaffinematrixget 2014-03-09 21:12:19 +01:00
Pierre Joye 0c74d5ef08 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
# By Remi Collet (6) and others
# Via Nikita Popov (1) and others
* 'PHP-5.5' of git.php.net:php-src:
  Fixed null termination
  Updated NEWS for #65545
  Add fread(length) method
  Fix HTML entity table generation
  Fix order in NEWS
  Add CVE ref (not known at release time)
  Fix NEWS for 5.5.11 fix (really not in 5.5.10)
  5.5.10 release date for NEWS
  Set default Digest Message to use SHA1 instead of MD5 in openssl tests as MD5 signature are now rejected by newer openssl Version.
  NEWS
  Fixed Bug #66815 imagecrop(): insufficient fix for NULL defer CVE-2013-7327
2014-03-09 21:11:19 +01:00
Pierre Joye bf58535965 Merge branch 'master' of git.php.net:php-src
# By Nikita Popov (10) and others
# Via Remi Collet (9) and others
* 'master' of git.php.net:php-src: (41 commits)
  updated NEWS
  removed the libsqlite patch as it's not relevant anymore
  updated bundled libsqlite to 3.8.3.1
  Fixed mcrypt test case
  add OPSYS_Z_CPM missing constant
  Update php.ini files (new openssl directives)
  Fixed null termination
  Updated NEWS for #65545
  Updated NEWS for #65545
  Add fread(length) method
  Updated news for #66822
  Allow T_POW in constant expressions
  Fix typo
  Fix #66698: Add fnv1a32 and fnv1a64 hash options
  Fix HTML entity table generation
  Add test for bug #62102 / RFC 2144
  Whitespace.
  Misc cleanup including adding the version number
  Fix order in NEWS
  Add CVE ref (not known at release time)
  ...
2014-03-09 17:06:57 +01:00
Anatol Belski 2a2649ed0a after merge fixes 2014-03-09 16:17:44 +01:00
Anatol Belski 7b8ba8e3e3 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6: (43 commits)
  updated NEWS
  removed the libsqlite patch as it's not relevant anymore
  updated bundled libsqlite to 3.8.3.1
  add OPSYS_Z_CPM missing constant
  Update php.ini files (new openssl directives)
  Fixed null termination
  Updated NEWS for #65545
  Updated NEWS for #65545
  Add fread(length) method
  Updated news for #66822
  Allow T_POW in constant expressions
  Fix typo
  Fix #66698: Add fnv1a32 and fnv1a64 hash options
  Fix HTML entity table generation
  Add test for bug #62102 / RFC 2144
  Whitespace.
  Misc cleanup including adding the version number
  Fix order in NEWS
  Add CVE ref (not known at release time)
  Fix NEWS for 5.5.11 fix (really not in 5.5.10)
  ...

Conflicts:
	ext/mcrypt/mcrypt.c
	ext/mysqlnd/mysqlnd.h
	ext/mysqlnd/mysqlnd_ps.c
	ext/mysqlnd/mysqlnd_result.c
	ext/mysqlnd/mysqlnd_result.h
	ext/mysqlnd/mysqlnd_structs.h
	ext/openssl/openssl.c
	ext/openssl/xp_ssl.c
	ext/zip/php_zip.c
2014-03-09 15:00:36 +01:00
Anatol Belski e3776042b9 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
2014-03-09 13:06:51 +01:00
Anatol Belski 7d0493219c updated NEWS 2014-03-09 13:06:32 +01:00
Anatol Belski efd983a40f Merge branch 'PHP-5.6'
* PHP-5.6:
  removed the libsqlite patch as it's not relevant anymore
2014-03-09 13:04:14 +01:00
Anatol Belski 2dd378df36 removed the libsqlite patch as it's not relevant anymore 2014-03-09 13:03:43 +01:00
Anatol Belski c34aa1cd63 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated bundled libsqlite to 3.8.3.1
2014-03-09 13:02:33 +01:00
Anatol Belski 61db86bff3 updated bundled libsqlite to 3.8.3.1 2014-03-09 13:01:48 +01:00
Bob Weinand 37ca791a91 Fixed recursive segfault in segfault handler 2014-03-08 09:52:57 -05:00
Tjerk Meesters 84efa66e4d Updated test case with expected output 2014-03-08 16:17:30 +08:00
Tjerk Meesters d09eb1504a Fixed mcrypt test case 2014-03-08 16:16:46 +08:00
Remi Collet 397b8aa2ad Merge branch 'PHP-5.6'
* PHP-5.6:
  add OPSYS_Z_CPM missing constant
2014-03-07 14:10:31 +01:00
Remi Collet 7946c5a235 add OPSYS_Z_CPM missing constant 2014-03-07 14:10:16 +01:00
Daniel Lowrey ddd855cbc2 Merge branch 'PHP-5.6'
* PHP-5.6:
  Update php.ini files (new openssl directives)
2014-03-07 05:26:48 -07:00
Daniel Lowrey ff3c6931c0 Update php.ini files (new openssl directives) 2014-03-07 05:26:37 -07:00
Tjerk Meesters 777831a24b Merge branch 'PHP-5.6' 2014-03-07 19:24:50 +08:00
Tjerk Meesters 8d3f4b647b Merge branch 'PHP-5.5' into PHP-5.6 2014-03-07 19:24:02 +08:00
Tjerk Meesters 972935cd95 Fixed null termination 2014-03-07 19:23:46 +08:00
Tjerk Meesters 7137775ec2 Merge branch 'PHP-5.6' 2014-03-07 19:01:53 +08:00
Tjerk Meesters 25d355bdb7 Updated NEWS for #65545 2014-03-07 18:57:55 +08:00
Tjerk Meesters 64906cdc38 Merge branch 'PHP-5.5' into PHP-5.6 2014-03-07 18:57:36 +08:00
Tjerk Meesters 091b7f841b Updated NEWS for #65545 2014-03-07 18:51:16 +08:00
datibbaw 3c673fed34 Add fread(length) method
Fixed off-by-one write bug

Added test
2014-03-07 18:50:33 +08:00
Bob Weinand 75435e30ae Merge branch 'PHP-5.6' 2014-03-07 07:41:16 +01:00
Bob Weinand f76d5b3104 Include the T_POW operator in constant scalar expressions 2014-03-07 07:39:20 +01:00
Tjerk Meesters be8a4474d9 Updated news for #66822 2014-03-07 09:14:27 +08:00
Tjerk Meesters 3d1fa4cb17 Allow T_POW in constant expressions 2014-03-07 09:14:27 +08:00
Christopher Jones d32e180f20 Fix typo 2014-03-06 16:49:11 -08:00
Nikita Popov 45ed85941e Merge branch 'PHP-5.6' 2014-03-06 23:39:21 +01:00
Michael M Slusarz b88387d341 Fix #66698: Add fnv1a32 and fnv1a64 hash options 2014-03-06 23:38:51 +01:00
Nikita Popov 4c3454fbdc Merge branch 'PHP-5.6' 2014-03-06 23:15:37 +01:00
Nikita Popov 200c97829d Merge branch 'PHP-5.5' into PHP-5.6 2014-03-06 23:15:30 +01:00
Nikita Popov ecf7570072 Merge branch 'PHP-5.4' into PHP-5.5 2014-03-06 23:12:41 +01:00
Dmitry Panin e2fc6b52f0 Fix HTML entity table generation 2014-03-06 23:10:31 +01:00
Nikita Popov 7220eddf9e Merge branch 'PHP-5.6' 2014-03-06 22:40:31 +01:00
Andrey Andreev eb8dfc85ce Add test for bug #62102 / RFC 2144
Using test vectors from RFC 2144, section B.1 (http://tools.ietf.org/rfc/rfc2144.txt)
2014-03-06 22:40:26 +01:00
Christopher Jones 9989af2e9b Whitespace. 2014-03-06 10:21:36 -08:00
Christopher Jones 2cf9560921 Misc cleanup including adding the version number 2014-03-06 10:16:42 -08:00
Remi Collet 4e87968821 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix order in NEWS
  Add CVE ref (not known at release time)
  Fix NEWS for 5.5.11 fix (really not in 5.5.10)
  5.5.10 release date for NEWS
2014-03-06 11:02:48 +01:00
Remi Collet a8121ca0e1 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix order in NEWS
  Add CVE ref (not known at release time)
  Fix NEWS for 5.5.11 fix (really not in 5.5.10)
  5.5.10 release date for NEWS
2014-03-06 11:02:40 +01:00
Remi Collet 70dd3f1731 Fix order in NEWS 2014-03-06 10:55:10 +01:00
Remi Collet 9acdf71194 Add CVE ref (not known at release time) 2014-03-06 10:54:18 +01:00
Remi Collet cab1894b81 Fix NEWS for 5.5.11 fix (really not in 5.5.10) 2014-03-06 10:53:07 +01:00
Julien Pauli b31a9cd4da 5.5.10 release date for NEWS 2014-03-06 10:18:10 +01:00
Remi Collet b4d65a0e94 Merge branch 'PHP-5.6'
* PHP-5.6:
  Set default Digest Message to use SHA1 instead of MD5 in openssl tests as MD5 signature are now rejected by newer openssl Version.
  Add NEWS/UPGRADING notes (openssl + curl)
2014-03-06 10:16:40 +01:00
Remi Collet 518a6ed95b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Set default Digest Message to use SHA1 instead of MD5 in openssl tests as MD5 signature are now rejected by newer openssl Version.
2014-03-06 10:16:30 +01:00
Remi Collet 7d5c11c235 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Set default Digest Message to use SHA1 instead of MD5 in openssl tests as MD5 signature are now rejected by newer openssl Version.
2014-03-06 10:16:16 +01:00
Remi Collet 721b9a7c8d Set default Digest Message to use SHA1 instead of MD5 in openssl tests
as MD5 signature are now rejected by newer openssl Version.

Noticed in RHEL-7 and Fedora 21 build.
2014-03-06 10:14:08 +01:00
Daniel Lowrey a9cdf2e2e3 Add NEWS/UPGRADING notes (openssl + curl) 2014-03-05 10:49:21 -07:00
Daniel Lowrey 1f5459572e Merge branch 'PHP-5.6'
* PHP-5.6:
  Add encrypted server SNI support
  Raise timeout to 2s, reworded ssl timeout warning
  Refactor + reorganize openssl files
2014-03-05 10:23:54 -07:00
Daniel Lowrey fad14e3180 Add encrypted server SNI support
- New "SNI_server_certs" context option maps host names to
  appropriate certs should client handshakes advertise the
  SNI extension:

    $ctx = stream_context_create(["ssl" => [
        "local_cert" => "/path/to/cert.pem",
        "SNI_server_certs" => [
            "domain1.com" => "/path/to/domain1.pem",
            "*.domain2.com" => "/path/to/domain2.pem",
            "domain3.com" => "/path/to/domain3.pem"
        ]
    ]]);

- Prefixing a "*." will utilize the matching cert if a client
  requests the primary host name or any subdomain thereof. So
  in the above example our "domain2.pem" will be used for both
  requests to "domain2.com" -and- "subdomain.domain2.com"
- The "SNI_server_certs" ctx option has no effect for client
  streams.
- SNI support is enabled by default as of 5.6 for both servers
  and clients. Servers must specify the "SNI_server_certs" array
  to actually use the SNI extension, though.
- If the `"SNI_enabled" => false` ctx option is also passed then
  "SNI_server_certs" has no effect.
- While supporting SNI by itself is enough to successfully
  negotiate the TLS handshake with many clients, servers MUST
  still specify a "local_cert" ctx option or run the risk of
  connection failures from clients that do not support the SNI
  extension.
2014-03-05 10:03:33 -07:00
datibbaw 020e161966 Raise timeout to 2s, reworded ssl timeout warning 2014-03-05 10:03:23 -07:00
Daniel Lowrey 27849c998a Refactor + reorganize openssl files
- All streams-related code now lives in xp_ssl.c. Previously
  stream code was split across both openssl.c and xp_ssl.c
- Folded superfluous php_openssl_structs.h into xp_ssl.c
- Server-specific options now set on SSL_CTX instead of SSL
- Deprecate SNI_server_name ctx option
- Miscellaneous refactoring
2014-03-05 10:03:11 -07:00
Andrey Hristov 36d3c83abd Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6 2014-03-05 16:47:16 +02:00
Andrey Hristov 1c1ee4672d Merge branch 'master' of git.php.net:php-src 2014-03-05 16:46:45 +02:00
Nikita Popov 94e308da7a Merge branch 'PHP-5.6' 2014-03-05 15:38:56 +01:00
Nikita Popov d595502d0a Add NEWS entry for mcrypt changes 2014-03-05 15:36:00 +01:00
Nikita Popov d8ed84e4c4 Use zpp for accepting encryption mode string
Leaving the non-zpp usage for the mcrypt_{MODE} functions, as
they're deprecated and I'm too lazy to update all their tests.
2014-03-05 15:32:32 +01:00
Nikita Popov eb0eac75ef Remove a number of macros that are no longer used 2014-03-05 15:32:32 +01:00
Nikita Popov e5738d3bc9 Provide expected IV length in IV error messages 2014-03-05 15:32:32 +01:00
Nikita Popov b9737aa08e Call mcrypt_module_close on error 2014-03-05 15:32:32 +01:00
Nikita Popov e4876ecbfb Print supported key sizes in error message 2014-03-05 15:32:32 +01:00
Nikita Popov 32333abe3e Clean up do_crypt code
Avoid unnecessary alloc/copy/free cycles and clean up structure in
general. Add a few extra checks for the key length.
2014-03-05 15:32:32 +01:00
Nikita Popov a861a3a93d Abort on invalid key size
Previously an incorrectly sized key was either silently padded
with NUL bytes or truncated. Especially the silent nature of this
behavior makes it extremely easy to use weak encryption. A common
mistake - which has also been extensively made in our tests - is
to use a password instead of a key.

Incorrectly sized keys will now be rejected.
2014-03-05 15:32:32 +01:00
Nikita Popov 25d801f97e Abort on missing IV if the enc_mode requires it
Previously the code fell back on using a NUL IV if no IV was
passed and the encryption mode required it. This is dangerous and
makes no sense from a practical point of view (as you could just
as well use ECB then).
2014-03-05 15:32:31 +01:00
Nikita Popov c4b7cdb41e Abort on invalid IV size
Previously, if the size of the IV did not match the block size
mcrypt would throw a warning and fall back to a NUL IV. This
behavior is both dangerous and makes no practical sense.

mcrypt_encrypt etc. will now return false if the IV has an incorrect
size.
2014-03-05 15:32:31 +01:00
Andrey Hristov 529fdd5bb0 Merge branch 'PHP-5.6' 2014-03-05 16:24:43 +02:00
Andrey Hristov 6b804b96b8 Refactor the result set data structures. Move more to the buffered and unbuffered
substructures. Add methods to these too. Preparing for pluggable interface for
returning data to the engine (zvals, c-style, something else)
2014-03-05 16:22:23 +02:00
Remi Collet 1a94fca35e Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
2014-03-05 10:46:01 +01:00
Pierre Joye d1ac107077 Merge branch 'master' of git.php.net:php-src
# By krakjoe (558) and others
# Via Anatol Belski (126) and others
* 'master' of git.php.net:php-src: (1484 commits)
  NEWS
  NEWS
  Fixed Bug #66820 out-of-bounds memory access in fileinfo
  Improves fix for memory leak, keep in sync with upstream.
  Add notice about tsrm_virtual_cwd.h moved to zend_virtual_cwd.h as this introduce need for awfull hacks...
  Fixed NEWS for #60602
  Fixed news for #60602
  Updated news for #60602
  proc_open(): separate environment values that aren't strings
  Added DateTimeImmutable::createFromMutable.
  Sort alphabetically
  Fixed NEWS.
  Capture peer cert even if verify fails
  Windows cert verify improvements + leak fixes
  turn off some false positives
  support for static analyzers other than visual studio
  fix wording
  reveal more info on the configure options
  Updated news for #66535 and #66109
  Updated news for #66535 and #66109
  ...
2014-03-05 10:45:58 +01:00
Remi Collet 1b922895fc NEWS 2014-03-05 10:45:50 +01:00
Remi Collet 3686b6bd90 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  Fixed Bug #66815 imagecrop(): insufficient fix for NULL defer CVE-2013-7327
2014-03-05 10:44:12 +01:00
Remi Collet cf89ff3d24 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  Fixed Bug #66815 imagecrop(): insufficient fix for NULL defer CVE-2013-7327
2014-03-05 10:44:04 +01:00
Remi Collet 515c103a08 NEWS 2014-03-05 10:43:45 +01:00
Remi Collet af09d8b96a Fixed Bug #66815 imagecrop(): insufficient fix for NULL defer CVE-2013-7327
This amends commit 8f4a537, which aimed to correct NULL dereference because of
missing check of gdImageCreateTrueColor() / gdImageCreate() return value.  That
commit checks for negative crop rectangle width and height, but
gdImageCreate*() can also return NULL when width * height overflows.  Hence
NULL deref is still possible, as gdImageSaveAlpha() and gdImagePaletteCopy()
is called before dst == NULL check.

This moves NULL check to happen right after gdImageCreate*().  It also removes
width and height check before gdImageCreate*(), as the same check is done by
image create functions (with an extra warning).

From thoger redhat com
2014-03-05 10:40:36 +01:00
Pierre Joye b084157d3d Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
# By Anatol Belski (38) and others
# Via Anatol Belski (23) and others
* 'PHP-5.5' of git.php.net:php-src: (325 commits)
  NEWS
  NEWS
  Fixed Bug #66820 out-of-bounds memory access in fileinfo
  Improves fix for memory leak, keep in sync with upstream.
  Fixed news for #60602
  Updated news for #60602
  proc_open(): separate environment values that aren't strings
  Fixed NEWS.
  Updated news for #66535 and #66109
  Updated NEWS for #66535
  don't compare constants on run time
  substr_compare(): Allow zero length comparison
  Fixed test case title
  [bug 66535] X-PHP-Originating-Script adds newline if no custom headers are given
  Fixed expected output of a few cURL test cases
  Allow NULL as value for CURLOPT_CUSTOMREQUEST option.
  man page: long option name is --strip, not --stripped
  --global have be removed in 5.2
  typo spotted by Lajos Veres
  update libs_version.txt
  ...
2014-03-05 10:37:04 +01:00
Pierre Joye e590aceb5a Merge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4
# By Anatol Belski (22) and others
# Via Derick Rethans (5) and others
* 'PHP-5.4' of git.php.net:php-src: (176 commits)
  NEWS
  Fixed Bug #66820 out-of-bounds memory access in fileinfo
  Improves fix for memory leak, keep in sync with upstream.
  Updated news for #60602
  proc_open(): separate environment values that aren't strings
  Updated NEWS for #66535
  Fixed test case title
  [bug 66535] X-PHP-Originating-Script adds newline if no custom headers are given
  man page: long option name is --strip, not --stripped
  --global have be removed in 5.2
  NEWS
  test for bug #66762
  Fixed Bug #66762 Segfault in mysqli_stmt::bind_result() when link closed
  fix tests broken by 633f898f15
  add news entry
  add clear_env option to FPM config
  Reduce test noise on cross Oracle client <-> server version tests. This fix is already in PHP 5.6+
  Reduce test noise in cross Oracle client <-> server version testing. This change is already in PHP 5.6+
  fixed macro
  Make sure value is initialized
  ...
2014-03-05 10:32:42 +01:00
Remi Collet eaaf3f0f57 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  Fixed Bug #66820 out-of-bounds memory access in fileinfo
2014-03-04 20:39:11 +01:00
Remi Collet 9a9add6b73 fix merge 2014-03-04 20:39:00 +01:00
Remi Collet 014b95a0a7 NEWS 2014-03-04 20:36:31 +01:00
Remi Collet 5d08cae346 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Fixed Bug #66820 out-of-bounds memory access in fileinfo
2014-03-04 20:36:08 +01:00
Remi Collet c2a9f73c99 NEWS 2014-03-04 20:35:56 +01:00
Remi Collet a33759fd27 Fixed Bug #66820 out-of-bounds memory access in fileinfo
Upstream fix:
https://github.com/glensc/file/commit/447558595a3650db2886cd2f416ad0beba965801

Notice, test changed, with upstream agreement:
-define OFFSET_OOB(n, o, i)	((n) < (o) || (i) >= ((n) - (o)))
+define OFFSET_OOB(n, o, i)	((n) < (o) || (i) >  ((n) - (o)))
2014-03-04 20:32:52 +01:00
Anatol Belski 902824b70e Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-03-04 20:23:15 +01:00
Anatol Belski 30cad90261 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  Improves fix for memory leak, keep in sync with upstream.
  Add notice about tsrm_virtual_cwd.h moved to zend_virtual_cwd.h as this introduce need for awfull hacks...
  Fixed NEWS for #60602
  Fixed news for #60602
  Updated news for #60602
  proc_open(): separate environment values that aren't strings
  Added DateTimeImmutable::createFromMutable.
  Sort alphabetically
  Fixed NEWS.
  Capture peer cert even if verify fails
  Windows cert verify improvements + leak fixes
  Updated news for #66535 and #66109
  Updated NEWS for #66535

Conflicts:
	ext/openssl/xp_ssl.c
2014-03-04 20:20:15 +01:00
Anatol Belski b186b2774a Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Improves fix for memory leak, keep in sync with upstream.
  Add notice about tsrm_virtual_cwd.h moved to zend_virtual_cwd.h as this introduce need for awfull hacks...
  Fixed NEWS for #60602
  Fixed news for #60602
  Updated news for #60602
  proc_open(): separate environment values that aren't strings
  Added DateTimeImmutable::createFromMutable.
  Sort alphabetically
  Fixed NEWS.
  Capture peer cert even if verify fails
  Windows cert verify improvements + leak fixes
  Updated news for #66535 and #66109
  Updated NEWS for #66535

Conflicts:
	ext/standard/proc_open.c
2014-03-04 19:50:25 +01:00
Remi Collet 93f4ca0ea9 Merge branch 'PHP-5.6'
* PHP-5.6:
  Improves fix for memory leak, keep in sync with upstream.
2014-03-04 13:46:33 +01:00
Remi Collet 834b719cf5 fix merge 2014-03-04 13:46:21 +01:00
Remi Collet bc0b6e02e4 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Improves fix for memory leak, keep in sync with upstream.
2014-03-04 13:43:42 +01:00
Remi Collet 731013ee8e Improves fix for memory leak, keep in sync with upstream.
Previous fix:
http://git.php.net/?p=php-src.git;a=commitdiff;h=10eb0070700382f966bf260e44135e1f724a15d2

Upstream fix:
https://github.com/glensc/file/commit/c0c0032b9e9eb57b91fefef905a3b018bab492d9
2014-03-04 13:41:37 +01:00
Remi Collet 945d50c25c Merge branch 'PHP-5.6'
* PHP-5.6:
  Add notice about tsrm_virtual_cwd.h moved to zend_virtual_cwd.h as this introduce need for awfull hacks...
2014-03-03 15:34:02 +01:00
Remi Collet f7e381eef6 Add notice about tsrm_virtual_cwd.h moved to zend_virtual_cwd.h
as this introduce need for awfull hacks...
2014-03-03 15:33:11 +01:00
Tjerk Meesters 8a825de5b0 Merge branch 'PHP-5.6' 2014-03-03 06:00:01 +08:00
Tjerk Meesters fed56fbae8 Fixed NEWS for #60602 2014-03-03 05:59:07 +08:00
Tjerk Meesters 330ffe2e24 Merge branch 'PHP-5.5' into PHP-5.6 2014-03-03 05:58:03 +08:00
Tjerk Meesters c34f26a938 Fixed news for #60602 2014-03-03 05:57:36 +08:00
Tjerk Meesters bbd0781b39 Merge branch 'PHP-5.4' into PHP-5.5 2014-03-03 05:56:22 +08:00
Tjerk Meesters 1533f98afd Updated news for #60602 2014-03-03 05:54:09 +08:00
Tjerk Meesters e73c05b75e proc_open(): separate environment values that aren't strings
Added a test case
2014-03-03 05:49:52 +08:00
Derick Rethans 18178aa013 Merge branch 'PHP-5.6' 2014-03-02 14:18:58 -05:00
Derick Rethans 574f230d3c Added DateTimeImmutable::createFromMutable. 2014-03-02 14:18:44 -05:00
Derick Rethans b8d75cc464 Sort alphabetically 2014-03-02 14:15:30 -05:00
Derick Rethans 3eb8102348 Fixed NEWS. 2014-03-02 13:27:35 -05:00
Daniel Lowrey 41bde3f0a7 Merge branch 'PHP-5.6'
* PHP-5.6:
  Capture peer cert even if verify fails
  Windows cert verify improvements + leak fixes
2014-03-02 10:39:03 -07:00
Daniel Lowrey c126c16479 Capture peer cert even if verify fails
Previously the "capture_peer_cert" SSL context option only
captured the peer's certificate if the verification routine
succeeded.

By also capturing the on verify failure applications have the
ability to parse the cert and ask users whether they wish to
proceed given the information presented by the peer.
2014-03-02 10:35:52 -07:00
Chris Wright e8995c8cb0 Windows cert verify improvements + leak fixes
- Clean up properly at all fail points in native Windows peer
  verification routine
- Bring certificate usages and chain flags into line with chromium
  implementation in windows environments
2014-03-02 10:30:21 -07:00
Anatol Belski b1dbe97bb6 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-03-02 14:59:21 +01:00
Anatol Belski 4358b8e447 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  turn off some false positives
  fixes signed/unsigned in ext/pgsql
  more signature fixes
  fixed signatures php_uint_t vs php_size_t for len
  removed senseless unsigned < 0 check
  more zpp fixes
  fix reading unsigned from zpp
  support for static analyzers other than visual studio
  fix wording
  reveal more info on the configure options
  fixes unsigned < 0 comparsion
  Updated news for #66535 and #66109
2014-03-02 14:59:07 +01:00
Anatol Belski 816e21982e Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  turn off some false positives
2014-03-02 13:14:04 +01:00
Anatol Belski ec7935f7b5 Merge branch 'PHP-5.6'
* PHP-5.6:
  turn off some false positives
2014-03-02 12:49:58 +01:00
Anatol Belski 9d4adf4fe1 turn off some false positives 2014-03-02 12:49:30 +01:00
Anatol Belski 43d15abf72 fixes signed/unsigned in ext/pgsql 2014-03-02 11:55:32 +01:00
Anatol Belski 17a7912eff more signature fixes 2014-03-02 11:37:01 +01:00
Anatol Belski e7a92a913f fixed signatures php_uint_t vs php_size_t for len 2014-03-02 11:30:22 +01:00
Anatol Belski e993862fb5 removed senseless unsigned < 0 check 2014-03-02 11:29:37 +01:00
Anatol Belski 549b251691 more zpp fixes 2014-03-02 11:10:27 +01:00
Anatol Belski 16e4b43f8c fix reading unsigned from zpp 2014-03-02 11:05:11 +01:00
Anatol Belski 7b5c1cd562 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  support for static analyzers other than visual studio
2014-03-01 20:22:03 +01:00
Anatol Belski c0b5c290bb Merge branch 'PHP-5.6'
* PHP-5.6:
  support for static analyzers other than visual studio
2014-03-01 20:18:44 +01:00
Anatol Belski cf90bd92bf support for static analyzers other than visual studio 2014-03-01 20:15:10 +01:00
Anatol Belski 586f3a87f0 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  fix wording
  reveal more info on the configure options
  Updated news for #66535 and #66109
2014-03-01 15:12:22 +01:00
Anatol Belski 4b50f20504 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix wording
  Updated news for #66535 and #66109
2014-03-01 13:28:24 +01:00
Anatol Belski 0bbacd8678 fix wording 2014-03-01 13:28:02 +01:00
Anatol Belski db9d911093 Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6 2014-03-01 13:16:16 +01:00
Anatol Belski 91d61a2096 Merge branch 'PHP-5.6'
* PHP-5.6:
  reveal more info on the configure options
2014-03-01 13:12:08 +01:00
Anatol Belski 7c60a09cae reveal more info on the configure options 2014-03-01 13:11:35 +01:00
Anatol Belski a54d442de1 fixes unsigned < 0 comparsion 2014-03-01 11:30:49 +01:00
Tjerk Meesters 6b6b2149af Updated news for #66535 and #66109 2014-03-01 12:27:36 +08:00
Tjerk Meesters c9680697ec Updated news for #66535 and #66109 2014-03-01 12:27:22 +08:00
Tjerk Meesters 362b70a32c Updated NEWS for #66535 2014-03-01 08:47:32 +08:00
Anatol Belski ef7c911c9e Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-02-28 21:10:16 +01:00
Anatol Belski 9c1dd320d6 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport: (33 commits)
  remove temp test files
  fix typo replacement
  don't compare constants on run time
  fix macros
  more descriptor fixes
  substr_compare(): Allow zero length comparison
  Fixed test case title
  [bug 66535] X-PHP-Originating-Script adds newline if no custom headers are given
  Fixed expected output of a few cURL test cases
  Allow NULL as value for CURLOPT_CUSTOMREQUEST option.
  primitive test fixes
  man page: long option name is --strip, not --stripped
  --global have be removed in 5.2
  remove pcntl leftover from the test code
  list the fpm change hat rfc in UPGRADING
  mention the apparmor support in fpm
  typo spotted by Lajos Veres
  update libs_version.txt
  update libs_version.txt
  NEWS
  ...

Conflicts:
	ext/openssl/openssl.c
2014-02-28 21:09:55 +01:00
Anatol Belski e6ccba4b14 remove temp test files 2014-02-28 21:06:00 +01:00
Anatol Belski 3eeda5e804 fix typo replacement 2014-02-28 20:15:37 +01:00
Anatol Belski 3b37fe3bde Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  don't compare constants on run time
2014-02-28 19:42:31 +01:00
Anatol Belski 3f779b9bd2 Merge branch 'PHP-5.6'
* PHP-5.6:
  don't compare constants on run time
2014-02-28 19:39:50 +01:00
Anatol Belski af545ead97 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  don't compare constants on run time
2014-02-28 19:39:34 +01:00
Anatol Belski 36c445970e don't compare constants on run time 2014-02-28 19:38:32 +01:00
Anatol Belski 65f17d672d fix macros 2014-02-28 19:19:32 +01:00
Anatol Belski 28dbadeb1d Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6: (28 commits)
  substr_compare(): Allow zero length comparison
  Fixed test case title
  [bug 66535] X-PHP-Originating-Script adds newline if no custom headers are given
  Fixed expected output of a few cURL test cases
  Allow NULL as value for CURLOPT_CUSTOMREQUEST option.
  primitive test fixes
  man page: long option name is --strip, not --stripped
  --global have be removed in 5.2
  remove pcntl leftover from the test code
  list the fpm change hat rfc in UPGRADING
  mention the apparmor support in fpm
  typo spotted by Lajos Veres
  update libs_version.txt
  update libs_version.txt
  NEWS
  NEWS
  NEWS
  test for bug #66762
  Fixed Bug #66762 Segfault in mysqli_stmt::bind_result() when link closed
  fix tests broken by 633f898f15
  ...

Conflicts:
	ext/curl/interface.c
	ext/standard/mail.c
	ext/standard/string.c
2014-02-28 19:18:18 +01:00
Anatol Belski 2d83dca7be more descriptor fixes 2014-02-28 18:49:02 +01:00
Tjerk Meesters 0d26d655b7 Merge branch 'PHP-5.6'
* PHP-5.6:
  substr_compare(): Allow zero length comparison
2014-02-28 23:50:27 +08:00
Tjerk Meesters e424049840 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  substr_compare(): Allow zero length comparison
2014-02-28 23:48:34 +08:00
datibbaw 2e459be237 substr_compare(): Allow zero length comparison
Treat zero length comparison as always equal.
2014-02-28 23:45:04 +08:00
Tjerk Meesters d4d726bb6b Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed test case title
  [bug 66535] X-PHP-Originating-Script adds newline if no custom headers are given
2014-02-28 22:33:08 +08:00
Tjerk Meesters 43ac0ab673 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed test case title
  [bug 66535] X-PHP-Originating-Script adds newline if no custom headers are given
2014-02-28 22:31:16 +08:00
Tjerk Meesters d022c8565d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed test case title
  [bug 66535] X-PHP-Originating-Script adds newline if no custom headers are given
2014-02-28 22:30:21 +08:00
Tjerk Meesters eca13f7909 Fixed test case title 2014-02-28 22:27:32 +08:00
Tjerk Meesters 79b3c2a744 [bug 66535] X-PHP-Originating-Script adds newline if no custom headers are given
A newline is added to the mail headers when mail.add_x_header is used and no other headers are passed to mail().

The scenario in which custom headers are used was already fixed in #48620, back in 2009.
2014-02-28 22:22:07 +08:00
Tjerk Meesters 060643f5ba Merge branch '5.6'
* 5.6:
  Fixed expected output of a few cURL test cases
  Allow NULL as value for CURLOPT_CUSTOMREQUEST option.
2014-02-28 19:14:18 +08:00
Tjerk Meesters cbb2dc0788 Merge branch '5.5' into 5.6
* 5.5:
  Fixed expected output of a few cURL test cases
  Allow NULL as value for CURLOPT_CUSTOMREQUEST option.
2014-02-28 19:01:17 +08:00
Tjerk Meesters 9443fb999d Fixed expected output of a few cURL test cases 2014-02-28 18:59:06 +08:00
datibbaw 488e64dbe4 Allow NULL as value for CURLOPT_CUSTOMREQUEST option.
Added test case.

Refactored the code to isolate the string handling. Fixed return values to use SUCCESS and FAILURE.

Removed unused error variable.

Indentation fix.
Removed the ugly goto.
2014-02-28 18:27:22 +08:00
Anatol Belski bad0b4fc8c Merge branch 'PHP-5.6'
* PHP-5.6:
  primitive test fixes
2014-02-28 09:45:02 +01:00
Anatol Belski 1cb4398ac1 primitive test fixes 2014-02-28 09:43:57 +01:00
krakjoe a2d7e336e6 parse stream locations properly, bp.c still needs work for #82 2014-02-28 07:41:34 +00:00
Remi Collet 0821d3942e Merge branch 'PHP-5.6'
* PHP-5.6:
  man page: long option name is --strip, not --stripped
  --global have be removed in 5.2
2014-02-28 08:12:38 +01:00
Remi Collet 06feb15a16 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  man page: long option name is --strip, not --stripped
  --global have be removed in 5.2
2014-02-28 08:12:26 +01:00
Remi Collet 5fc7382a57 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  man page: long option name is --strip, not --stripped
  --global have be removed in 5.2
2014-02-28 08:12:16 +01:00
Remi Collet b1df743b7a man page: long option name is --strip, not --stripped 2014-02-28 08:12:03 +01:00
Remi Collet c73b0543f1 --global have be removed in 5.2 2014-02-28 08:10:01 +01:00
Rouven Weßling 09f69ca02d Fix a compiler warning in php_rand.h 2014-02-27 20:57:31 +01:00
krakjoe 623888adc0 use php streams to handle line endings better for #81 2014-02-27 19:10:59 +00:00
Anatol Belski 79063d16b9 Merge branch 'PHP-5.6'
* PHP-5.6:
  remove pcntl leftover from the test code
2014-02-27 15:51:28 +01:00
Anatol Belski 2c1385b7f5 remove pcntl leftover from the test code 2014-02-27 15:50:17 +01:00
Chris Wright 41da7f276f Allow crypto_method context value in stream_socket_enable_crypto() 2014-02-27 13:41:25 +00:00
Ferenc Kovacs e77131f5d1 Merge branch 'PHP-5.6'
* PHP-5.6:
  list the fpm change hat rfc in UPGRADING
2014-02-27 12:54:53 +01:00
Ferenc Kovacs 5abaf7cc87 list the fpm change hat rfc in UPGRADING 2014-02-27 12:54:07 +01:00
Ferenc Kovacs 4d8c167ccd Merge branch 'PHP-5.6'
* PHP-5.6:
  mention the apparmor support in fpm
2014-02-27 12:43:58 +01:00
Ferenc Kovacs 8bb84693b3 mention the apparmor support in fpm 2014-02-27 12:43:42 +01:00
Ferenc Kovacs 1bb0500a91 Merge branch 'PHP-5.6'
* PHP-5.6:
  typo spotted by Lajos Veres
2014-02-27 11:31:04 +01:00
Ferenc Kovacs bfbdc032b6 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  typo spotted by Lajos Veres
2014-02-27 11:30:23 +01:00
Ferenc Kovacs 561843c973 typo spotted by Lajos Veres 2014-02-27 11:29:08 +01:00
Anatol Belski 70b2d1d59a Merge branch 'PHP-5.6'
* PHP-5.6:
  update libs_version.txt
  update libs_version.txt
2014-02-27 09:27:06 +01:00
Anatol Belski 703154321f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update libs_version.txt

Conflicts:
	win32/build/libs_version.txt
2014-02-27 09:26:48 +01:00
Anatol Belski 603ebc70ff update libs_version.txt 2014-02-27 09:25:15 +01:00
Anatol Belski ccd4bf5147 update libs_version.txt 2014-02-27 09:23:48 +01:00
Remi Collet a5f5855db9 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  NEWS
  test for bug #66762
  Fixed Bug #66762 Segfault in mysqli_stmt::bind_result() when link closed
2014-02-27 08:50:41 +01:00
Remi Collet 6ed83d37af NEWS 2014-02-27 08:50:29 +01:00
Remi Collet fa01db3466 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  NEWS
  test for bug #66762
  Fixed Bug #66762 Segfault in mysqli_stmt::bind_result() when link closed
2014-02-27 08:50:07 +01:00
Remi Collet cb0e6124d4 NEWS 2014-02-27 08:49:56 +01:00
Remi Collet 82e92c99a6 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  test for bug #66762
  Fixed Bug #66762 Segfault in mysqli_stmt::bind_result() when link closed
2014-02-27 08:49:33 +01:00
Remi Collet 33d372a45f NEWS 2014-02-27 08:49:08 +01:00
Remi Collet 816a5d2072 test for bug #66762 2014-02-27 08:48:01 +01:00
Remi Collet 9137acc7ec Fixed Bug #66762 Segfault in mysqli_stmt::bind_result() when link closed
Each new mysqli_stmt now increase the refcount of the link object.
So the link is really destroy after all statements.

Only implemented with libmysqlclient, as mysqlnd already implement
this internally.

So, libmysqlclient and mysqlnd have the same behavior.
2014-02-27 08:45:16 +01:00
Ferenc Kovacs 6dd8a4d4f0 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix tests broken by 633f898f15
2014-02-27 02:33:20 +01:00
Ferenc Kovacs 42a43d4531 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix tests broken by 633f898f15
2014-02-27 02:32:47 +01:00
Ferenc Kovacs fd20278fa5 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix tests broken by 633f898f15
2014-02-27 02:32:07 +01:00
Ferenc Kovacs bd961f3e87 fix tests broken by 633f898f15 2014-02-27 02:31:42 +01:00
Ferenc Kovacs 1b60d39e5e Merge branch 'PHP-5.6'
* PHP-5.6:
  add missing NEWS entry
  add missing NEWS entry
  add missing NEWS entry
  add missing NEWS entry
  add missing NEWS entry
  add missing NEWS entry
2014-02-27 01:29:21 +01:00
Ferenc Kovacs afb0675e3b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  add missing NEWS entry
2014-02-27 01:28:57 +01:00
Ferenc Kovacs 1d51c43287 add missing NEWS entry 2014-02-27 01:27:53 +01:00
Ferenc Kovacs 1b8679401c add missing NEWS entry 2014-02-27 01:27:53 +01:00
Ferenc Kovacs cb9ce48d02 add missing NEWS entry 2014-02-27 01:27:52 +01:00
Ferenc Kovacs 95e0de7cfa add missing NEWS entry 2014-02-27 01:27:52 +01:00
Ferenc Kovacs b59831bc30 add missing NEWS entry 2014-02-27 01:27:52 +01:00
Ferenc Kovacs 38797e598b add missing NEWS entry 2014-02-27 01:18:11 +01:00
Daniel Lowrey 1d2181b615 Merge branch 'PHP-5.6'
* PHP-5.6:
  Remove cURL close policy related constants
2014-02-26 13:41:04 -07:00
Daniel Lowrey 4b06e0a2d0 Merge branch 'curlClosePolicy' of https://github.com/DaveRandom/php-src into PHP-5.6
* 'curlClosePolicy' of https://github.com/DaveRandom/php-src:
  Remove cURL close policy related constants
2014-02-26 13:40:16 -07:00
Daniel Lowrey ed00de58bf Merge branch 'PHP-5.6'
* PHP-5.6:
  Deprecate CN_match in favor of peer_name in SSL contexts
2014-02-26 13:24:07 -07:00
Daniel Lowrey d0a6f8c68e Deprecate CN_match in favor of peer_name in SSL contexts 2014-02-26 13:20:06 -07:00
Anatol Belski f34e4283ce Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-02-26 20:11:51 +01:00
Anatol Belski 9b4dc3a5a1 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  Update stack size in tests/func/010.phpt
  Don't add num_additional_args in SEND opcodes
  Disallow use of positional args after unpacking
  Store arg_num in fcall entry
  Introduce zend_function_call_entry structure
2014-02-26 20:11:31 +01:00
Anatol Belski 8647f4e7f5 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Update stack size in tests/func/010.phpt
  Don't add num_additional_args in SEND opcodes
  Disallow use of positional args after unpacking
  Store arg_num in fcall entry
  Introduce zend_function_call_entry structure

Conflicts:
	Zend/zend_compile.c
	Zend/zend_language_parser.y
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2014-02-26 19:17:23 +01:00
Chris Wright afc24da436 Remove cURL close policy related constants
These options don't do anything and they never have.

Refs:
  http://curl.haxx.se/libcurl/c/curl_easy_setopt.html#CURLOPTCLOSEPOLICY
  http://curl.haxx.se/mail/lib-2006-11/0301.html
2014-02-26 17:48:14 +00:00
Anatol Belski 758f73630a Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport: (23 commits)
  after merge fix
  move the default encoding NEWS entry to alpha3, as it was pushed after beta2 was tagged
  rearrange the NEWS blocks a bit
  add NEWS block for 5.6.0 beta1
  restored that test part in ext/openssl to enable notify/wait
  remove echo
  fix stdin reading in new openssl tests
  kick redundant include
  Prevent implicit function declaration when TLSEXT unavailable
  Update NEWS+UPGRADING (openssl)
  Remove test case invalidated by openssl.cafile accessibility change
  Tolerate non-standard newlines when parsing stream CA files
  Remove openssl tests that shouldn't have survived last merge
  Add openssl.cafile ini check when loading cainfo
  Change openssl directives to PHP_INI_PERDIR
  Update openssl tests with new server/client test harness
  Add peer certificate verification on windows
  add news entry
  add news entry
  add clear_env option to FPM config
  ...
2014-02-26 17:16:20 +01:00
Anatol Belski d753db3a81 after merge fix 2014-02-26 17:01:24 +01:00
Anatol Belski bd9a370701 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6: (22 commits)
  move the default encoding NEWS entry to alpha3, as it was pushed after beta2 was tagged
  rearrange the NEWS blocks a bit
  add NEWS block for 5.6.0 beta1
  restored that test part in ext/openssl to enable notify/wait
  remove echo
  fix stdin reading in new openssl tests
  kick redundant include
  Prevent implicit function declaration when TLSEXT unavailable
  Update NEWS+UPGRADING (openssl)
  Remove test case invalidated by openssl.cafile accessibility change
  Tolerate non-standard newlines when parsing stream CA files
  Remove openssl tests that shouldn't have survived last merge
  Add openssl.cafile ini check when loading cainfo
  Change openssl directives to PHP_INI_PERDIR
  Update openssl tests with new server/client test harness
  Add peer certificate verification on windows
  add news entry
  add news entry
  add clear_env option to FPM config
  add clear_env option to FPM config
  ...

Conflicts:
	ext/openssl/openssl.c
2014-02-26 16:47:49 +01:00
Nikita Popov bfd967c11f Merge branch 'PHP-5.6' 2014-02-26 16:42:55 +01:00
Nikita Popov 96d0bb7bca Update stack size in tests/func/010.phpt
Stack size is 16K nowadays. Now the test takes a more reasonable
amount of time to run...
2014-02-26 16:40:25 +01:00
Nikita Popov 95c73f99d3 Don't add num_additional_args in SEND opcodes
Now that trailing positional args are disallowed,
num_additional_args will always be zero in SEND opcodes (and
FUNC_ARG fetches).
2014-02-26 16:40:25 +01:00
Nikita Popov d3b484df82 Disallow use of positional args after unpacking
This commit disallows the use of trailing positional arguments
after argument unpacking was used. The following calls are no
longer valid:

    fn(...$array, $var);
    fn(...$array1, $var, ...$array2);

However, all of the following continue to be valid:

    fn($var, ...$array);
    fn(...$array1, ...$array2);
    fn($var, ...$array1, ...$array2);

The reason behind this change is a stack allocation issue pointed
out by Dmitry: As of PHP 5.5 the stack necessary for pushing
arguments is precomputed and preallocated, as such the individual
SEND opcodes no longer verify that there is enough stack space.
The unpacked arguments will occupy some of that preallocated
space and as such following positional arguments could write past
a stack page boundary.

An alternative resolution for this issue is to ensure that there
is enough space for the remaining arguments in the UNPACK opcode.
However making this allocation precise (rather than using a
conversative over-estimate) would require some effort. Given that
this particular aspect of the feature wasn't very popular in the
first place, it doesn't seem worth the effort.
2014-02-26 16:40:25 +01:00
Nikita Popov 2eae187949 Store arg_num in fcall entry
Instead of storing the argument number in the znode of the parameter
list, store it in fcall->arg_num. This mainly cleans up the parameter
parsing code, which previously had to duplicate all rules (this
becomes more excessive as more features are added, e.g. named params
would already require a minimum of 14 rules...)
2014-02-26 16:40:25 +01:00
Nikita Popov cefa7f8d08 Introduce zend_function_call_entry structure
Instead of directly pushing the zend_function* onto the
function_call_stack, push this structure. This allows us to store
additional data on this stack.
2014-02-26 16:40:25 +01:00
Ferenc Kovacs 45ec37fb89 Merge branch 'PHP-5.6'
* PHP-5.6:
  move the default encoding NEWS entry to alpha3, as it was pushed after beta2 was tagged
  rearrange the NEWS blocks a bit
2014-02-26 15:41:46 +01:00
Ferenc Kovacs 44053a9dae move the default encoding NEWS entry to alpha3, as it was pushed after beta2 was tagged 2014-02-26 15:29:40 +01:00
Ferenc Kovacs da4c7af358 rearrange the NEWS blocks a bit 2014-02-26 15:28:36 +01:00
Ferenc Kovacs 25941c293f Merge branch 'PHP-5.6'
* PHP-5.6:
  add NEWS block for 5.6.0 beta1
  add news entry
  add news entry
  add clear_env option to FPM config
  add clear_env option to FPM config
  Reduce test noise on cross Oracle client <-> server version tests. This fix is already in PHP 5.6+
  Reduce test noise in cross Oracle client <-> server version testing. This change is already in PHP 5.6+
2014-02-26 15:14:50 +01:00
Ferenc Kovacs 2f5ba1ef69 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  add news entry
  add news entry
  add clear_env option to FPM config
  add clear_env option to FPM config
  Reduce test noise on cross Oracle client <-> server version tests. This fix is already in PHP 5.6+
  Reduce test noise in cross Oracle client <-> server version testing. This change is already in PHP 5.6+
2014-02-26 15:13:40 +01:00
Ferenc Kovacs d18089d621 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add news entry
  add clear_env option to FPM config
2014-02-26 15:10:23 +01:00
Ferenc Kovacs 2b3483249c add NEWS block for 5.6.0 beta1 2014-02-26 15:08:08 +01:00
Anatol Belski e15fdcb09c Merge branch 'PHP-5.6'
* PHP-5.6:
  restored that test part in ext/openssl to enable notify/wait
2014-02-26 13:38:04 +01:00
Anatol Belski 9ab73c52ab restored that test part in ext/openssl to enable notify/wait 2014-02-26 13:37:20 +01:00
Anatol Belski 38f349da1f Merge branch 'PHP-5.6'
* PHP-5.6:
  remove echo
2014-02-26 12:41:57 +01:00
Anatol Belski bcff8d1b26 remove echo 2014-02-26 12:41:36 +01:00
Anatol Belski 83b2593b23 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix stdin reading in new openssl tests
2014-02-26 11:27:48 +01:00
Anatol Belski 56cbe04381 fix stdin reading in new openssl tests 2014-02-26 11:27:24 +01:00
Anatol Belski 8ece03a679 Merge branch 'PHP-5.6'
* PHP-5.6:
  kick redundant include
2014-02-26 11:24:22 +01:00
Anatol Belski 82a98f6e52 kick redundant include
this is already present from php.h
2014-02-26 11:23:43 +01:00
Daniel Lowrey b3b709f1fc Merge branch 'PHP-5.6'
* PHP-5.6:
  Prevent implicit function declaration when TLSEXT unavailable
2014-02-25 19:12:49 -07:00
Daniel Lowrey 2bc0dbab44 Prevent implicit function declaration when TLSEXT unavailable 2014-02-25 19:12:33 -07:00
Daniel Lowrey 33914b5166 Merge branch 'PHP-5.6'
* PHP-5.6:
  Remove test case invalidated by openssl.cafile accessibility change
  Tolerate non-standard newlines when parsing stream CA files
  Remove openssl tests that shouldn't have survived last merge
  Add openssl.cafile ini check when loading cainfo
  Change openssl directives to PHP_INI_PERDIR
  Update openssl tests with new server/client test harness
  Add peer certificate verification on windows
2014-02-25 13:27:10 -07:00
Daniel Lowrey 781d0b9ee3 Update NEWS+UPGRADING (openssl) 2014-02-25 13:22:16 -07:00
Daniel Lowrey bab017ddfd Remove test case invalidated by openssl.cafile accessibility change 2014-02-25 13:02:13 -07:00
Daniel Lowrey bd95716b8e Merge branch 'windowsPeerVerification' of https://github.com/DaveRandom/php-src into PHP-5.6
* 'windowsPeerVerification' of https://github.com/DaveRandom/php-src:
  Update openssl tests with new server/client test harness
  Add peer certificate verification on windows
2014-02-25 12:43:52 -07:00
Anatol Belski 4d1ab57e4f Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  add clear_env option to FPM config
2014-02-25 20:20:55 +01:00
Anatol Belski 148058cc46 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  fixed typo
  Use API instead of directly acessing the structure
  zpp readme adjustment

Conflicts:
	README.PARAMETER_PARSING_API
2014-02-25 20:20:44 +01:00
Anatol Belski 05db0cbcc0 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Use API instead of directly acessing the structure

Conflicts:
	ext/mysqli/mysqli_prop.c
2014-02-25 20:19:04 +01:00
Daniel Lowrey f8fe09dcef Tolerate non-standard newlines when parsing stream CA files 2014-02-25 09:59:13 -07:00
Daniel Lowrey a4c7ab8399 Remove openssl tests that shouldn't have survived last merge
These are .phpt files I meant to remove with the last batch as
the same functionality is now covered in other tests and these
are no longer needed.
2014-02-25 09:59:13 -07:00
Daniel Lowrey a031dc06d9 Add openssl.cafile ini check when loading cainfo 2014-02-25 09:59:13 -07:00
Daniel Lowrey 47b5873c5d Change openssl directives to PHP_INI_PERDIR
Because openssl.cafile and openssl.capath have implications for
security these directives have been changed to PHP_INI_PERDIR
(previously PHP_INI_ALL)
2014-02-25 09:59:13 -07:00
Chris Wright d6fb7b8f2e Update openssl tests with new server/client test harness 2014-02-25 16:51:50 +00:00
Chris Wright 480e4f8541 Add peer certificate verification on windows
Peer certificate verification on Windows using the native certificate store and the Windows API
2014-02-25 16:51:49 +00:00
Anatol Belski 1ccc6d0a73 fixed typo 2014-02-25 17:28:12 +01:00
Andrey Hristov ee2d5776fa Merge branch 'PHP-5.6' 2014-02-25 17:40:59 +02:00
Andrey Hristov aad7b72472 Use API instead of directly acessing the structure 2014-02-25 17:39:06 +02:00
Anatol Belski b643fcddd1 zpp readme adjustment 2014-02-25 11:05:35 +01:00
Anatol Belski feedfe178c corrections to the zpp readme 2014-02-25 10:39:38 +01:00
Antony Dovgal e1b1ef0d79 add news entry 2014-02-25 12:15:35 +04:00
Antony Dovgal 4d9c556b5d add news entry 2014-02-25 12:14:50 +04:00
Paul Annesley eb6941e902 add clear_env option to FPM config
This makes it possible to leave the envoronment as is on startup and
pass all the variables to the workers.
The default value of clear_env is "yes", preserving previous behaviour.
Patch by Paul Annesley.
2014-02-25 12:12:09 +04:00
Paul Annesley 6e15afd1be add clear_env option to FPM config
This makes it possible to leave the envoronment as is on startup and
pass all the variables to the workers.
The default value of clear_env is "yes", preserving previous behaviour.
Patch by Paul Annesley.
2014-02-25 12:06:32 +04:00
Christopher Jones a59ec5d1b0 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Reduce test noise on cross Oracle client <-> server version tests. This fix is already in PHP 5.6+
2014-02-24 17:02:16 -08:00
Christopher Jones ee7671afb5 Reduce test noise on cross Oracle client <-> server version tests.
This fix is already in PHP 5.6+
2014-02-24 17:01:30 -08:00
Christopher Jones 593505f266 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Reduce test noise in cross Oracle client <-> server version testing. This change is already in PHP 5.6+
2014-02-24 16:35:08 -08:00
Christopher Jones 8cdefd3d10 Reduce test noise in cross Oracle client <-> server version testing.
This change is already in PHP 5.6+
2014-02-24 16:33:41 -08:00
krakjoe d8ed537cd4 moar params for registered functions 2014-02-24 22:30:46 +00:00
krakjoe 4bab2d2f90 export command 2014-02-24 19:03:55 +00:00
Andrew Kehrig 85c06f17f3 Fix #50444: PDO-ODBC changes for 64-bit
This bug is also referenced in
[#61777](https://bugs.php.net/bug.php?id=61777) and is still present in
the latest stable release of the 5.5 branch. I see two tickets exist for
this problem already, and I'm just submitting these changes via github
as a reminder that this is a serious problem for anyone using PDO_ODBC
on the x64 builds.
2014-02-24 13:48:39 -05:00
krakjoe 043bfd6e2c woops+correction in help 2014-02-24 17:11:09 +00:00
Anatol Belski 56d4d97393 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  fixed macro
  add clear_env option to FPM config
  Make sure value is initialized
  We can't dereference dbh if it is NULL
2014-02-24 11:30:26 +01:00
krakjoe 85b5907e85 fix ts build 2014-02-24 09:26:03 +00:00
Anatol Belski 94cfa3a120 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  fixed macro
  add clear_env option to FPM config
  Make sure value is initialized
  We can't dereference dbh if it is NULL
2014-02-24 10:16:31 +01:00
Anatol Belski 5c3b9db84c Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed macro
  add clear_env option to FPM config
2014-02-24 10:14:09 +01:00
Anatol Belski 60ed3f78bd Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fixed macro
2014-02-24 10:13:11 +01:00
Anatol Belski bca0e5edd5 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fixed macro
2014-02-24 10:12:50 +01:00
Anatol Belski c6a4a7cad6 fixed macro 2014-02-24 10:12:18 +01:00
Paul Annesley a97ae8bc06 add clear_env option to FPM config
This makes it possible to leave the envoronment as is on startup and
pass all the variables to the workers.
The default value of clear_env is "yes", preserving previous behaviour.
Patch by Paul Annesley.
2014-02-24 11:53:40 +04:00
Antony Dovgal 29a4407914 Merge branch 'pull-request/598'
* pull-request/598:
  add clear_env option to FPM config
2014-02-24 11:52:56 +04:00
Paul Annesley a16304f836 add clear_env option to FPM config
This makes it possible to leave the envoronment as is on startup and
pass all the variables to the workers.
The default value of clear_env is "yes", preserving previous behaviour.
Patch by Paul Annesley.
2014-02-24 11:47:44 +04:00
Johannes Schlüter a61d7e6278 Merge branch 'PHP-5.6' 2014-02-23 15:00:06 +01:00
Johannes Schlüter 5c8a0c92d1 Merge branch 'PHP-5.5' into PHP-5.6 2014-02-23 14:57:21 +01:00
Johannes Schlüter 2198bbce86 Merge branch 'PHP-5.4' into PHP-5.5 2014-02-23 14:56:32 +01:00
Johannes Schlüter 3f258e6b46 Make sure value is initialized 2014-02-23 14:55:29 +01:00
Johannes Schlüter 756ee95605 We can't dereference dbh if it is NULL 2014-02-23 14:18:24 +01:00
krakjoe 4b738cee2b set colors working 2014-02-23 07:33:48 +00:00
Anatol Belski eb48e0181e Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  Fix build against older OpenSSL libs

Conflicts:
	UPGRADING
2014-02-21 23:24:51 +01:00
Anatol Belski 592a73fbca Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  fix linkage
  More openssl UPGRADING updates
  Fix build against older OpenSSL libs
  Update NEWS/UPGRADING with openssl additions
  fix macro names

Conflicts:
	NEWS
	UPGRADING
2014-02-21 23:22:02 +01:00
Anatol Belski 734d1b8e6f Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  fix linkage
2014-02-21 23:17:41 +01:00
Anatol Belski 38d02db86d Merge branch 'PHP-5.6'
* PHP-5.6:
  fix linkage
  More openssl UPGRADING updates
  Fix build against older OpenSSL libs
  Update NEWS/UPGRADING with openssl additions
2014-02-21 23:14:48 +01:00
Anatol Belski 5b6ef90bc0 fix linkage
"extern inline" looks like tricky case for portability, but extern
is required with VS. So reduce the case to a starndard one to avoid
unporbatibily.
2014-02-21 23:09:16 +01:00
krakjoe ee6cc5ba60 do not allow abbreivation of anything without alias, fixes input for sh/ev 2014-02-21 21:31:01 +00:00
Anatol Belski 90d31780c9 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  More openssl UPGRADING updates
  Fix build against older OpenSSL libs
  Update NEWS/UPGRADING with openssl additions
2014-02-21 21:55:21 +01:00
krakjoe e37144f44b moar cleanup 2014-02-21 20:46:56 +00:00
krakjoe 1b92ce9a1b call register 2014-02-21 20:42:15 +00:00
Daniel Lowrey a27db7d2da Fix build against older OpenSSL libs 2014-02-21 13:01:04 -07:00
Daniel Lowrey 865a41a6a3 More openssl UPGRADING updates 2014-02-21 12:54:37 -07:00
krakjoe bab960069c ... 2014-02-21 19:37:16 +00:00
Daniel Lowrey c3d76441d5 Fix build against older OpenSSL libs 2014-02-21 12:16:23 -07:00
krakjoe 1c5f8ca7e1 verify noargs 2014-02-21 19:05:20 +00:00
krakjoe 28debb4717 ... 2014-02-21 18:52:06 +00:00
Daniel Lowrey 58e3fcf54f Update NEWS/UPGRADING with openssl additions 2014-02-21 11:40:39 -07:00
krakjoe d1b02fe2fe ... 2014-02-21 18:12:52 +00:00
krakjoe f13fdbe9a0 update export function 2014-02-21 18:05:11 +00:00
krakjoe c3a897bf3d introduce proper support for file:#opline 2014-02-21 18:01:50 +00:00
krakjoe a6eee49326 case insensitive 2014-02-21 17:47:02 +00:00
Anatol Belski a4de08ea89 fix macro names 2014-02-21 18:21:05 +01:00
Anatol Belski ff5f498f58 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Mitigate client-initiated SSL renegotiation DoS
2014-02-21 17:52:53 +01:00
Anatol Belski 76e711fe59 after merge fix 2014-02-21 17:49:21 +01:00
Anatol Belski 264c68aed7 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  Mitigate client-initiated SSL renegotiation DoS

Conflicts:
	ext/openssl/xp_ssl.c
2014-02-21 17:46:15 +01:00
Anatol Belski 14af491490 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  after merge fix
  C89 compat
  Added information about interned strings usage
  Updated opcache version
  Added function opcache_is_script_cached(). (Danack)
  Improve OpenSSL compile flag compatibility, minor updates
  Use crypto method flags; add tlsv1.0 wrapper; add wrapper tests
  Improve server forward secrecy, refactor client SNI
  Add 'honor_cipher_order' server context option
  Add 'capture_session_meta' context option
  Disable TLS compression by default in both clients and servers
  Release ssl buffers
  Add openssl_get_cert_locations() function
  Explicitly set cert verify depth if not specified
  Strengthen default cipher list

Conflicts:
	ext/openssl/xp_ssl.c
2014-02-21 17:45:04 +01:00
krakjoe b82ad53b29 ... 2014-02-21 16:29:09 +00:00
krakjoe fde1e44d62 trim breaking commands 2014-02-21 16:18:46 +00:00
Daniel Lowrey 1268bd6045 Merge branch 'PHP-5.6'
* PHP-5.6:
  Mitigate client-initiated SSL renegotiation DoS
2014-02-21 09:15:53 -07:00
Daniel Lowrey 5389d0963c Merge branch 'reneg-limit' of https://github.com/rdlowrey/php-src into PHP-5.6
* 'reneg-limit' of https://github.com/rdlowrey/php-src:
  Mitigate client-initiated SSL renegotiation DoS
2014-02-21 09:13:55 -07:00
Anatol Belski bb9b9d7d29 after merge fix 2014-02-21 17:09:29 +01:00
krakjoe 78e8690dee conditional breakpoints working again 2014-02-21 15:00:55 +00:00
krakjoe 5db16dd989 better-ness, I think 2014-02-21 14:44:16 +00:00
Daniel Lowrey b6edbd5897 Mitigate client-initiated SSL renegotiation DoS 2014-02-21 06:31:56 -07:00
Anatol Belski 93e8fb39df Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  C89 compat
  Added information about interned strings usage
  Updated opcache version
  Added function opcache_is_script_cached(). (Danack)

Conflicts:
	ext/openssl/xp_ssl.c
2014-02-21 13:56:14 +01:00
Anatol Belski befb267ddf Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
* origin/PHP-5.6:
  Improve OpenSSL compile flag compatibility, minor updates
  Use crypto method flags; add tlsv1.0 wrapper; add wrapper tests
  Improve server forward secrecy, refactor client SNI
  Add 'honor_cipher_order' server context option
  Add 'capture_session_meta' context option
  Disable TLS compression by default in both clients and servers
  Release ssl buffers
  Add openssl_get_cert_locations() function
  Explicitly set cert verify depth if not specified
  Strengthen default cipher list

Conflicts:
	ext/openssl/openssl.c
	ext/openssl/xp_ssl.c
	ext/standard/file.c
2014-02-21 13:37:35 +01:00
Anatol Belski 04a10be9db Merge branch 'PHP-5.6'
* PHP-5.6:
  C89 compat
2014-02-21 11:24:18 +01:00
Anatol Belski f51555ca58 C89 compat 2014-02-21 11:23:42 +01:00
Dmitry Stogov b0927faf48 Merge branch 'PHP-5.6'
* PHP-5.6:
  Added information about interned strings usage
2014-02-21 12:45:12 +04:00
Dmitry Stogov 31f5515059 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Added information about interned strings usage

Conflicts:
	NEWS
2014-02-21 12:44:58 +04:00
Dmitry Stogov 851f362882 Added information about interned strings usage 2014-02-21 12:43:42 +04:00
Dmitry Stogov f786eec680 Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated opcache version
2014-02-21 12:06:46 +04:00
Dmitry Stogov aebfc519ea Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Updated opcache version
2014-02-21 12:06:35 +04:00
Dmitry Stogov f06b3432c8 Updated opcache version 2014-02-21 12:04:42 +04:00
Dmitry Stogov c3b35e2519 Merge branch 'PHP-5.6'
* PHP-5.6:
  Added function opcache_is_script_cached(). (Danack)
2014-02-21 12:01:06 +04:00
Dmitry Stogov b9a87a5079 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Added function opcache_is_script_cached(). (Danack)

Conflicts:
	NEWS
2014-02-21 12:00:33 +04:00
Dmitry Stogov 884bbcd537 Added function opcache_is_script_cached(). (Danack) 2014-02-21 11:59:14 +04:00
Daniel Lowrey 86d9235de5 Merge branch 'PHP-5.6'
* PHP-5.6:
  Improve OpenSSL compile flag compatibility, minor updates
  Use crypto method flags; add tlsv1.0 wrapper; add wrapper tests
  Improve server forward secrecy, refactor client SNI
  Add 'honor_cipher_order' server context option
  Add 'capture_session_meta' context option
  Disable TLS compression by default in both clients and servers
  Release ssl buffers
  Add openssl_get_cert_locations() function
  Explicitly set cert verify depth if not specified
  Strengthen default cipher list
2014-02-20 17:46:54 -07:00
Daniel Lowrey dcf27a1f6f Merge branch 'improved-tls-defaults' of https://github.com/rdlowrey/php-src into PHP-5.6
* 'improved-tls-defaults' of https://github.com/rdlowrey/php-src:
  Improve OpenSSL compile flag compatibility, minor updates
  Use crypto method flags; add tlsv1.0 wrapper; add wrapper tests
  Improve server forward secrecy, refactor client SNI
  Add 'honor_cipher_order' server context option
  Add 'capture_session_meta' context option
  Disable TLS compression by default in both clients and servers
  Release ssl buffers
  Add openssl_get_cert_locations() function
  Explicitly set cert verify depth if not specified
  Strengthen default cipher list
2014-02-20 17:35:44 -07:00
Daniel Lowrey 9f94e0b51c Improve OpenSSL compile flag compatibility, minor updates 2014-02-20 17:23:34 -07:00
Daniel Lowrey 3a9829af20 Use crypto method flags; add tlsv1.0 wrapper; add wrapper tests 2014-02-20 17:10:06 -07:00
Daniel Lowrey d0c9207cff Improve server forward secrecy, refactor client SNI 2014-02-20 17:10:06 -07:00
Daniel Lowrey 742fc5fb35 Add 'honor_cipher_order' server context option 2014-02-20 17:10:06 -07:00
Daniel Lowrey 081c8e9d92 Add 'capture_session_meta' context option 2014-02-20 17:10:06 -07:00
Daniel Lowrey b98b093d73 Disable TLS compression by default in both clients and servers 2014-02-20 17:10:06 -07:00
Daniel Lowrey b9ba011c0f Release ssl buffers 2014-02-20 17:10:06 -07:00
Daniel Lowrey df6bfe3be2 Add openssl_get_cert_locations() function 2014-02-20 17:10:06 -07:00
Daniel Lowrey 258d04df5c Explicitly set cert verify depth if not specified 2014-02-20 17:10:06 -07:00
Daniel Lowrey 225f534b1a Strengthen default cipher list 2014-02-20 17:10:06 -07:00
Anatol Belski f629a3b84d Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
2014-02-21 00:32:03 +01:00
Anatol Belski d6591ba1e3 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
* origin/str_size_and_int64_56_backport:
  fixed path separator in the tests
  Add more tests for __debugInfo() and fix leak
  updated libmagic.patch for 5.6+
  updated libmagic.patch in 5.4/5
  fixed leak introduced after CVE/upgrade
  Use nicer output for characters < 32 and > 126 in exception strings Using question marks might confuse more than it helps. Users are wondering what happened to their string...
  Update pgsql document
  Fixes #66714: imageconvolution breakage in 5.5.9

Conflicts:
	UPGRADING
2014-02-21 00:31:32 +01:00
Anatol Belski 175ab77029 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport 2014-02-21 00:25:08 +01:00
Anatol Belski 0140e83048 Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed path separator in the tests
2014-02-21 00:23:36 +01:00
Anatol Belski 5d0d88d1f2 fixed path separator in the tests 2014-02-21 00:23:01 +01:00
Anatol Belski eca2c0462f Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport 2014-02-20 23:12:57 +01:00
Sara Golemon d301c35540 Merge branch 'PHP-5.6'
* PHP-5.6:
  Add more tests for __debugInfo() and fix leak
2014-02-20 12:10:40 -08:00
Sara Golemon 14c08ea362 Add more tests for __debugInfo() and fix leak 2014-02-20 12:10:00 -08:00
Anatol Belski a30ef13ad8 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport 2014-02-20 20:34:12 +01:00
Anatol Belski 7fab1a5790 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libmagic.patch for 5.6+
2014-02-20 19:06:32 +01:00
Anatol Belski b67c8b8603 updated libmagic.patch for 5.6+ 2014-02-20 19:05:59 +01:00
Anatol Belski 2b767f83dc Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libmagic.patch in 5.4/5
2014-02-20 19:01:45 +01:00
Anatol Belski 0746e6af08 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated libmagic.patch in 5.4/5
2014-02-20 19:01:09 +01:00
Anatol Belski e244e2245b Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated libmagic.patch in 5.4/5
2014-02-20 19:00:36 +01:00
Anatol Belski ce1fd72776 updated libmagic.patch in 5.4/5 2014-02-20 19:00:05 +01:00
Anatol Belski 34f39f26e1 Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed leak introduced after CVE/upgrade
2014-02-20 18:55:21 +01:00
Anatol Belski 67d281f093 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fixed leak introduced after CVE/upgrade
2014-02-20 18:55:05 +01:00
Anatol Belski 6d4d4155d2 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fixed leak introduced after CVE/upgrade
2014-02-20 18:54:35 +01:00
Anatol Belski 10eb007070 fixed leak introduced after CVE/upgrade 2014-02-20 18:53:53 +01:00
Bob Weinand 219a37106f Merge branch 'PHP-5.6' 2014-02-20 17:50:14 +01:00
Bob Weinand fe3c8de9d5 Merge branch 'PHP-5.5' into PHP-5.6 2014-02-20 17:49:45 +01:00
Bob Weinand ca313caa4b Merge branch 'PHP-5.4' into PHP-5.5 2014-02-20 17:48:38 +01:00
Bob Weinand afa03a470e Use nicer output for characters < 32 and > 126 in exception strings
Using question marks might confuse more than it helps.
Users are wondering what happened to their string...
2014-02-20 17:39:58 +01:00
Xinchen Hui 6557bc48e2 Merge branch 'PHP-5.6' 2014-02-20 11:20:01 +08:00
Xinchen Hui c0d26bb138 Merge branch 'PHP-5.5' into PHP-5.6 2014-02-20 11:19:52 +08:00
Yasuo Ohgaki 3fa164c24b Update pgsql document 2014-02-20 10:44:18 +09:00
Anatol Belski ee690ae2a6 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64 2014-02-20 02:12:33 +01:00
Anatol Belski c869a60c91 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-02-20 02:12:18 +01:00
Anatol Belski 465fe9f0de Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport 2014-02-20 02:09:35 +01:00
Anatol Belski d021f575f6 Merge branch 'PHP-5.6'
* PHP-5.6:
  some missing pieces for __debugInfo
2014-02-20 02:08:07 +01:00
Anatol Belski 47204c6341 some missing pieces for __debugInfo 2014-02-20 02:07:34 +01:00
Anatol Belski ef295ab8e8 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64
Conflicts:
	NEWS
2014-02-20 00:00:33 +01:00
Brad Daily 143bb29c1a Fixes #66714: imageconvolution breakage in 5.5.9
5.5.9 included some GD fixes related to #66356. One of those fixes changed the 
above section of imageconvolution, but the variable was mistyped.
2014-02-19 15:24:15 -06:00
krakjoe e2fcc870e3 work on lexer to be more permissive (accept moar strings)
work on parameter parsing and command resolution
work on error reporting for failed arguments
update most commands
move quiet to set quiet
move set break on/off to set breaks on/off
keep set break for set break <id> <on/off>
update help accordingly
2014-02-19 20:18:49 +00:00
Anatol Belski cd064187da Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
Conflicts:
	ext/fileinfo/libmagic.patch
	ext/fileinfo/libmagic/readcdf.c
	ext/openssl/openssl.c
2014-02-19 12:42:20 +01:00
Daniel Lowrey af318419ad Merge branch 'PHP-5.6'
* PHP-5.6:
  Add tests for Bug #65538
  Fix Bug #65538 (cafile now supports stream wrappers)
2014-02-19 04:19:30 -07:00
Daniel Lowrey e272225e2a Merge branch 'bug-65538' of https://github.com/rdlowrey/php-src into PHP-5.6
* 'bug-65538' of https://github.com/rdlowrey/php-src:
  Add tests for Bug #65538
  Fix Bug #65538 (cafile now supports stream wrappers)
2014-02-19 04:17:33 -07:00
Daniel Lowrey 4c1baa8263 Merge branch 'PHP-5.6'
* PHP-5.6:
  Skip failing tests when EC unavailable (RHEL)
2014-02-19 04:03:16 -07:00
Daniel Lowrey d9036d14f7 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Skip failing tests when EC unavailable (RHEL)
2014-02-19 04:01:57 -07:00
Daniel Lowrey a7d3606650 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Skip failing tests when EC unavailable (RHEL)

Conflicts:
	ext/openssl/openssl.c
2014-02-19 04:01:08 -07:00
Daniel Lowrey 633f898f15 Skip failing tests when EC unavailable (RHEL) 2014-02-19 03:57:37 -07:00
Anatol Belski 97c8a4da98 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
2014-02-19 11:29:15 +01:00
Anatol Belski 3e82ff615f updated NEWS 2014-02-19 11:28:55 +01:00
Anatol Belski 46cdc50e61 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libmagic.patch
2014-02-19 11:20:53 +01:00
Anatol Belski 6b5c9f6c5a updated libmagic.patch 2014-02-19 11:20:24 +01:00
Anatol Belski 5f526e4907 Merge branch 'PHP-5.6'
* PHP-5.6:
  remove PHP_API_VERSION < 20100412 check
2014-02-19 11:02:19 +01:00
Anatol Belski fdaf3996af remove PHP_API_VERSION < 20100412 check 2014-02-19 11:01:42 +01:00
Anatol Belski f4d61099fb Merge branch 'PHP-5.6'
* PHP-5.6:
  expose correct libmagic version
2014-02-19 10:49:15 +01:00
Anatol Belski 6d2cf0f2a4 expose correct libmagic version 2014-02-19 10:48:52 +01:00
Anatol Belski 61677fa12d Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed tests in ext/fileinfo
2014-02-19 10:05:01 +01:00
Anatol Belski 4019531748 fixed tests in ext/fileinfo 2014-02-19 10:04:29 +01:00
Anatol Belski 9a250f6dc6 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated to libmagic-5.17
2014-02-19 10:03:19 +01:00
Anatol Belski 967a6771d3 updated to libmagic-5.17 2014-02-19 10:02:36 +01:00
krakjoe 996182993d remove input_t
support single char aliases
...
2014-02-19 08:33:54 +00:00
krakjoe e2e93ac259 work on parameters to commands 2014-02-19 00:33:49 +00:00
Bob Weinand 366bf38b4f Oplines run from 0 to op_array->last - 1
See also in issue 76
2014-02-19 01:13:03 +01:00
krakjoe 1952750af6 ... 2014-02-18 20:04:02 +00:00
krakjoe e392e730ea execute new stack now 2014-02-18 19:48:33 +00:00
Anatol Belski 3580f401ca Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libmagic.patch
2014-02-18 19:09:20 +01:00
Anatol Belski e95a2925fc Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated libmagic.patch
2014-02-18 19:09:04 +01:00
Anatol Belski 8dd99dd2dc Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated libmagic.patch
2014-02-18 19:08:45 +01:00
Anatol Belski a289b37f48 updated libmagic.patch 2014-02-18 19:08:16 +01:00
Stanislav Malyshev 87cb5858e7 Merge branch 'PHP-5.6'
* PHP-5.6:
  update news with CVE
  5.5.11-dev next
  5.5.11 next for NEWS
2014-02-18 08:49:15 -08:00
Stanislav Malyshev 54b1829f75 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update news with CVE
  5.5.11-dev next
  5.5.11 next for NEWS

Conflicts:
	configure.in
	main/php_version.h
2014-02-18 08:48:52 -08:00
Stanislav Malyshev 1cc5d1009f MErge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  update news with CVE
2014-02-18 08:47:43 -08:00
Stanislav Malyshev ee4b3892f8 update news with CVE 2014-02-18 08:36:51 -08:00
Julien Pauli 0afcbb0ba9 5.5.11-dev next 2014-02-18 16:45:48 +01:00
Julien Pauli be354936b7 5.5.11 next for NEWS 2014-02-18 16:40:19 +01:00
Remi Collet e32b54578a Merge branch 'PHP-5.6'
* PHP-5.6:
  Set fileinfo version to 1.0.5 (as in php 5.4, no diff)
  NEWS
  NEWS
  Fixed Bug #66731 file: infinite recursion
2014-02-18 13:58:48 +01:00
Remi Collet aa84d906d8 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Set fileinfo version to 1.0.5 (as in php 5.4, no diff)
  NEWS
  NEWS
  Fixed Bug #66731 file: infinite recursion
2014-02-18 13:58:36 +01:00
Remi Collet bd8cd98d6d Set fileinfo version to 1.0.5 (as in php 5.4, no diff) 2014-02-18 13:57:53 +01:00
Remi Collet a6ad3a558a NEWS 2014-02-18 13:57:28 +01:00
Remi Collet bdd65b578c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Fixed Bug #66731 file: infinite recursion
2014-02-18 13:57:10 +01:00
Remi Collet 9f449df1e4 NEWS 2014-02-18 13:56:58 +01:00
Remi Collet 89f864c547 Fixed Bug #66731 file: infinite recursion
Upstream commit (available in file-5.17)

https://github.com/glensc/file/commit/3c081560c23f20b2985c285338b52c7aae9fdb0f
https://github.com/glensc/file/commit/cc9e74dfeca5265ad725acc926ef0b8d2a18ee70
2014-02-18 13:54:33 +01:00
Anatol Belski a3dd7ab593 Merge remote-tracking branch 'origin/str_size_and_int64_56_backport' into str_size_and_int64 2014-02-18 10:56:30 +01:00
krakjoe 29e74ebf65 Merge branch 'master' of https://github.com/krakjoe/phpdbg into lexer 2014-02-18 09:13:50 +00:00
krakjoe 8da9b7e3a2 fix #70 2014-02-18 09:13:42 +00:00
krakjoe 07dafa8940 Merge branch 'master' of https://github.com/krakjoe/phpdbg into lexer 2014-02-18 08:47:25 +00:00
krakjoe 791828d00c fix zpp issues #74 2014-02-18 08:47:15 +00:00
krakjoe 0634f176a8 Merge branch 'master' of https://github.com/krakjoe/phpdbg into lexer 2014-02-18 08:40:42 +00:00
krakjoe 0b19b9dd0c fix #75 phpdbg disabled by default 2014-02-18 08:40:33 +00:00
krakjoe cadc909bb7 use correct param types 2014-02-18 08:39:38 +00:00
Stanislav Malyshev 8862a4d98d Merge branch 'PHP-5.6'
* PHP-5.6:
  5.4.27 now
  update NEWS
2014-02-17 21:22:56 -08:00
Stanislav Malyshev 140769a9d9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  5.4.27 now
  update NEWS
2014-02-17 21:22:24 -08:00
Stanislav Malyshev 58b7f21c3f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  5.4.27 now
  update NEWS

Conflicts:
	configure.in
	main/php_version.h
2014-02-17 21:22:03 -08:00
Stanislav Malyshev c612440e0f 5.4.27 now 2014-02-17 21:19:25 -08:00
Stanislav Malyshev b79d2285df update NEWS 2014-02-17 21:16:48 -08:00
Sara Golemon 837af67271 Merge branch 'PHP-5.6'
* PHP-5.6:
  Add __debugInfo() magic method
2014-02-17 19:37:55 -08:00
Sara Golemon 1e752ce9c5 Add __debugInfo() magic method
class Foo {
  private $val = 'Random, meaningless data';

  public function count() { return 42; }

  public function __debugInfo() {
    return ['count' => $this->count()];
  }
}

$f = new Foo;
var_dump($f);
2014-02-17 19:33:56 -08:00
Daniel Lowrey 491d492ada Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed broken build when EC unavailable
2014-02-17 19:39:43 -05:00
Daniel Lowrey 4e4d319e62 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed broken build when EC unavailable
2014-02-17 19:38:49 -05:00
Daniel Lowrey bd9aa181dc Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed broken build when EC unavailable
2014-02-17 19:38:30 -05:00
Daniel Lowrey a80cec1190 Fixed broken build when EC unavailable 2014-02-17 18:55:39 -05:00
krakjoe d980101803 start work on resolving commands, add numeric function and method to lexer 2014-02-17 22:43:53 +00:00
Andrey Hristov f3e59b838e Merge branch 'PHP-5.6' 2014-02-17 19:04:14 +02:00
Andrey Hristov 3e59f041da remove dead code 2014-02-17 19:04:01 +02:00
Andrey Hristov f83e88e3ea Merge branch 'PHP-5.6' 2014-02-17 18:37:59 +02:00
Andrey Hristov b2cd56c3cb Move code out, that handles the actual structure to be used for the decoded
data. Will make it easier to add different structures
2014-02-17 18:37:08 +02:00
Anatol Belski cbaea7d214 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/json/php_json.h
	ext/pgsql/pgsql.c
	ext/pgsql/php_pgsql.h
2014-02-17 12:27:33 +01:00
Anatol Belski 4dd4f728ce Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
Conflicts:
	ext/json/php_json.h
2014-02-17 12:17:04 +01:00
Julien Pauli 90325ba7ef Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS for #65753
  Export JsonSerializable Interface (bug #65753)
2014-02-17 11:16:48 +01:00
Julien Pauli 0bc96ef3cc Updated NEWS for #65753 2014-02-17 11:16:32 +01:00
Julien Pauli e19e266ae1 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Updated NEWS for #65753
  Updated NEWS for #65753
  Export JsonSerializable Interface (bug #65753)
2014-02-17 11:13:54 +01:00
Julien Pauli 66f76ec1f9 Updated NEWS for #65753 2014-02-17 11:13:38 +01:00
Julien Pauli 641a0c86d9 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Updated NEWS for #65753
2014-02-17 11:09:31 +01:00
Julien Pauli b04159eed4 Updated NEWS for #65753 2014-02-17 11:05:34 +01:00
Julien Pauli 1ba76df8d0 Export JsonSerializable Interface (bug #65753) 2014-02-17 10:39:39 +01:00
Julien Pauli 8a1d248d4e Export JsonSerializable Interface (bug #65753) 2014-02-17 10:38:51 +01:00
Julien Pauli baafdad150 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Export JsonSerializable Interface (bug #65753)
2014-02-17 10:36:13 +01:00
Julien Pauli 786234d351 Export JsonSerializable Interface (bug #65753) 2014-02-17 10:25:40 +01:00
Anatol Belski 3d1d48a85f Merge branch 'PHP-5.6'
* PHP-5.6:
  simplify the metadata part
2014-02-17 10:21:59 +01:00
Anatol Belski 6877af3f71 simplify the metadata part 2014-02-17 10:20:36 +01:00
krakjoe 1641d2afbe case insensitivity where we can
additional param types
2014-02-17 08:53:47 +00:00
Anatol Belski 463b450595 after merge fix 2014-02-17 09:21:27 +01:00
Anatol Belski f6c611fd84 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
Conflicts:
	ext/pgsql/pgsql.c
	ext/pgsql/php_pgsql.h
2014-02-17 09:16:13 +01:00
krakjoe 1fce0887a3 Merge branch 'master' of https://github.com/krakjoe/phpdbg into lexer 2014-02-17 07:40:35 +00:00
Scott MacVicar 24092b7196 Merge branch 'PHP-5.6'
* PHP-5.6:
  imagettftext() uses the last charactermap it found and not the one you want
  [libxml] Unit test for libxml_disable_entity_loader()
  Add pgsql related change information to NEWS and UPGRADING
2014-02-16 22:51:20 -08:00
Scott MacVicar 796bfb0bd0 imagettftext() uses the last charactermap it found and not the one you want
Summary:
This caused issues when you picked a font with multiple maps, it wouldn't
pick the unicode version but instead pick the last one it saw. Change so
we cache on a per encoding level. There was even a todo list item in the code.

In an ideal world we can probably iterate through at font write time.

Test Plan:
See said unit test, it's Apache Licensed font included
2014-02-16 22:49:31 -08:00
Scott MacVicar 1f3af9cd21 [libxml] Unit test for libxml_disable_entity_loader()
Summary:
Test to make sure libxml_disable_entity_loader() is behaving.
2014-02-16 22:34:52 -08:00
Yasuo Ohgaki e5ec5fc9cc Add pgsql related change information to NEWS and UPGRADING 2014-02-17 10:13:44 +09:00
krakjoe 3cabee71ab ... 2014-02-16 23:17:16 +00:00
krakjoe 4af3e39147 improve error reporting 2014-02-16 23:12:24 +00:00
krakjoe ff95046b76 ... 2014-02-16 22:54:43 +00:00
krakjoe c3bf5dc904 modify command to parse arguments with lexer for testingz 2014-02-16 22:47:20 +00:00
krakjoe d392de0ff7 fix lexer for namespaced methods 2014-02-16 21:52:25 +00:00
krakjoe a9e0202a5d remove leaks from stack
traverse the other way
fix id regex, thanks @bwoebi
2014-02-16 21:38:55 +00:00
Yasuo Ohgaki d06551b957 Merge branch 'PHP-5.6'
* PHP-5.6:
  Imprement FR #25854	Return value for pg_insert should be resource instead of bool
2014-02-17 06:38:36 +09:00
Yasuo Ohgaki d8aa130296 Imprement FR #25854 Return value for pg_insert should be resource instead of bool 2014-02-17 06:36:54 +09:00
Yasuo Ohgaki 540a28b4ec Merge branch 'PHP-5.6'
* PHP-5.6:
  Implement FR #41146 - Add "description" with exteneded flag pg_meta_data(). pg_meta_data(resource $conn, string $table [, bool extended]) It also made pg_meta_data() return "is enum" always.
2014-02-17 06:35:15 +09:00
Yasuo Ohgaki 5fd6365c77 Implement FR #41146 - Add "description" with exteneded flag pg_meta_data().
pg_meta_data(resource $conn, string $table [, bool extended])
It also made pg_meta_data() return "is enum" always.
2014-02-17 06:24:10 +09:00
Yasuo Ohgaki 862e4bdf52 Implement FR #41146 - Add "description" with exteneded flag pg_meta_data().
pg_meta_data(resource $conn, string $table [, bool extended])
It also made pg_meta_data() return "is enum" always.
2014-02-17 06:23:52 +09:00
krakjoe c744605dc7 build stack from command line 2014-02-16 19:25:15 +00:00
Anatol Belski 558795d02b fix always_populate_raw_data config 2014-02-16 19:29:07 +01:00
Bob Weinand f89f66d762 removed warning; WS 2014-02-16 17:41:50 +01:00
Daniel Lowrey 2a83295b14 Add tests for Bug #65538 2014-02-16 09:20:43 -07:00
Anatol Belski d69911515a Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport 2014-02-16 17:17:19 +01:00
Anatol Belski 107df3d32b Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-02-16 17:16:55 +01:00
Anatol Belski a2928ea32c Merge branch 'PHP-5.6'
* PHP-5.6:
  updated pgsql/config.w32
2014-02-16 17:15:40 +01:00
Anatol Belski a9c0d319eb updated pgsql/config.w32
keep track with the latest changes for postgles 9.3 compatibility
2014-02-16 17:13:56 +01:00
Bob Weinand 7b44890ac4 Merge pull request #73 from TerryE/new-help
New help updates
2014-02-16 17:09:15 +01:00
Daniel Lowrey c7220dc6c5 Fix Bug #65538 (cafile now supports stream wrappers) 2014-02-16 08:47:37 -07:00
Anatol Belski 01cf1aabe2 remove cast 2014-02-16 15:08:12 +01:00
Anatol Belski 88ba1e9eb5 remove some obsolete casts 2014-02-16 15:07:32 +01:00
Anatol Belski d8c35fd578 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/pgsql/pgsql.c
	ext/pgsql/tests/config.inc
2014-02-16 15:06:44 +01:00
Anatol Belski c801f53102 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
Conflicts:
	ext/pgsql/pgsql.c
	ext/pgsql/tests/config.inc
2014-02-16 14:50:47 +01:00
Yasuo Ohgaki 24a2c76f86 Merge branch 'PHP-5.6'
* PHP-5.6:
  Travis has old PostgreSQL server. Avoid test error.
2014-02-16 18:09:23 +09:00
Yasuo Ohgaki 170db1c577 Travis has old PostgreSQL server. Avoid test error. 2014-02-16 18:08:50 +09:00
Yasuo Ohgaki eed796f175 Merge branch 'PHP-5.6'
* PHP-5.6:
  It seems travis needs ending >?
2014-02-16 16:41:24 +09:00
Yasuo Ohgaki 4a2b39269f It seems travis needs ending >? 2014-02-16 16:40:58 +09:00
Yasuo Ohgaki d4bc18bbe8 Add PGSQL_DML_ESCPE 2014-02-16 14:24:20 +09:00
Yasuo Ohgaki a59559a173 Update NEWS and UPGRADING 2014-02-16 14:21:05 +09:00
Yasuo Ohgaki 390b5200c6 Merge branch 'PHP-5.6'
* PHP-5.6:
  EXPERIMENTAL flags for pg_select/pg_insert/pg_update/pg_delete are removed.
2014-02-16 14:13:17 +09:00
Yasuo Ohgaki 56854511d8 EXPERIMENTAL flags for pg_select/pg_insert/pg_update/pg_delete are removed.
Use string escape for exotic types that allows to handle any data types. i.e. Array, JSON, JSONB, etc will work.
Add escape only query for better performance which removes meta data look up. Limitations forced by pg_convert() can be avoided with this. PGSQL_DML_ESCAPE constant is added for it.
2014-02-16 14:11:21 +09:00
Yasuo Ohgaki 53daf94f28 Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6
* 'PHP-5.6' of git.php.net:php-src:
  Remove XFAIL from a test
  Declare a number of functions as variadic.
2014-02-16 10:53:49 +09:00
Yasuo Ohgaki 44cb669ca7 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Remove XFAIL from a test
  Declare a number of functions as variadic.
2014-02-16 10:52:54 +09:00
Yasuo Ohgaki bf18d4c16e Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed possbile injections against pg_insert()/pg_delete()/pg_update()/pg_select()
2014-02-16 10:47:58 +09:00
Yasuo Ohgaki 3f4134c00c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed possbile injections against pg_insert()/pg_delete()/pg_update()/pg_select()
2014-02-16 10:47:32 +09:00
Yasuo Ohgaki f7f524aada Update NEWS 2014-02-16 10:47:13 +09:00
Yasuo Ohgaki 3fcdecf658 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed possbile injections against pg_insert()/pg_delete()/pg_update()/pg_select()
2014-02-16 10:45:50 +09:00
Yasuo Ohgaki f275fdcf00 Fixed possbile injections against pg_insert()/pg_delete()/pg_update()/pg_select() 2014-02-16 10:45:15 +09:00
Anatol Belski 5847fc8b20 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/pgsql/pgsql.c
2014-02-16 01:12:00 +01:00
Anatol Belski 729079fc66 Merge remote-tracking branch 'origin/PHP-5.6' into str_size_and_int64_56_backport
Conflicts:
	ext/mysqli/mysqli_api.c
	ext/pgsql/pgsql.c
2014-02-16 01:06:20 +01:00
krakjoe 5f89934686 Revert "handle strings better"
This reverts commit a32f1b4654.
2014-02-15 23:34:35 +00:00
Nikita Popov 1aa6f95651 Merge branch 'PHP-5.6' 2014-02-16 00:08:17 +01:00
Nikita Popov 7d5f806e77 Remove XFAIL from a test
Everything looks to be working fine, the test is just wrong.
INF equals INF as per IEEE 754.
2014-02-16 00:07:55 +01:00
Rouven Weßling 417dbfbacc Declare a number of functions as variadic. 2014-02-16 00:07:55 +01:00
krakjoe a32f1b4654 handle strings better 2014-02-15 22:53:20 +00:00
Yasuo Ohgaki e5b2e4c4d3 Merge branch 'PHP-5.6'
* PHP-5.6:
  Refactor build_tablename()
2014-02-16 07:52:12 +09:00
Yasuo Ohgaki a12c896dba Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Refactor build_tablename()
2014-02-16 07:52:00 +09:00
Yasuo Ohgaki f9537c2a0b Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Refactor build_tablename()
2014-02-16 07:51:50 +09:00
Yasuo Ohgaki 6f14b5ab41 Refactor build_tablename() 2014-02-16 07:51:27 +09:00
Anatol Belski fdc8dbe9d9 remaining backports for ext/* 2014-02-15 23:48:05 +01:00
Anatol Belski c9e2bfc424 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/mysqli/mysqli_api.c
	ext/pgsql/pgsql.c
2014-02-15 23:12:40 +01:00
Yasuo Ohgaki d10e83cf89 Merge branch 'PHP-5.6'
* PHP-5.6:
  Revise encoding blacklist
2014-02-16 06:25:27 +09:00
Yasuo Ohgaki 53f34bca76 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Revise encoding blacklist
2014-02-16 06:25:15 +09:00
Yasuo Ohgaki 8c9fd8fb53 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Revise encoding blacklist
2014-02-16 06:25:01 +09:00
Yasuo Ohgaki 9f251548ae Revise encoding blacklist 2014-02-16 06:21:39 +09:00
Anatol Belski 98f03086bb further ext backports 2014-02-15 21:48:15 +01:00
Anatol Belski f2f78bc053 fix wrong backport 2014-02-15 21:41:28 +01:00
krakjoe cdf1dcc497 barf on unexpected input 2014-02-15 20:05:44 +00:00
Anatol Belski a005010ef6 backported remaining part in main/streams 2014-02-15 21:01:06 +01:00
krakjoe a01853de78 betterness 2014-02-15 19:51:39 +00:00
Anatol Belski 4fc459e424 backported ticks function signature 2014-02-15 20:51:14 +01:00
Anatol Belski 23679f5a01 backport ext/spl 2014-02-15 20:38:36 +01:00
Anatol Belski beb11f69f3 backported sapi/cli 2014-02-15 20:25:37 +01:00
Anatol Belski 1648d83e6d backport ext/date 2014-02-15 20:25:16 +01:00
Anatol Belski f6b64e93dd backported ext/standard 2014-02-15 20:16:05 +01:00
Johannes Schlüter bc4e9d36a6 Merge branch 'PHP-5.6' 2014-02-15 20:06:15 +01:00
Johannes Schlüter 1fd53fd2ae Move static functions further up so they are delared efore being used. 2014-02-15 20:05:46 +01:00
Anatol Belski b64462fd71 remove comment 2014-02-15 15:19:49 +01:00
Anatol Belski abca09bf6b remove test files 2014-02-15 14:43:53 +01:00
Anatol Belski 533dab176c simple overwrites 2014-02-15 14:41:52 +01:00
Anatol Belski f90db6feda fix sprintf declaration for broken sprintf 2014-02-15 14:40:11 +01:00
Anatol Belski 9a7f242f86 backported main/ 2014-02-15 14:33:11 +01:00
Felipe Pena 70317ca754 Merge branch 'PHP-5.6'
* PHP-5.6:
  - Fix ZTS build when HAVE_PQESCAPELITERAL is not set
  Update NEWS
  Update NEWS
2014-02-15 11:05:39 -02:00
Felipe Pena 8cec20a565 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  - Fix ZTS build when HAVE_PQESCAPELITERAL is not set
  Update NEWS
  Update NEWS
2014-02-15 11:05:25 -02:00
Felipe Pena a65a546640 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fix ZTS build when HAVE_PQESCAPELITERAL is not set
  Update NEWS
2014-02-15 11:05:08 -02:00
Anatol Belski 2fd7f7c825 backported Zend 2014-02-15 14:04:53 +01:00
Felipe Pena 9d84f6c06e - Fix ZTS build when HAVE_PQESCAPELITERAL is not set 2014-02-15 11:04:49 -02:00
Yasuo Ohgaki fbb1827da8 Update NEWS 2014-02-15 19:21:54 +09:00
Yasuo Ohgaki 7ce88b2d8a Update NEWS 2014-02-15 19:20:34 +09:00
Yasuo Ohgaki c1211e84fc Merge branch 'PHP-5.6' 2014-02-15 18:30:50 +09:00
Yasuo Ohgaki 5ff9089aeb Merge branch 'PHP-5.5' into PHP-5.6 2014-02-15 18:30:11 +09:00
Yasuo Ohgaki 6e0b8b4288 Merge branch 'PHP-5.4' into PHP-5.5 2014-02-15 18:29:36 +09:00
Yasuo Ohgaki 832c21cabf Refactor and cleanup. WS is cleaned up. Use -b if it is needed.
Added compatibility macros, PQescapeStringConn, PGSQLescapeLiteral/Identifier, PGSQLfree.
2014-02-15 18:20:58 +09:00
krakjoe 5778e010b7 have a go at writing lexer for input 2014-02-15 04:52:04 +00:00
Daniel Lowrey 2976f7dae7 Update NEWS 2014-02-14 21:44:05 -07:00
Daniel Lowrey cf0741fd5b Update NEWS 2014-02-14 21:42:36 -07:00
Daniel Lowrey 5cc851e83e Update NEWS 2014-02-14 21:41:18 -07:00
Daniel Lowrey 1b4af87af4 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix for bug66501 - "key type not supported in this PHP build"
2014-02-14 18:24:04 -07:00
Daniel Lowrey b60cb2b88a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix for bug66501 - "key type not supported in this PHP build"
2014-02-14 18:20:01 -07:00
Daniel Lowrey 65adb74984 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix for bug66501 - "key type not supported in this PHP build"
2014-02-14 18:15:24 -07:00
mk-j 19524fc6fe Fix for bug66501 - "key type not supported in this PHP build" 2014-02-14 18:11:46 -07:00
Anatol Belski f2e817ea64 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-02-15 01:32:33 +01:00
Daniel Lowrey 89292d95ad Add missing TSRMLS_CC 2014-02-14 17:27:29 -07:00
Daniel Lowrey 8562b8c163 Merge branch 'PHP-5.6'
* PHP-5.6:
  Bug #47030 (separate host and peer verification)
2014-02-14 15:40:36 -07:00
Daniel Lowrey 734d887b40 Merge branch 'bug-47030' of https://github.com/rdlowrey/php-src into PHP-5.6
* 'bug-47030' of https://github.com/rdlowrey/php-src:
  Bug #47030 (separate host and peer verification)
2014-02-14 15:37:49 -07:00
Daniel Lowrey ce8dc0ede2 Bug #47030 (separate host and peer verification) 2014-02-14 15:17:30 -07:00
Daniel Lowrey a5551b73db Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix test broken if openssl is compiled without sslv2
2014-02-14 13:39:53 -07:00
Daniel Lowrey f073588e75 Fix test broken if openssl is compiled without sslv2 2014-02-14 13:39:02 -07:00
Daniel Lowrey d47f2116a0 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix segfault accessing context when no context assigned

Conflicts:
	ext/openssl/xp_ssl.c
2014-02-14 10:53:47 -07:00
Daniel Lowrey 4921c1f0ce Fix segfault accessing context when no context assigned
Conflicts:
	ext/openssl/xp_ssl.c
2014-02-14 10:33:43 -07:00
Daniel Lowrey 059c0a9eb9 Merge branch 'master' of git://git.php.net/php-src
* 'master' of git://git.php.net/php-src: (33 commits)
  a few typofixes
  a few typofixes
  a few typofixes
  Update NEWS and UPGRADING
  move the peer verification NEWS entry to the alpha2 block, as it was pushed after alpha1
  mention ldap_modify_batch()
  Implement RFC https://wiki.php.net/rfc/default_encoding
  update the alpha2 release date
  Fixed ZTS and added fix to NEWS.
  Implemented feature #45528: Allow the DateTimeZone constructor to accept timezones per offset too.
  Rename timelib_get_zone to timelib_parse_zone and export.
  Replace old SVN references to Git
  fix regex to detect valgrind version New PCRE version got stricter
  fix regex to detect valgrind version New PCRE version got stricter
  Fixed memory leak in pow operator
  5.5.9 now released
  Added information in NEWS and UPGRADING
  add T_POW (**) operator
  add NEWS block for 5.6.0alpha3
  updated libs_version.txt
  ...
2014-02-14 10:27:11 -07:00
Daniel Lowrey 81c29af865 Updated NEWS 2014-02-14 10:26:42 -07:00
Daniel Lowrey 8582353700 Fix segfault accessing context when no context assigned 2014-02-14 10:24:08 -07:00
Lior Kaplan 464b1bc4fb Merge branch 'PHP-5.6' 2014-02-14 17:19:33 +02:00
Veres Lajos a7ec000f35 a few typofixes 2014-02-14 17:16:17 +02:00
Lior Kaplan 23d952ed60 Merge branch 'PHP-5.5' into PHP-5.6 2014-02-14 17:15:35 +02:00
Veres Lajos f9829690d4 a few typofixes 2014-02-14 17:12:52 +02:00
Lior Kaplan c09bd9def0 Merge branch 'PHP-5.4' into PHP-5.5 2014-02-14 15:30:00 +02:00
Veres Lajos 35101e9ef4 a few typofixes 2014-02-14 14:51:10 +02:00
Yasuo Ohgaki 71b8f59ebb Update NEWS and UPGRADING 2014-02-14 08:56:39 +09:00
Ferenc Kovacs 91fecd7673 move the peer verification NEWS entry to the alpha2 block, as it was pushed after alpha1 2014-02-14 00:22:31 +01:00
Ferenc Kovacs 2537fdf0c8 mention ldap_modify_batch() 2014-02-13 23:21:28 +01:00
Bob Weinand 0dc1072a19 Fix issue 72 (too much whitespace in config.m4) 2014-02-13 20:42:54 +01:00
Anatol Belski b923de2a8f Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/standard/html.c
2014-02-13 09:22:58 +01:00
Yasuo Ohgaki 9a5cb51ebc Merge branch 'PHP-5.6'
* PHP-5.6:
  Implement RFC https://wiki.php.net/rfc/default_encoding
2014-02-13 11:56:54 +09:00
Yasuo Ohgaki cbd108abf1 Implement RFC https://wiki.php.net/rfc/default_encoding 2014-02-13 11:54:52 +09:00
Anatol Belski 8cda1af604 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/oci8/oci8.c
2014-02-12 22:30:20 +01:00
Ferenc Kovacs c9e9151bb3 Merge branch 'PHP-5.6'
* PHP-5.6:
  update the alpha2 release date
  Make html_table_gen consistent with html_table.h
2014-02-12 06:40:43 +01:00
Derick Rethans c4e6c12b71 Merge branch 'PHP-5.6' 2014-02-11 11:31:13 +00:00
Anatol Belski d7a5bd11e5 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/date/php_date.c
2014-02-10 12:52:57 +01:00
Derick Rethans a30ebbdb18 Merge branch 'PHP-5.6' 2014-02-09 15:57:54 -05:00
Mats Lindh 6188674f1e Replace old SVN references to Git 2014-02-09 21:17:26 +02:00
Terry Ellison 21c973d3de More update to help text on parameter typing 2014-02-09 15:04:13 +00:00
Anatol Belski e7719f949a fix printf fmt for zend_uint_t 2014-02-09 06:37:08 -08:00
Anatol Belski d55c85d795 fix return of hash num elements 2014-02-09 14:29:10 +01:00
Anatol Belski 33b5108a2b Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-02-09 11:01:26 +01:00
Anatol Belski d5c924750b replace *_STRTOL with STRTOI, etc. 2014-02-09 10:55:52 +01:00
Anatol Belski 110c17f8b8 fix size types 2014-02-08 20:05:49 +01:00
Anatol Belski 9d972d3956 fix implicit type conversion 2014-02-08 20:05:16 +01:00
Anatol Belski 3ea59f0d51 fix size types in zend_ts_hash.* 2014-02-08 20:04:31 +01:00
Nuno Lopes 7b7d2952a6 fix regex to detect valgrind version
New PCRE version got stricter
2014-02-08 07:07:15 -05:00
Anatol Belski da452e33e7 fix some implicit 32 vs 64 bit type conversions 2014-02-07 00:14:01 +01:00
Anatol Belski 06eff86e4d it's actually correct to always use size_t for zend_size_t, even on 32 bit 2014-02-07 00:13:11 +01:00
Anatol Belski 44772c2cb5 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	Zend/zend_operators.c
2014-02-06 23:17:09 +01:00
Bob Weinand 237c1bf7b5 Merge branch 'PHP-5.6' 2014-02-06 21:32:11 +01:00
Bob Weinand b0273e749c Fix issue 68 (made check win only) 2014-02-06 20:43:17 +01:00
Anatol Belski eeea68592f after merge fix 2014-02-06 20:20:39 +01:00
Anatol Belski 7e8616620d Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  Added information in NEWS and UPGRADING
  add T_POW (**) operator
  add NEWS block for 5.6.0alpha3
  updated libs_version.txt
  updated libs_version.txt
  update libs_version.txt

Conflicts:
	Zend/zend_ini_scanner.c
	ext/standard/math.c
2014-02-06 20:20:12 +01:00
Bob Weinand 44dcdd146d Merge branch 'PHP-5.6' 2014-02-06 14:48:56 +01:00
Anatol Belski 205543143f Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libs_version.txt
  updated libs_version.txt
  update libs_version.txt
2014-02-06 09:18:22 +01:00
Anatol Belski a72d90cb6d Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-02-05 20:17:11 +01:00
Anatol Belski 190c7772c1 Merge branch 'PHP-5.6'
* PHP-5.6:
  more tests for ICU >= 52.1 compat
  fix tests for ICU >= 52.1
2014-02-05 20:14:19 +01:00
Anatol Belski bf0d383aba fix tests for ICU >= 52.1 2014-02-05 19:25:33 +01:00
Hannes Magnusson 7d62a321c7 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix year
2014-02-05 10:18:10 -08:00
Anatol Belski b35c788a62 Merge branch 'PHP-5.6'
* PHP-5.6:
  adapt test to curl 7.35.0 upgrade
2014-02-05 15:17:48 +01:00
Anatol Belski ff390d788f Merge branch 'PHP-5.6'
* PHP-5.6:
  move the NEWS entry into the right section
2014-02-05 10:52:17 +01:00
Anatol Belski c907406c79 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-02-05 07:35:14 +01:00
Daniel Lowrey 6c1cdd0814 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed SNI failure from missing Z_STRVAL_PP
2014-02-04 19:13:50 -07:00
Terry Ellison ebdfef807a Update help content and refactor new routine in php_help.c
*  I've added more content to the help to expand desciption for new-to-phpdbg
   developers.

*  After a code review of the new routines that I've added to the help module,
   I've decided that the implementation was unnecessarily convolved and that
   Keep-It-Simple-Stupid would be more understandable, maintainable and have
   no material performance hit.
2014-02-05 00:04:21 +00:00
Anatol Belski 971a4a52e3 fix flag signness 2014-02-04 18:52:45 +01:00
Anatol Belski 1f8153a533 fix the comment text 2014-02-04 18:09:22 +01:00
Anatol Belski be7934b91b Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-02-04 11:15:54 +01:00
Anatol Belski 60846fab58 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
2014-02-04 10:39:46 +01:00
Anatol Belski f27eaa1578 Merge branch 'PHP-5.6'
* PHP-5.6:
  pcre tests go with 8.34 upgrade
2014-02-04 10:35:19 +01:00
Anatol Belski 2e8e2db82a Merge branch 'PHP-5.6'
* PHP-5.6:
  pcre upgraded to 8.34
2014-02-04 10:32:09 +01:00
Anatol Belski ac42ddf586 let thread id be 64 bit on win64 2014-02-03 18:44:46 +01:00
Anatol Belski ba32bba8c2 fix some specs for line num 2014-02-03 18:14:31 +01:00
Anatol Belski c98fcaafe7 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-02-03 17:21:30 +01:00
Anatol Belski 798e2e75b5 more cleanups to num args types 2014-02-03 17:03:53 +01:00
Anatol Belski c5668d1fae more cleanup for num args 2014-02-03 15:59:35 +01:00
Anatol Belski 6fb3434592 fix type for op num 2014-02-03 15:03:59 +01:00
Anatol Belski 7af9b01e26 fixed length property types in zend_property_info 2014-02-03 14:23:24 +01:00
Anatol Belski 8903518423 fixed types for num_args at various places 2014-02-03 14:17:15 +01:00
Ferenc Kovacs 0e764dc657 Merge branch 'PHP-5.6' 2014-02-03 04:21:27 +01:00
Anatol Belski 472579280f after merge fix, some datatypes 2014-02-02 20:33:24 +01:00
Anatol Belski 7061c35725 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-02-02 18:46:15 +01:00
Terry Ellison 88bd558a73 Work in progress chekpoint of changes to help module. To allow peer review and feedback 2014-02-02 16:35:28 +00:00
krakjoe 891477dc1c windows 2014-02-02 15:16:01 +00:00
krakjoe 6597d86389 Merge branch 'PHP-5.6'
* PHP-5.6:
  windows
2014-02-02 15:14:53 +00:00
krakjoe eacab735e0 Merge branch 'PHP-5.6'
* PHP-5.6:
  clean symbols
2014-02-02 15:10:28 +00:00
krakjoe 8aaec7d1c3 Merge branch 'PHP-5.6'
* PHP-5.6:
  another patch from upstream
2014-02-02 14:59:30 +00:00
krakjoe f88ff6c661 woops 2014-02-02 14:51:30 +00:00
krakjoe 202dcc0f6a Merge branch 'PHP-5.6'
* PHP-5.6:
  woops
2014-02-02 14:50:43 +00:00
krakjoe ee42849f8f Merge branch 'PHP-5.6'
* PHP-5.6:
  better use of tmpnam/mkstemp
2014-02-02 14:42:54 +00:00
krakjoe 0c94f8a893 ... 2014-02-02 14:41:51 +00:00
krakjoe 37f4f132fc Merge branch 'PHP-5.6'
* PHP-5.6:
  update version
2014-02-02 14:05:03 +00:00
krakjoe 4c6816ddf2 Merge branch 'PHP-5.6'
* PHP-5.6:
  remove use of zend directly, avoid leaks/bugs in modules etc
2014-02-02 13:51:05 +00:00
krakjoe dc02b5a1fd Merge branch 'master' of https://git.php.net/repository/php-src 2014-02-02 13:50:54 +00:00
krakjoe e55bd70643 scrap using zend directly, too many leaks/bugs 2014-02-02 13:29:34 +00:00
Anatol Belski 15896155c4 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-02-01 20:37:43 +01:00
Daniel Lowrey f08e8772a7 Merge branch 'PHP-5.6'
* PHP-5.6:
  Remove #if PHP_VERSION_ID version checks

Conflicts:
	ext/openssl/xp_ssl.c
2014-02-01 08:25:01 -07:00
Daniel Lowrey 0893a13e32 Remove #if PHP_VERSION_ID version checks 2014-02-01 08:13:53 -07:00
Daniel Lowrey f197dafd1c Merge branch 'PHP-5.6'
* PHP-5.6:
  Use master-agnostic zend_is_true checks

Conflicts:
	ext/openssl/xp_ssl.c
2014-01-31 14:22:35 -07:00
Christopher Jones f65cdd0a46 Fix expectation that zval size was 4 bytes
Various range checks added
2014-01-30 17:45:15 -08:00
Anatol Belski 39c41e6c1d cleanup with --reverse 2014-01-30 17:21:14 -08:00
Anatol Belski 247d7d7b14 add --zpp-vars to script usage out 2014-01-30 21:53:45 +01:00
Anatol Belski d82da76d19 document more on --zpp-vars 2014-01-30 21:50:46 +01:00
Anatol Belski e56176479c added replace.php --zpp-vars
Simple cases on datatype replacements can be handled now
2014-01-30 21:40:43 +01:00
Anatol Belski 31ca11d1b6 more feasible solution for zpp specs using compat.h 2014-01-30 18:26:21 +01:00
Sara Golemon 7f42e62d22 Merge branch 'PHP-5.6'
* PHP-5.6:
  Make html_table_gen consistent with html_table.h
2014-01-30 02:06:30 -08:00
Christopher Jones 66500333cf Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix merge
2014-02-10 17:04:55 -08:00
Christopher Jones 71a82be899 Merge branch 'PHP-5.6'
* PHP-5.6:
  Add Oracle PL/SQL BOOLEAN type support to oci_bind_by_name()
2014-02-10 15:01:37 -08:00
Sara Golemon 45e2a557f1 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Make html_table_gen consistent with html_table.h
2014-01-30 02:05:49 -08:00
Anatol Belski d329b89a55 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-30 10:49:14 +01:00
Anatol Belski 5ed1bdf9a5 fix ZTS build 2014-01-30 10:47:58 +01:00
Anatol Belski 2adf9e6235 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-30 10:03:40 +01:00
Anatol Belski ae850328a1 mention important compiler warnings, state the changed APIs more precisely 2014-01-30 09:32:24 +01:00
Stanislav Malyshev 11e47b1cdc Merge branch 'PHP-5.6'
* PHP-5.6:
  tests still failing, so xfail for now until fixed
  tests still failing, so xfail for now until fixed
  tests still failing, so xfail for now until fixed
2014-01-29 23:48:44 -08:00
Stanislav Malyshev d76a6a3e4d tests still failing, so xfail for now until fixed 2014-01-29 23:48:44 -08:00
Yasuo Ohgaki 210b444e1d Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug data->fd not set to -1 for open_basedir failure.
2014-01-30 14:17:11 +09:00
Daniel Lowrey ba8cdc855d Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed build breakage from b4b4d9697f
2014-01-29 17:59:46 -07:00
Anatol Belski 0c14569584 after merge fix 2014-01-29 23:21:15 +01:00
Anatol Belski 27868a0966 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-29 22:57:53 +01:00
Anatol Belski c91ad8233b fix merge error after b4b4d9697f 2014-01-29 22:50:56 +01:00
Anatol Belski 485e999d9c Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/mysqli/php_mysqli_structs.h
2014-01-29 22:08:50 +01:00
Andrey Hristov 79e0c273b8 Merge branch 'master' of git.php.net:php-src
Conflicts:
	ext/openssl/xp_ssl.c
2014-01-29 15:33:52 +02:00
Andrey Hristov 1c7f54d4f7 Merge branch 'PHP-5.6'
Conflicts:
	NEWS
	ext/openssl/xp_ssl.c
2014-01-29 15:32:02 +02:00
Remi Collet cbb1097770 Merge branch 'PHP-5.6'
* PHP-5.6:
  zip extension version 1.12.4
2014-01-29 14:01:03 +01:00
Anatol Belski 7554d07945 separated zpp and macro replacement 2014-01-29 13:39:02 +01:00
Anatol Belski 9fedc08613 more doc on replace.php 2014-01-29 13:10:57 +01:00
Anatol Belski e2bdd42758 fixed reverse mode for --zpp 2014-01-29 12:52:38 +01:00
Anatol Belski b281016972 some datatype fixes 2014-01-29 12:40:32 +01:00
Anatol Belski e2cab1d888 fixed --zpp and added --zpp-compat 2014-01-29 12:39:19 +01:00
Anatol Belski 236e3188db Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	main/php_ini.c
2014-01-29 10:45:52 +01:00
Remi Collet 83c302840e Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed Request #66574 Allow multiple paths in php_ini_scanned_path
2014-01-29 09:57:22 +01:00
krakjoe 261a5305c6 fix bugsnet #66591 and github #60 2014-01-29 07:28:54 +00:00
Yasuo Ohgaki 3828b5d83d Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed zend.multibyte tests partially
2014-01-29 15:56:13 +09:00
Anatol Belski 8da5217cd5 Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  Update NEWS/UPGRADING
  Verify peers by default in client socket operations
  add text for the new constants
  add new consts
  Fixed arginfo of PDO::__construct() to match the docs and zend_parse_parameters definition.
  fix *.dsp files related to bug #50333
2014-01-29 00:36:37 +01:00
Anatol Belski 68969026fc reveal implemented replace.php options 2014-01-29 00:35:40 +01:00
Anatol Belski 4347713fd2 more precise info on printf formats and fix some wording 2014-01-29 00:16:47 +01:00
Anatol Belski febe423643 added info about new datatypes in zval 2014-01-28 23:55:39 +01:00
Daniel Lowrey 6edc84fcdf Merge branch 'PHP-5.6'
* PHP-5.6:
  Update NEWS/UPGRADING
  Verify peers by default in client socket operations

Conflicts:
	ext/openssl/xp_ssl.c
2014-01-28 10:36:28 -07:00
krakjoe c768abd420 fix bugsnet #66594, thanks ondrej@php.net 2014-01-28 17:23:29 +00:00
Daniel Lowrey 4bc8f94b58 Merge branch 'master' of https://github.com/php/php-src
* 'master' of https://github.com/php/php-src:
  add text for the new constants
  add new consts
2014-01-28 09:53:17 -07:00
Andrey Hristov fb5c7cda5d Merge branch 'master' of git.php.net:php-src 2014-01-28 15:58:08 +02:00
Andrey Hristov 3834771b2e Merge branch 'PHP-5.6'
Conflicts:
	NEWS
	UPGRADING
2014-01-28 15:57:48 +02:00
Andrey Hristov d9078c7c8d Merge branch 'PHP-5.6' 2014-01-28 15:47:50 +02:00
Anatol Belski 90bce9f1e8 word on bit shifting 2014-01-28 14:17:36 +01:00
Bob Weinand 4b8c098f02 Merge branch 'PHP-5.6' 2014-01-28 13:35:13 +01:00
Anatol Belski b1396cc7a5 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix *.dsp files related to bug #50333
2014-01-28 13:10:01 +01:00
Anatol Belski 82857031f0 fix datatype 2014-01-28 12:00:33 +01:00
Freek 54a6c1de7d Fix #66562: Consistency bug where curl_multi_getcontent behaves different from curl_exec
curl_exec returns an empty string when data is received from a domain that returns zero content. curl_multi_getcontent
returned null. Now it returns an empty string fixing the incosistency
2014-01-28 11:47:14 +01:00
Anatol Belski b972c10f3c Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-28 07:58:50 +01:00
Daniel Lowrey aafce7353e Merge branch '5.6'
* 5.6:
  Update NEWS/UPGRADING
  Prevent invalid SAN peer verification on null byte prefix attack
2014-01-27 15:00:04 -07:00
Yasuo Ohgaki 9f3a98b124 Merge branch 'PHP-5.6'
* PHP-5.6:
  Remove obsolete description
2014-01-27 18:58:06 +09:00
krakjoe 1c0fccfc9a fix readline build error bugsnet #66576 2014-01-27 07:39:34 +00:00
Stanislav Malyshev 473cd4d6a9 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix English and improve by Stas. Thanks :)
  Update source docs
  Revert "Update source docs"
  Update source docs
2014-01-26 17:21:33 -08:00
Stanislav Malyshev 586f379b88 Merge branch 'PHP-5.6'
* PHP-5.6:
  drop precision since trigonometric functions are non-portable
  XFAIL multibyte tests until they are fixed (bug 66582)
2014-01-26 15:51:46 -08:00
Stanislav Malyshev 909ef53e9d Merge branch 'PHP-5.6'
* PHP-5.6:
  drop precision since trigonometric functions are non-portable
2014-01-26 15:16:08 -08:00
Stanislav Malyshev 4e89151159 Merge branch 'PHP-5.6'
* PHP-5.6:
  XFAIL multibyte tests until they are fixed (bug 66582)
2014-01-26 15:12:40 -08:00
Stanislav Malyshev ceca4d2490 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix test
2014-01-26 14:31:43 -08:00
Stanislav Malyshev a0445644e0 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix test
2014-01-26 14:26:26 -08:00
Stanislav Malyshev 8e08f6c28d Merge branch 'PHP-5.6'
* PHP-5.6:
  fix test - new flag ZEND_ACC_HAS_TYPE_HINTS
2014-01-26 12:17:32 -08:00
Stanislav Malyshev c4259f90b1 fix test - new flag ZEND_ACC_HAS_TYPE_HINTS 2014-01-26 12:17:29 -08:00
Anatol Belski d7c02a47fd extended replace.php with --reverse and --zpp 2014-01-26 18:21:05 +01:00
Derick Rethans 6dd41435a3 Merge branch 'PHP-5.6' 2014-01-26 14:02:55 +01:00
Anatol Belski 350d9db222 after merge fixes to ext/ldap 2014-01-26 13:42:06 +01:00
Anatol Belski 4d7f63385b Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-26 12:29:45 +01:00
Stanislav Malyshev c2a93ba3af Merge branch 'PHP-5.6'
* PHP-5.6:
  fix test bug62479.phpt
2014-01-25 23:27:48 -08:00
Stanislav Malyshev 1eee68d3f4 Merge branch 'PHP-5.6'
* PHP-5.6:
  Implement ldap_modify_batch.
2014-01-25 22:05:18 -08:00
Anatol Belski 2726001dd0 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-25 22:24:37 +01:00
Derick Rethans 0f62b94971 Merge branch 'PHP-5.6' 2014-01-25 16:16:42 +01:00
Anatol Belski 3b61e3ec1e Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/mysqlnd/mysqlnd_ps_codec.c
2014-01-24 22:15:16 +01:00
Ferenc Kovacs a791671f40 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix the primary qa email address and update the list of available people being able to add moderators to our lists
  Revert "Fix #62479: Some chars not parsed in passwords"
  Fix #62479: Some chars not parsed in passwords
2014-01-24 16:13:10 +01:00
Andrey Hristov 3aa6f8bfdd Merge branch 'PHP-5.6' 2014-01-24 12:31:33 +02:00
Andrey Hristov dc6b14149d Merge branch 'PHP-5.6'
Conflicts:
	ext/mysqlnd/mysqlnd_ps_codec.c
2014-01-24 12:15:03 +02:00
Anatol Belski 727fac6290 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/mysqlnd/mysqlnd_ps_codec.c
2014-01-24 04:20:21 +01:00
Anatol Belski 9debf41bfd some extension to the porting doc 2014-01-24 04:15:50 +01:00
Xinchen Hui 874a0bb7eb Merge branch 'PHP-5.6' 2014-01-24 10:52:22 +08:00
Will Fitch 28e0a2129b Merge branch 'PHP-5.6'
* PHP-5.6:
  Update gitignore and Makefile for additional entries
2014-01-23 21:36:54 -05:00
Christopher Jones daa34699af Add #defines for compatibility with PHP releases prior to the core PHP
type changes.
2014-01-23 11:13:32 -08:00
Andrey Hristov 7072db5a6b FIx failing tests because of operator precedence 2014-01-23 18:20:13 +02:00
Anatol Belski 4be5d97f3d fixed merge error in ext/oci8 2014-01-23 01:10:13 +01:00
Anatol Belski c0e5d95ca6 added convert_to_int_ex 2014-01-23 01:07:44 +01:00
Christopher Jones ab5405e800 Fixes to ext/oci8 2014-01-23 00:25:55 +01:00
Anatol Belski 2741cf56a4 missed header 2014-01-22 15:16:35 -08:00
Anatol Belski aa6f6ca864 fixed ZEND_INT_FMT 2014-01-22 15:11:39 -08:00
Anatol Belski 2bdb887975 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-22 23:47:05 +01:00
Anatol Belski 4904be6d94 Merge branch 'PHP-5.6'
* PHP-5.6:
  refixed that test for 5.5+
  5.5.10 next
2014-01-22 23:31:09 +01:00
Anatol Belski d21056176a missing piece of code from the mainstream 2014-01-22 22:19:02 +01:00
Anatol Belski 806e540a4f Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-22 15:43:09 +01:00
Anatol Belski 03dfe0d5e0 Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed test
2014-01-22 15:41:45 +01:00
Anatol Belski 529060dbc9 after merge fix ext\session 2014-01-22 14:55:25 +01:00
Anatol Belski 374a796daa renamed the compat macros 2014-01-22 14:51:47 +01:00
Anatol Belski dcdf236467 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix zts
2014-01-22 12:05:27 +01:00
Anatol Belski bb45daeb75 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-22 11:56:50 +01:00
Anatol Belski 74fff1512a Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed missing usleep() prototype in pgsql
2014-01-22 11:54:16 +01:00
Yasuo Ohgaki 36a7f48e84 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed previous commit may delete unwanted cookies. Sync tests from upper branches.
  Re-fixed bug #66469
2014-01-22 19:23:52 +09:00
Anatol Belski ff42d2a644 after merge fix and more revamp on ext\session 2014-01-22 09:54:04 +01:00
Anatol Belski 8a43325b38 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-22 09:29:30 +01:00
Yasuo Ohgaki 9cefeea860 Merge branch 'PHP-5.6'
* PHP-5.6:
  Re-fixed bug #66469
2014-01-22 13:49:13 +09:00
Stanislav Malyshev d5f79e40e5 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix CVE ref for bug #66060
  fix CVE ref for bug #66060
  fix buglet in makedist
  5.4.26 next
  fix news
2014-01-21 13:29:13 -08:00
Anatol Belski a40c20f764 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/mysqlnd/mysqlnd_result.c
2014-01-21 17:17:27 +01:00
Anatol Belski 4b7148711b Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed post deactivate signature in ext\libxml
2014-01-21 17:15:12 +01:00
Johannes Schlüter 676864684b Merge branch 'PHP-5.6' 2014-01-21 16:40:13 +01:00
David Soria Parra 807d937e91 Merge branch 'PHP-5.6'
* PHP-5.6:
  Change automaticaly to automatically
2014-01-21 16:20:14 +01:00
Ferenc Kovacs 2bf13b2042 Merge branch 'PHP-5.6' 2014-01-21 11:21:28 +01:00
Ferenc Kovacs 15acd4ee50 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix these tests so they properly clean up after themselves.
2014-01-21 02:29:11 +01:00
Anatol Belski 5b83f7252a Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-20 17:39:53 +01:00
Anatol Belski 9673f66da6 range checks for ext\bz2 2014-01-20 17:24:09 +01:00
Remi Collet a3541301eb Merge branch 'PHP-5.6'
* PHP-5.6:
  Skip those test which fails on ARM architecture
  dos2unix
2014-01-20 14:44:43 +01:00
Xinchen Hui aaad97675a Merge branch 'PHP-5.6' 2014-01-20 21:25:42 +08:00
Anatol Belski 89a9acea1f Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed glob compilation with vc12
2014-01-20 10:13:22 +01:00
Anatol Belski d501707248 Merge branch 'PHP-5.6'
* PHP-5.6:
  support for Visual C+ 2013
2014-01-20 10:05:37 +01:00
Remi Collet 5b5b9b9239 Merge branch 'PHP-5.6'
* PHP-5.6:
  Skip readline tests which fail with libedit Add specific libedit test (output slightly differs)
2014-01-20 09:39:39 +01:00
Remi Collet 3b82a477b0 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed Bug #66412 readline_clear_history() with libedit causes segfault after #65714
2014-01-20 08:41:04 +01:00
Bob Weinand 2e4aed3673 Merge branch PHP-5.6 of php-src 2014-01-19 12:26:14 +01:00
Yasuo Ohgaki fd45f1eb78 Merge branch 'PHP-5.6'
* PHP-5.6:
  Enable zend.multibyte tests. Tipcal configuration works, but most tests fail.
2014-01-19 13:33:27 +09:00
Bob Weinand ab16299355 Removed some segfault; does still not delete all the watches if var is removed, might segfault 2014-01-18 20:36:56 -05:00
Anatol Belski e3cfbef33f Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/pdo_pgsql/pgsql_driver.c
2014-01-19 02:17:07 +01:00
Anatol Belski d788a85736 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix C89 compat
2014-01-19 02:05:38 +01:00
Will Fitch 9eb4bc2f84 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix #62479: Some chars not parsed in passwords
2014-01-18 19:49:06 -05:00
Anatol Belski bc7dc1913c Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-19 01:35:02 +01:00
Bob Weinand 3714352cb1 Merge branch 'master' of ssh://github.com/krakjoe/phpdbg into watchpoints_recursive 2014-01-18 19:30:13 -05:00
Bob Weinand f27be2fded Fixed order of instructions... 2014-01-18 19:24:22 -05:00
Bob Weinand 992a8d0411 Clean root symbol table when starting new execution 2014-01-18 18:48:53 -05:00
Bob Weinand b12286461d Merge branch 'master' of ssh://github.com/krakjoe/phpdbg 2014-01-18 13:18:47 -05:00
Bob Weinand a1f5925652 Fixed that for example "run" is only set as last cmd after the whole execution 2014-01-18 13:18:28 -05:00
Will Fitch 4e5195f82c Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #66509: copy() arginfo incorrect since 5.4
2014-01-18 11:57:34 -05:00
Nikita Popov 89eab884d9 Merge branch 'PHP-5.6' 2014-01-18 14:44:57 +01:00
Johannes Schlüter 84efb8fc71 Merge branch 'PHP-5.6' 2014-01-18 13:53:15 +01:00
Anatol Belski f5d48e8524 partial revamp ext/intl 2014-01-17 23:52:19 +01:00
Bob Weinand f4a7e50156 Update year 2014-01-17 23:09:07 +01:00
Adam Harvey 86096a99ec Merge branch 'PHP-5.6' 2014-01-17 20:29:31 +08:00
Michael Wallner f1fc5a5bf5 Merge branch 'PHP-5.6'
* PHP-5.6:
  Clarify always_populate_raw_post_data situation in 5.6
2014-01-17 12:19:17 +01:00
Anatol Belski ee039d5a1a Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-17 11:12:14 +01:00
Anatol Belski deb56c010e Merge branch 'PHP-5.6' 2014-01-17 11:08:21 +01:00
Antony Dovgal cfce5a4d02 Merge branch 'master' of https://git.php.net/repository/php-src
* 'master' of https://git.php.net/repository/php-src:
  forked the test for bug #66481
2014-01-17 12:22:34 +04:00
Antony Dovgal a053e69991 fix indentation 2014-01-17 12:22:07 +04:00
Anatol Belski feb4eb850d Merge branch 'PHP-5.6'
* PHP-5.6:
  forked the test for bug #66481
2014-01-17 03:32:26 +01:00
Antony Dovgal 998f506b6d Merge branch 'fpm-apparmor-fixed' of https://github.com/notti/php-src
* 'fpm-apparmor-fixed' of https://github.com/notti/php-src:
  Add some basic and apparmor tests to fpm
  Add --force-stderr to fpm
  Add apparmor change hat functionality to fpm
2014-01-16 17:36:03 +04:00
Anatol Belski 24850c5662 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-16 10:16:04 +01:00
Xinchen Hui 7691926bbe Merge branch 'PHP-5.6' 2014-01-16 14:42:14 +08:00
Anatol Belski 49c20cdfcb Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-16 07:32:33 +01:00
Yasuo Ohgaki 7b5b2b4efa Merge branch 'PHP-5.6'
* PHP-5.6:
  Bug #66481 Segfaults on session_name()
2014-01-16 11:35:57 +09:00
Dmitry Stogov 511a375e60 Merge branch 'PHP-5.6'
* PHP-5.6:
  Log information about cached scripts and keys
2014-01-15 12:15:41 +04:00
Anatol Belski 208e580ebc Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/pgsql/pgsql.c
2014-01-15 08:29:12 +01:00
Dmitry Stogov 61028ad45e Merge branch 'PHP-5.6'
* PHP-5.6:
  We don't know PHP_5_6_X_API_NO yet
2014-01-15 11:11:01 +04:00
Yasuo Ohgaki e4f1eee6c3 Merge branch 'PHP-5.6'
* PHP-5.6:
  Added pg_lo_truncate() and 64bit large object support from PostgreSQL 9.3 and up
2014-01-15 14:39:56 +09:00
Yasuo Ohgaki a92c5b14cf Merge branch 'PHP-5.6'
* PHP-5.6:
  Always initialize pg_version() result array elements to prevent failed test with older postgresql servers. Add missing client_encoding element.
2014-01-15 14:28:08 +09:00
Yasuo Ohgaki ee4e5ce2cf Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed pg_version() crash with older postgresql
2014-01-15 13:32:43 +09:00
Yasuo Ohgaki 42c134df4b Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed session module is sending multiple set-cookie headers when session.use_strict_mode=1
2014-01-15 11:07:51 +09:00
Anatol Belski 3213959080 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-14 17:23:59 +01:00
Xinchen Hui aca07343ce Merge branch 'PHP-5.6' 2014-01-14 22:34:53 +08:00
Anatol Belski 4f71b9022d fix printf spec 2014-01-14 05:59:40 -08:00
Anatol Belski d384422f27 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/mysqlnd/mysqlnd_ps_codec.c
2014-01-14 09:51:34 +01:00
Anatol Belski 25e57e702b fix uninitialized value 2014-01-14 09:47:27 +01:00
Anatol Belski 0c04890354 more fixes after merge 2014-01-14 09:45:46 +01:00
Anatol Belski 5866c701a2 after merge fix 2014-01-14 09:15:55 +01:00
Anatol Belski 28c917923d Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/mysqlnd/mysqlnd_ps_codec.c
2014-01-14 09:10:38 +01:00
Anatol Belski 614a69fe1d Merge branch 'str_size_and_int64' of git.php.net:php-src into str_size_and_int64 2014-01-14 08:59:36 +01:00
Yasuo Ohgaki 681e1a5ce0 Merge branch 'PHP-5.6'
* PHP-5.6:
  Made pg_version() return full connection info.
2014-01-14 10:16:43 +09:00
Paul Tarjan d599d36d49 Dont ignore errors from FT_Get_Glyph 2014-01-13 16:30:48 -08:00
Andrey Hristov bbc37e78e8 Merge branch 'master' of git.php.net:php-src 2014-01-14 01:32:36 +02:00
Andrey Hristov 73008bb5ce More refactoring of the big function generating execute requests 2014-01-14 01:31:16 +02:00
Anatol Belski aeec64b7f4 fixed a typo 2014-01-13 23:12:58 +01:00
Anatol Belski f92f7f05e9 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-13 22:08:35 +01:00
Dmitry Stogov 5980e987d2 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed ZTS build
2014-01-13 23:11:36 +04:00
Anatol Belski 7010a933d1 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-13 18:58:45 +01:00
Anatol Belski 25dfcf4fdd small corrections 2014-01-13 18:56:43 +01:00
Anatol Belski de137e5a8d Merge branch 'PHP-5.6'
* PHP-5.6:
  forked test for win32
2014-01-13 17:13:11 +01:00
Dmitry Stogov 127eb33b84 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66461 (PHP crashes if opcache.interned_strings_buffer=0)
2014-01-13 18:07:26 +04:00
Anatol Belski 972a6bd0f7 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/opcache/Optimizer/pass1_5.c
2014-01-13 14:29:14 +01:00
Anatol Belski e15f7decd1 further porting notes 2014-01-13 14:23:39 +01:00
Dmitry Stogov e141592da6 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66440 (Optimisation of conditional JMPs based on pre-evaluate constant function calls)
2014-01-13 16:16:57 +04:00
Dmitry Stogov f5182741a6 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  move common code into a function
2014-01-13 15:36:37 +04:00
Dmitry Stogov 3458dac342 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66471 (Keep backward compatibility)
2014-01-13 15:36:06 +04:00
Anatol Belski 21643019c0 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/mysqlnd/mysqlnd_ps_codec.c
2014-01-13 12:29:30 +01:00
Anatol Belski bd5a5e7f7a added ptrdiff_t notes and some other porting doc improvements 2014-01-13 12:22:01 +01:00
Anatol Belski 85ff0a75e3 ws and some note corrections 2014-01-13 12:04:25 +01:00
Anatol Belski e5613c17fc more on porting 2014-01-13 11:55:53 +01:00
Andrey Hristov cf9966671c Merge branch 'master' of git.php.net:php-src 2014-01-13 12:40:59 +02:00
Andrey Hristov 01d5e28057 move common code into a function 2014-01-13 12:40:39 +02:00
Anatol Belski 7957d672bc Merge remote-tracking branch 'origin/master' into str_size_and_int64
* origin/master:
  Fixed bug #66474 (Optimizer bug in constant string to boolean conversion)
2014-01-13 10:45:19 +01:00
Anatol Belski f7e5a97076 further writing on PECL_PORTING 2014-01-13 10:44:36 +01:00
Dmitry Stogov aab2e8eb7e Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66474 (Optimizer bug in constant string to boolean conversion)
2014-01-13 12:08:23 +04:00
Anatol Belski 4560d412bb reworked compat.h 2014-01-13 04:08:46 +01:00
Bob Weinand 66e93a7820 Merge branch 'master' of ssh://github.com/krakjoe/phpdbg into watchpoints_recursive
Conflicts:
	phpdbg.c
2014-01-12 20:40:54 -05:00
Anatol Belski 2487493f83 added compat.h 2014-01-12 15:48:47 +01:00
Anatol Belski 3957288cf7 rrenamed the readme file 2014-01-12 14:02:18 +01:00
Anatol Belski b1ea854100 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-12 12:03:53 +01:00
Anatol Belski fba53c888b started the porting docs/tools 2014-01-12 12:00:12 +01:00
Bob Weinand a86e869ee8 Merge branch 'PHP-5.6' 2014-01-12 02:00:37 +01:00
Anatol Belski fd09f3f059 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	Zend/zend_language_parser.y
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2014-01-11 16:30:35 +01:00
Nikita Popov 4facc35413 Merge branch 'PHP-5.6' 2014-01-11 12:54:08 +01:00
Anatol Belski 5122ece265 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-11 00:25:13 +01:00
Bob Weinand 78e274af31 Added rudimentary support for watchpoints on an array itself 2014-01-10 13:54:07 -05:00
Johannes Schlüter 82dfe1acc8 Merge branch 'PHP-5.6' 2014-01-10 16:04:29 +01:00
Anatol Belski 5fefc0ce47 reverted erroneous patch in array_sum() 2014-01-10 14:56:03 +01:00
Anatol Belski aaccf60fea Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-09 16:30:25 +01:00
Anatol Belski 9aaea81cfe Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed EOL in the test
2014-01-09 15:29:16 +01:00
Anatol Belski 3572a0482d Merge branch 'PHP-5.6'
* PHP-5.6:
  added testcase from bug #65371
2014-01-09 15:25:18 +01:00
Dmitry Stogov 83b00bbd08 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed ADD_INTERNED_STRING() logic to support strings that are already interned. (Terry)
2014-01-09 13:50:12 +04:00
Anatol Belski 6951bea25e revamped ext/shmop 2014-01-09 09:51:21 +01:00
Anatol Belski 9dd5099566 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-09 08:26:42 +01:00
Anatol Belski 2a468115e3 revamp mysqlnd, mysqli, mysql and pdo_mysql 2014-01-09 04:18:37 +01:00
Anatol Belski 8edaa10eab fixed the 'p' modifier when %p is used 2014-01-09 04:17:38 +01:00
Gernot Vormayr e9883779a0 Add some basic and apparmor tests to fpm 2014-01-07 00:21:24 +01:00
Gernot Vormayr 32d9409a24 Add --force-stderr to fpm 2014-01-07 00:19:01 +01:00
Scott MacVicar 6fe34014f0 Merge branch 'PHP-5.6'
* PHP-5.6:
  [libxml] Unit test for libxml_disable_entity_loader()
2014-01-06 17:06:33 +00:00
Scott MacVicar 28beaaad9c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  [libxml] Unit test for libxml_disable_entity_loader()
2014-01-06 17:05:34 +00:00
Scott MacVicar 42f084c692 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  [libxml] Unit test for libxml_disable_entity_loader()
2014-01-06 17:05:16 +00:00
Scott MacVicar 24cc7c0be2 [libxml] Unit test for libxml_disable_entity_loader()
Summary:
Test to make sure libxml_disable_entity_loader() is behaving.
2014-01-06 17:04:54 +00:00
Anatol Belski 47df90a765 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2014-01-05 23:06:08 +01:00
Anatol Belski e797e058c5 Merge branch 'PHP-5.6'
* PHP-5.6:
  one more extension for the basename test
2014-01-05 19:22:11 +01:00
Anatol Belski ac875f8f7e Merge branch 'PHP-5.6'
* PHP-5.6:
  improved the fix for bug #66395
  Fixed bug #66009 Failed compilation of PHP extension with C++ std library using VS 2012
  updated NEWS
  Fixed bug #66009 Failed compilation of PHP extension with C++ std library using VS 2012
2014-01-05 19:13:40 +01:00
Anatol Belski 4ff4837966 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	Zend/zend.c
	Zend/zend_ini_scanner.c
2014-01-04 02:17:11 +01:00
Anatol Belski 19aafe43b2 Fixed bug #66009 Failed compilation of PHP extension with C++ std library using VS 2012
Visual Studio 2012 includes sanity checks for C++11 features, see
http://msdn.microsoft.com/en-us/library/vstudio/bb531344(v=vs.110).aspx
To fix the 'inline' keyword redefinition for C++ in debug mode, the
new macros ZEND_WIN32_KEEP_INLINE is introduced, ZEND_WIN32_FORCE_INLINE is
automatically appended in release mode.
2014-01-04 01:41:49 +01:00
Nikita Popov 250ee4c17a Merge branch 'PHP-5.6' 2014-01-04 01:30:44 +01:00
Anatol Belski 6e7d24dd14 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
2014-01-03 22:45:09 +01:00
Anatol Belski b502c0a3dc Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66395 basename function doesn't remove drive letter
2014-01-03 22:39:17 +01:00
Xinchen Hui b209c27302 Merge branch 'PHP-5.6' 2014-01-03 11:37:32 +08:00
Xinchen Hui af6c11c5f0 Bump year 2014-01-03 11:11:57 +08:00
Xinchen Hui 0f53e37494 Merge branch 'PHP-5.6' 2014-01-03 11:09:07 +08:00
Derick Rethans c9f909cd42 Merge branch 'PHP-5.6' 2014-01-02 12:52:26 +00:00
Derick Rethans 63d390cdf9 Merge branch 'PHP-5.6' 2014-01-02 12:47:52 +00:00
Anatol Belski 826064410c Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/gmp/gmp.c
2014-01-02 09:55:25 +01:00
krakjoe 9e4ab7c53f Merge branch 'PHP-5.6'
* PHP-5.6:
  fix #66375 bad logic in sapi header callback routine
2014-01-01 13:01:41 +00:00
Felipe Pena 57a6209051 Merge branch 'PHP-5.6'
* PHP-5.6:
  - Fixed bug #66381 (__ss_family was changed on AIX 5.3)
2014-01-01 09:57:03 -02:00
Bob Weinand f4eeda9a9b First try of recursive watchpoints 2013-12-31 13:14:36 -05:00
Bob Weinand c64d692f49 Merge branch 'master' into watchpoints
Conflicts:
	CREDITS
	phpdbg.c
	test.php
2013-12-31 12:07:10 -05:00
Nikita Popov 73db3cda8b Merge branch 'PHP-5.6' 2013-12-30 14:41:45 +01:00
Michael Wallner 79d1c70e99 This should be an empty merge.
Merge branch 'PHP-5.6'

* PHP-5.6:
  update php.ini-*
  Add E_DEPRECATED when populating $HTTP_RAW_POST_DATA
  add 'never'
  fix type
  fix type; add tests for -1
  s/BOOLEAN/ENTRY/
  re-introduce always_populate_raw_post_data
2013-12-30 14:32:25 +01:00
Nikita Popov 056f3441fd Merge branch 'PHP-5.6' 2013-12-30 13:59:55 +01:00
Anatol Belski 9ac081f295 after merge fixes to ext/zip 2013-12-30 10:48:14 +01:00
Anatol Belski 4e9b54757a fixes after merge and some opcache revamp 2013-12-30 10:42:05 +01:00
Anatol Belski d40315a09d Merge remote-tracking branch 'origin/master' into str_size_and_int64 2013-12-30 10:12:32 +01:00
Anatol Belski bcfee0ada4 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/opcache/Optimizer/zend_optimizer.c
	ext/opcache/Optimizer/zend_optimizer_internal.h
	ext/zip/php_zip.c
2013-12-30 10:07:08 +01:00
Remi Collet a3c7971f94 Merge branch 'PHP-5.6'
* PHP-5.6:
  missing file from libzip 0.11.2
2013-12-30 10:00:19 +01:00
Remi Collet 7844fb292c Merge branch 'PHP-5.6'
* PHP-5.6:
  fix compat for PHP ABI changes
2013-12-30 08:47:23 +01:00
Remi Collet 717dcdaa67 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
2013-12-30 07:45:17 +01:00
Remi Collet 764190c1d6 Merge branch 'PHP-5.6'
* PHP-5.6:
  Sync with pecl/zip 1.12.4dev
2013-12-30 07:38:45 +01:00
Xinchen Hui 6b34343479 Merge branch 'PHP-5.6' 2013-12-30 11:07:42 +08:00
Xinchen Hui 8b72df0608 Merge branch 'PHP-5.6' 2013-12-30 10:58:56 +08:00
Xinchen Hui 408ae9a452 Merge branch 'PHP-5.6' 2013-12-30 10:52:21 +08:00
Anatol Belski b923ee32c9 added ZEND_ABS and revamped some related stuff 2013-12-29 16:39:15 +01:00
Anatol Belski 1085d21693 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2013-12-28 17:30:23 +01:00
Remi Collet bd3e5aab1d Merge branch 'PHP-5.6'
* PHP-5.6:
  minor fix on previous
2013-12-28 14:29:38 +01:00
Remi Collet 8785e22bca Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66356 (Heap Overflow Vulnerability in imagecrop())
2013-12-28 14:26:24 +01:00
Anatol Belski 4aca887f8b other place with 64 bit << and hash size 2013-12-28 13:58:22 +01:00
Anatol Belski 10cd3f86b7 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2013-12-28 02:36:45 +01:00
Anatol Belski b8b4591265 fix bit shift 64 vs 32 bit vars 2013-12-28 00:38:49 +01:00
Anatol Belski e2df932ef0 revamp the hash api once more 2013-12-27 23:28:22 +01:00
krakjoe 50f09d8256 Merge branch 'PHP-5.6'
* PHP-5.6:
  update version output
2013-12-27 18:04:06 +00:00
Anatol Belski 173bd989cd fix macros conflicts when included intsafe.h 2013-12-27 17:32:46 +01:00
Anatol Belski d0ab1e4ea4 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/gd/gd.c
2013-12-27 17:01:29 +01:00
Xinchen Hui fb4678f1ac Merge branch 'PHP-5.6' 2013-12-27 20:46:08 +08:00
Xinchen Hui c0476ff44b Merge branch 'PHP-5.6' 2013-12-27 14:11:41 +08:00
Xinchen Hui 1a4863d560 Merge branch 'PHP-5.6' 2013-12-27 14:07:15 +08:00
Anatol Belski 8d0b174eea removed accidentially merged in files 2013-12-26 13:33:38 +01:00
Anatol Belski 3e65d7dad0 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	Zend/zend_compile.c
2013-12-26 13:06:49 +01:00
Dmitry Stogov 65fd18fd88 Merge branch 'PHP-5.6'
* PHP-5.6:
  Improved empty string handling. Now ZE uses an interned string instead of allocation new empty string each time. (Some extensions might need to be fixed using str_efree() instead of efree() to support interned strings).

Conflicts:
	NEWS
	Zend/zend_extensions.h
	Zend/zend_modules.h
2013-12-26 14:51:05 +04:00
Xinchen Hui d6713f3989 Fixed warning "No new line at end of file" 2013-12-26 17:45:37 +08:00
Dmitry Stogov ef56cfb991 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed ZEND_MM_MEM_TYPE=mmap_zero
2013-12-26 11:53:03 +04:00
Anatol Belski a5720b4493 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2013-12-25 23:45:53 +01:00
Anatol Belski c676f5b36d Merge branch 'PHP-5.6'
* PHP-5.6:
  fix c89 compat
2013-12-25 23:44:24 +01:00
Anatol Belski 734c28d242 Merge branch 'PHP-5.6'
* PHP-5.6:
  brought the ext/sybase_ct/config.w32 up to date
2013-12-25 23:31:17 +01:00
Anatol Belski d031758b49 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2013-12-25 22:40:03 +01:00
Anatol Belski 1dc85bfa6c revamp ext/sybase_ct 2013-12-25 22:33:11 +01:00
Xinchen Hui bd0a8f31a4 Merge branch 'master' of git.php.net:php-src 2013-12-25 15:36:45 +08:00
Xinchen Hui 03e36cd5b8 Merge branch 'PHP-5.6' 2013-12-25 15:35:02 +08:00
Stanislav Malyshev b3c43a1aec Merge branch 'PHP-5.6'
* PHP-5.6:
  5.4.25 next
2013-12-24 22:23:55 -08:00
Anatol Belski 79eb697f48 Merge branch 'master' into str_size_and_int64 2013-12-24 22:04:07 +01:00
Anatol Belski 0493099786 next wave on fixes for ext/phpdbg 2013-12-24 21:59:44 +01:00
Anatol Belski 3af0ee0ea3 Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed incompatible pointer in phpdbg on win64
2013-12-24 21:09:45 +01:00
Bob Weinand c02acf3c29 Merge branch 'PHP-5.6' 2013-12-24 13:20:12 +01:00
Anatol Belski 5ae8f624a1 basic fixes to sapi/phpdbg 2013-12-24 02:44:53 -08:00
Anatol Belski 713b69adf8 added credits note 2013-12-24 02:44:53 -08:00
Anatol Belski 87f348a1e7 basic fixes to sapi/fpm 2013-12-24 02:44:53 -08:00
Anatol Belski 4267b15630 Z_STRLEN vs Z_STRSIZE 2013-12-24 02:44:53 -08:00
Joe Watkins 5aba79affa update credits 2013-12-24 02:44:53 -08:00
Bob Weinand 62f0ffb34e Added breaking upon fatal-ish error 2013-12-24 02:44:53 -08:00
Stanislav Malyshev 4363b38657 fix NEWS file for master 2013-12-24 02:44:53 -08:00
Bob Weinand 09e6ef3986 Fixed credits in phpdbg.* files 2013-12-24 02:44:52 -08:00
Joe Watkins ca8ff0725b update credits 2013-12-24 09:04:32 +00:00
Joe Watkins e07dfa96b3 Merge branch 'master' of https://git.php.net/repository/php-src
* 'master' of https://git.php.net/repository/php-src:
  Fixed credits in phpdbg.* files
  Added breaking upon fatal-ish error
  fix NEWS file for master
  credits file for phpdbg
  Fixed credits in phpdbg.* files
  reformat
  credits file
2013-12-24 09:03:55 +00:00
Bob Weinand ad358593a8 Merge branch 'PHP-5.6' 2013-12-24 00:37:20 +01:00
Stanislav Malyshev 6daa84f199 fix NEWS file for master 2013-12-23 15:25:38 -08:00
Anatol Belski 2f77629f72 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2013-12-23 23:41:29 +01:00
Anatol Belski e540839c8b Merge branch 'master' into str_size_and_int64
Conflicts:
	Zend/zend_vm_execute.h
	ext/opcache/Optimizer/pass1_5.c
	ext/opcache/ZendAccelerator.h
2013-12-23 23:39:42 +01:00
Joe Watkins 056f6fd895 Merge branch 'PHP-5.6'
* PHP-5.6:
  credits file for phpdbg
2013-12-23 22:37:36 +00:00
Anatol Belski 63ea29a206 fixed tests using 'expected to be long' vs 'expected to be integer' 2013-12-23 14:28:02 -08:00
Anatol Belski a06a89dba6 removed the all style function arg formats 'l', 's', 'p' 2013-12-23 14:24:34 -08:00
Stanislav Malyshev 392f6830a1 Merge branch 'PHP-5.6'
* PHP-5.6:
  restore NEWS to the state of 6c5e93fe17
2013-12-23 14:10:44 -08:00
krakjoe 433bc142a6 credits file 2013-12-23 21:51:00 +00:00
Anatol Belski 389b4d411e fix typo after merge 2013-12-23 20:31:40 +01:00
Dmitry Stogov 276b9767e4 Fixed bug #66338 (Optimization binding of class constants is not safely opcacheable) 2013-12-23 20:30:30 +01:00
Dmitry Stogov c699696c43 Fixed bug #66334 (Memory Leak in new pass1_5.c optimizations). (Terry) 2013-12-23 20:30:27 +01:00
krakjoe 8d64f0ee71 missing, apparently 2013-12-23 20:25:58 +01:00
Dmitry Stogov 67eccf8617 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66338 (Optimization binding of class constants is not safely opcacheable)
2013-12-23 16:54:54 +04:00
Dmitry Stogov bd88bed670 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  removed outdated IsDebuggerPresent declaration
2013-12-23 16:05:38 +04:00
Dmitry Stogov 209ec406ca Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66334 (Memory Leak in new pass1_5.c optimizations). (Terry)
2013-12-23 16:05:18 +04:00
Anatol Belski ea7a70708f removed outdated IsDebuggerPresent declaration
This piece of code seems to retain compatibility with some windows
versions before 2000. Today it's not relevant anymore and only
produces a warning C4273 because of the conflicting prototype. In
VC9 the declaration is present in winbase.h:4142, but available
is it already in winxp. Here's the doc link
http://msdn.microsoft.com/en-us/library/windows/desktop/ms680345(v=vs.85).aspx
2013-12-23 12:34:30 +01:00
Dmitry Stogov 1c462a4e4d Added suggestion about opcache.revalidate_freq setting in development environment 2013-12-23 12:34:27 +01:00
Dmitry Stogov 9c5a902106 Fixed Issue #140: "opcache.enable_file_override" doesn't respect "opcache.revalidate_freq" 2013-12-23 12:34:26 +01:00
Sara Golemon 78f2ded86a Bump ZEND_MODULE_API_NO due to the TSRMLS change to zend_is_true() 2013-12-23 12:30:16 +01:00
krakjoe a2e77fb258 opcodes 2013-12-23 12:29:01 +01:00
krakjoe 07e97f919d missing, apparently 2013-12-23 12:28:59 +01:00
krakjoe f9affb5ae9 stop warnings from unused opcode map 2013-12-23 12:24:11 +01:00
Felipe Pena aaca4ede15 - Fixed bug #66311 (Stack smashing protection kills PDO/ODBC queries) patch by: michael at orlitzky dot com 2013-12-23 12:17:15 +01:00
Anatol Belski f4a96983e1 Merge branch 'PHP-5.6'
* PHP-5.6:
  removed outdated IsDebuggerPresent declaration
2013-12-23 12:01:26 +01:00
Dmitry Stogov 62fa84a031 Merge branch 'PHP-5.6'
* PHP-5.6:
  Added suggestion about opcache.revalidate_freq setting in development environment
2013-12-23 13:11:22 +04:00
Dmitry Stogov 5bc9e006e8 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed Issue #140: "opcache.enable_file_override" doesn't respect "opcache.revalidate_freq"
  fix news
  opcodes
  opcodes

Conflicts:
	NEWS
2013-12-23 12:52:27 +04:00
Sara Golemon 6a2a2b52f9 Bump ZEND_MODULE_API_NO due to the TSRMLS change to zend_is_true() 2013-12-22 14:10:59 -08:00
krakjoe befdd1770a fix news 2013-12-22 14:34:29 +00:00
krakjoe 523a6b50ae fix news file 2013-12-22 13:27:38 +00:00
krakjoe 8ce521a6a7 missing, apparently 2013-12-22 13:19:35 +00:00
krakjoe 621862a192 Merge branch 'PHP-5.6'
* PHP-5.6:
  stop warnings from unused opcode map
  - BFN

Conflicts:
	NEWS
	Zend/zend_vm_opcodes.h
2013-12-22 13:15:40 +00:00
Felipe Pena e700cbff22 Merge branch 'PHP-5.6'
* PHP-5.6:
  - Fixed bug #66311 (Stack smashing protection kills PDO/ODBC queries) patch by: michael at orlitzky dot com
2013-12-22 09:43:29 -02:00
Anatol Belski 85251eccaf Merge remote-tracking branch 'origin/master' into str_size_and_int64 2013-12-22 11:57:14 +01:00
Anatol Belski e11fbd979f next wave of revamp in Zend 2013-12-22 11:54:30 +01:00
Bob Weinand 2bf271bbb0 Merge branch 'PHP-5.6' 2013-12-22 01:08:47 +01:00
Bob Weinand 5b1f6caaf0 Merge branch 'PHP-5.6' 2013-12-22 00:57:31 +01:00
Anatol Belski 94fcc9e8c7 Merge branch 'master' into str_size_and_int64 2013-12-21 21:49:03 +01:00
Bob Weinand 0cc89be244 Merge branch 'PHP-5.6' 2013-12-21 21:33:15 +01:00
Anatol Belski b77d6bb2b4 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2013-12-21 20:46:42 +01:00
Bob Weinand e2b75e5bb7 Merge branch 'PHP-5.6' 2013-12-21 19:32:41 +01:00
krakjoe a1a57827e1 Merge branch 'watchpoints' of https://github.com/krakjoe/phpdbg into watchpoints 2013-12-21 09:39:59 +00:00
Bob Weinand 6ee1da1f55 ZTS fixed 2013-12-20 22:17:30 -05:00
Bob Weinand e2172ba39c ZTS fixed 2013-12-20 22:10:03 -05:00
Christopher Jones 1b1b706818 Merge branch 'PHP-5.6'
* PHP-5.6:
  Align 'configure --help' columns
  Added NEWS and UPGRADING info for phpdbg
2013-12-20 10:05:52 -08:00
Anatol Belski 3f2f1b2661 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2013-12-20 14:47:15 +01:00
Bob Weinand 3926362d30 Merge branch 'master' of https://git.php.net/push/php-src 2013-12-20 14:36:28 +01:00
Bob Weinand f500be8838 Merge branch 'PHP-5.6' 2013-12-20 14:35:40 +01:00
Anatol Belski b0a551ee14 final remove of the temporary int64/strlen configure options 2013-12-20 09:06:31 +01:00
Anatol Belski f2fc935502 next wave on semantical replacements long vs. int 2013-12-19 23:32:58 -08:00
Bob Weinand 3f70e9f8bd Fixed deletion of watchpoints 2013-12-19 22:21:08 -05:00
Anatol Belski 98e273bb03 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	ext/zip/php_zip.c
2013-12-19 22:18:18 +01:00
Boris Lytochkin ba51a375ae Merge branch '5.6'
* 5.6:
  Fixed SNMP_ERR_TOOBIG handling for bulk walk operations. (Boris Lytochkin)
2013-12-20 00:47:26 +04:00
Derick Rethans db025b3789 Merge branch 'PHP-5.6' 2013-12-19 19:01:08 +00:00
Derick Rethans e1a5edaac2 Merge branch 'PHP-5.5' 2013-12-19 18:58:48 +00:00
Anatol Belski 88456894b9 Merge branch 'str_size_and_int64' of https://git.php.net/push/php-src into str_size_and_int64 2013-12-19 08:44:56 -08:00
Anatol Belski 6125278290 more semantical replacements LONG vs. INT 2013-12-19 08:40:41 -08:00
Bob Weinand 5e351695b6 Added deleting of watchpoints 2013-12-19 11:05:38 -05:00
Anatol Belski 6b8a78eb5f added comment 2013-12-19 14:28:00 +01:00
Anatol Belski f58d0b35ed massive update semantical LONG vs INT replacements 2013-12-19 05:07:37 -08:00
Remi Collet e75b967610 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  save a few memory
  Fixed Bug #66321 (ZipArchive::open() ze_obj->filename_len not real)
2013-12-19 10:56:25 +01:00
Michael Wallner 551569262b Merge branch 'PHP-5.6'
* PHP-5.6:
  Update NEWS handling section of README.GIT-RULES
2013-12-19 10:10:09 +01:00
krakjoe ce4ba54583 test commit 2013-12-19 10:08:51 +01:00
Anatol Belski 5d263adf4c fixed duplicated include 2013-12-19 08:48:27 +01:00
Anatol Belski a16217d4a4 added file header 2013-12-19 08:43:11 +01:00
Anatol Belski a981798d8e add missing header 2013-12-18 15:31:06 -08:00
Anatol Belski cfb76d53f7 correct fix for ext/opcache regarding zend_size_t replacements 2013-12-18 15:29:04 -08:00
Anatol Belski e9224fc81b reverted the previous wrong patch 2013-12-18 15:28:23 -08:00
Anatol Belski 5f3e76dfe5 fixes ext/opcache after too much replacement 2013-12-18 15:21:34 -08:00
Anatol Belski ba5a1995bb Merge branch 'str_size_and_int64' of https://git.php.net/push/php-src into str_size_and_int64 2013-12-18 15:08:07 -08:00
Anatol Belski af362b20c6 zend_size_t for *.cpp files as well 2013-12-18 15:07:30 -08:00
Anatol Belski f62aa10f3e Merge branch 'str_size_and_int64' of git.php.net:php-src into str_size_and_int64 2013-12-19 00:03:49 +01:00
Anatol Belski 942f91ff0f fix zend_size_t type def 2013-12-19 00:03:12 +01:00
Anatol Belski 8709cc6d60 size_t part for *.l files 2013-12-18 14:56:40 -08:00
Anatol Belski 0b8f946ea5 size_t part for *.y files 2013-12-18 14:53:48 -08:00
Anatol Belski d5daea505f size_t part for win32/ 2013-12-18 14:50:32 -08:00
Anatol Belski b1abe4ca21 mass replacement for zend_size_t/php_size_t 2013-12-18 14:46:44 -08:00
Anatol Belski 6d938321ff prepare for zend_size_t 2013-12-18 14:22:47 -08:00
Anatol Belski df7db6519c Merge remote-tracking branch 'origin/master' into str_size_and_int64 2013-12-18 17:07:00 +01:00
Bob Weinand b11b3d201f Fixed ZTS build. Needed to bump API version number. 2013-12-18 16:44:20 +01:00
Dmitry Stogov 26096aa73f Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed reavlidate_path=1 behavior to avoid caching of symlinks values.
2013-12-18 19:22:05 +04:00
Anatol Belski 74aea4e471 fix after merge 2013-12-18 15:18:02 +01:00
Anatol Belski 8432557dcd Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	Zend/zend.c
	Zend/zend.h
	Zend/zend_execute.h
	Zend/zend_vm_execute.h
	main/SAPI.h
2013-12-18 15:07:42 +01:00
Felipe Pena a8a36b7d52 - Fixed build 2013-12-18 08:28:44 -02:00
Anatol Belski fcb28ea97f automated platform dependent zend_int_t declarations 2013-12-18 10:52:14 +01:00
Kalle Sommer Nielsen aed4b086ac Eliminate the TSRMLS_FETCH() calls in the ticks functions and hook 2013-12-18 09:32:26 +01:00
Kalle Sommer Nielsen c83598119b Kill a TSRMLS_FETCH() in php_stream_context_set() by passing TSRMLS_CC to it
# For mysqlnd: Relevant PHP_API_VERSION are put in place for cross version compatibility
2013-12-18 09:19:24 +01:00
Kalle Sommer Nielsen d02340bb39 Kill a TSRMLS_FETCH() call in sapi/caudium 2013-12-18 09:11:15 +01:00
Kalle Sommer Nielsen f883d3cc7a We might as well re-use the TSRMLS parameters here as they are available in PHP_FUNCTION anyway to save a TSRMLS_FETCH() call 2013-12-18 09:10:45 +01:00
Kalle Sommer Nielsen ed5a8d510f Pass the TSRMLS parameters to the sapi flush hook, this shaves off a few TSRMLS_FETCH() calls in our various SAPIs 2013-12-18 09:06:39 +01:00
Kalle Sommer Nielsen f70f89c1b1 Kill another TSRMLS_FECH() in sapi/roxen 2013-12-18 09:05:01 +01:00
Kalle Sommer Nielsen 520d969fea Fix these SAPI hooks so that the TSRMLS parameters are correctly passed as required by the sapi struct
# Not sure if this builds either
2013-12-18 09:01:44 +01:00
Bob Weinand 0dbc5c2087 first working version of wildcard watchpoints 2013-12-18 02:56:20 -05:00
Kalle Sommer Nielsen 432e91f112 Bump year
# Wonder if this is even working anymore
2013-12-18 08:55:19 +01:00
Kalle Sommer Nielsen e6b471933c Kill yet another TSRMLS_FETCH() inside the CLI HTTP server 2013-12-18 08:17:49 +01:00
Kalle Sommer Nielsen bd58146ad6 Kill another TSRMLS_FETCH() in the zend extension loading code 2013-12-18 07:59:47 +01:00
Kalle Sommer Nielsen 2eb9bd316d Merge branch 'master' of https://git.php.net/push/php-src 2013-12-18 07:27:14 +01:00
Kalle Sommer Nielsen d14670ccdb Eliminate another TSRMLS_FETCH() in i_zend_is_true()
# Affected extensions have all been updated, ext/opcache and ext/zip
# both have macros for cross version compatibility
2013-12-18 07:25:05 +01:00
Anatol Belski 9576330979 updated libmagic.patch 2013-12-17 13:30:17 -08:00
Anatol Belski 4cdcbeec76 basic fixes to ext/interbase 2013-12-17 11:17:12 +01:00
Anatol Belski 8aa7f84dd2 basic fixes to ext/sybase_ct 2013-12-17 10:58:13 +01:00
Anatol Belski 83edc59d13 fix datatype to hold read bytes 2013-12-17 10:20:34 +01:00
Anatol Belski dc45cfe401 fix function signature 2013-12-17 10:17:14 +01:00
Anatol Belski b90cc170b6 revamp ext/pdo_firebird 2013-12-17 10:14:55 +01:00
Anatol Belski 1337ba8a62 fixed conflicting function signatures in ext/com_dotnet 2013-12-17 10:06:11 +01:00
Anatol Belski 170c4d1fe6 Z_STRLEN vs Z_STRSIZE 2013-12-17 09:26:07 +01:00
Anatol Belski 167fdaa0e7 regenerated zend_vm_execute.h after merge 2013-12-17 09:05:29 +01:00
Anatol Belski 3e90132341 Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	Zend/zend_compile.c
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
	ext/opcache/Optimizer/pass1_5.c
	ext/pdo_odbc/odbc_stmt.c
2013-12-17 09:01:11 +01:00
Anatol Belski c0f1e6946d Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed possibly uninitialized value usage
2013-12-17 08:45:49 +01:00
Xinchen Hui 72389dd53f Merge branch 'PHP-5.6' 2013-12-17 15:37:26 +08:00
Xinchen Hui a9c503bc27 Merge branch 'PHP-5.6' 2013-12-17 15:10:56 +08:00
Xinchen Hui ac719610f4 Merge branch 'PHP-5.6' 2013-12-17 15:06:36 +08:00
Stanislav Malyshev 5613d70ee8 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #65873 - Integer overflow in exif_read_data()
2013-12-16 11:38:00 -08:00
David Soria Parra d7d0ceb90d Merge branch 'PHP-5.6' 2013-12-16 10:28:11 -08:00
Anatol Belski a56274b3f1 Merge branch 'str_size_and_int64' of git.php.net:php-src into str_size_and_int64 2013-12-16 17:31:13 +01:00
Anatol Belski 68d3353e5c basic fixes to ext/mssql 2013-12-16 17:26:32 +01:00
Anatol Belski 409498f03c fixed conflicting types in func definition 2013-12-16 08:13:35 -08:00
Bob Weinand 0a8c20e740 Handle automatic removing of watchpoints and cleanup at the end 2013-12-16 10:29:31 -05:00
Anatol Belski d51ff1322d revamp ext/opcache 2013-12-16 12:56:32 +01:00
Dmitry Stogov 82d67af60d Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Fix tests expecting specific resource IDs
  fixed parameter order for zend_throw_exception_ex call
  Fix doc (svn -> git)
  Fix tests expecting specific resource IDs
  Test pushing
  Updated release process
2013-12-16 13:12:55 +04:00
Bob Weinand a7b0dfb7b1 Preventing possible segfault 2013-12-15 09:15:34 -05:00
Bob Weinand d3c8d76e5b Merge branch 'watchpoints' of ssh://github.com/krakjoe/phpdbg into watchpoints
Conflicts:
	phpdbg_watch.c
2013-12-15 09:10:28 -05:00
Bob Weinand 9ce9f48fb6 Moved btree to separate file; minor fixes and completitions 2013-12-15 09:05:50 -05:00
Felipe Pena 75b4b4676b - Staticfy some functions 2013-12-15 11:58:14 -02:00
Felipe Pena 0ca7f72130 - Fixed build 2013-12-15 11:55:03 -02:00
Anatol Belski ca25f3d829 revamp ext/phar 2013-12-15 13:58:39 +01:00
Anatol Belski 34848ccae7 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2013-12-15 12:08:39 +01:00
Xinchen Hui 48dcc43488 Merge branch 'PHP-5.6' 2013-12-15 16:51:43 +08:00
Xinchen Hui 304d97933f Merge branch 'issue-phpt-resourceid-wincache' of https://github.com/EricSten/php-src 2013-12-15 16:26:11 +08:00
Anatol Belski 897d11658a fixed parameter order for zend_throw_exception_ex call 2013-12-14 20:55:32 +01:00
DQNEO 964141f781 Fix doc (svn -> git) 2013-12-14 20:55:31 +01:00
Anatol Belski fc4761a07c Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed parameter order for zend_throw_exception_ex call
  Fix doc (svn -> git)
  Test pushing
2013-12-14 20:48:44 +01:00
Anatol Belski 2cfb1c5bb9 basic fixes to ext/pdo_oci 2013-12-14 11:49:42 +01:00
Anatol Belski e0c5db0970 basic fixes to ext/oci8 2013-12-14 11:39:47 +01:00
Bob Weinand f312f6bad2 First semi-working version of a single watchpoint 2013-12-14 05:39:09 -05:00
Anatol Belski 4c68e81018 fixed sapi/embed 2013-12-14 00:26:56 +01:00
Bob Weinand 85b97c0f70 Finished working for today, continuing tomorrow (not working) 2013-12-13 17:57:36 -05:00
Anatol Belski 009528ba43 revamp sapi/cgi 2013-12-13 22:24:23 +01:00
Anatol Belski 7266938012 use php_socket_t where possible in ext/cli 2013-12-13 22:16:12 +01:00
Eric Stenson 50377b5bf2 Fix tests expecting specific resource IDs
When Wincache or APC are installed, the resource IDs are not the same.
This is because Wincache takes a few resource objects for itself.  As a
result, these tests become false positives.

On Windows boxes, the microtime precision is not granular enough
to reliably register a difference if two calls to uniqid() are made
concurrently.  This is a fix to the uniqid() test to avoid the false
positive when run on Windows machines.  Also, added a test to exercise
the 'more_entropy' variant of uniqid().
2013-12-13 10:42:32 -08:00
Anatol Belski 389188df7f Merge remote-tracking branch 'origin/master' into str_size_and_int64 2013-12-13 17:54:17 +01:00
Anatol Belski 3c494e25e3 Merge branch 'str_size_and_int64' of git.php.net:php-src into str_size_and_int64 2013-12-13 17:49:16 +01:00
Anatol Belski f4d27d83ac basic fixes to ext/imap 2013-12-13 17:47:23 +01:00
Anatol Belski bb5f5e1671 fix function signature 2013-12-13 07:19:16 -08:00
Anatol Belski 4973f3a312 fixed ext/pdo_dblib 2013-12-13 07:19:16 -08:00
Anatol Belski 37594963b3 Merge branch 'str_size_and_int64' of git.php.net:php-src into str_size_and_int64 2013-12-13 15:36:36 +01:00
Anatol Belski 4651c74405 fixed ext/skeleton 2013-12-13 15:35:37 +01:00
Anatol Belski d2ed9b3d30 fixed ext/sysvsem and ext/sysvshm 2013-12-13 06:32:08 -08:00
Anatol Belski 79c06bb896 fixed ext/sysvmsg 2013-12-13 06:15:47 -08:00
Anatol Belski e64e7e6ffc fixed ext/recode 2013-12-13 06:02:59 -08:00
Anatol Belski 872734be58 fix datatype 2013-12-13 05:58:12 -08:00
Anatol Belski 1040cdf8fc fixed ext/readline 2013-12-13 05:51:49 -08:00
Julien Pauli 735f930bac Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated release process
2013-12-13 13:30:30 +01:00
Anatol Belski 985d8f0436 Merge branch 'str_size_and_int64' of https://git.php.net/push/php-src into str_size_and_int64 2013-12-13 04:10:45 -08:00
Anatol Belski 512cbad00c basic fixes to ext/pspell 2013-12-13 04:10:17 -08:00
Anatol Belski 316fd8aab6 Merge branch 'str_size_and_int64' of git.php.net:php-src into str_size_and_int64 2013-12-13 12:28:18 +01:00
Anatol Belski 931071aa97 fixed function signature 2013-12-13 12:27:58 +01:00
Anatol Belski d87dc25b71 fixed ext/pcntl 2013-12-13 03:26:29 -08:00
Anatol Belski 3a8ee7800c fixed ext/posix 2013-12-13 03:26:04 -08:00
Anatol Belski 73a7351a2c fixed ext/dba 2013-12-13 02:55:38 -08:00
Anatol Belski 936124742b fixed function signature 2013-12-13 11:09:30 +01:00
Anatol Belski 1007374254 Merge branch 'str_size_and_int64' of git.php.net:php-src into str_size_and_int64 2013-12-13 11:03:14 +01:00
Anatol Belski f806f4d060 Merge branch 'master' into str_size_and_int64 2013-12-13 10:45:27 +01:00
Dmitry Stogov 9b829c92b5 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Use zend_error_noreturn here
  OCI8 build change: Fix source variable definition for C89 compatibility
  Kill another TSRMLS_FETCH() in zend_indent()
  Eliminate another straight forward TSRMLS_FETCH() in zend_startup_module()
  Fix build
  Add Tests for #65784 in 5.5
  Disallowed JMP into a finally block.
  Update NEWS for 5.5.7 release
  Fixed bug #65784 (Segfault with finally).
2013-12-13 11:15:38 +04:00
Xinchen Hui 914de05bf5 Merge branch 'PHP-5.6' 2013-12-13 11:37:53 +08:00
Christopher Jones e92ea13bff Merge branch 'PHP-5.6'
* PHP-5.6:
  OCI8 build change: Fix source variable definition for C89 compatibility
2013-12-12 15:23:23 -08:00
Kalle Sommer Nielsen 1433dec2d0 Kill another TSRMLS_FETCH() in zend_indent() 2013-12-12 22:09:38 +01:00
Kalle Sommer Nielsen 0fc8e6af0a Eliminate another straight forward TSRMLS_FETCH() in zend_startup_module()
# For THTTPD:
# The code that uses a call to this function is for older versions of PHP anyway so its not covered

# For Zend OpCache:
# Added a new define for 5.6 and wrapped the code around that so its still compatible with older version
2013-12-12 20:30:45 +01:00
Kalle Sommer Nielsen 4411641b1e Fix build 2013-12-12 20:25:10 +01:00
Xinchen Hui 8708b13d62 Merge remote-tracking branch 'origin/PHP-5.6' 2013-12-13 01:50:22 +08:00
Xinchen Hui 6a299514f8 Merge branch 'PHP-5.6'
Conflicts:
	NEWS
2013-12-13 00:54:36 +08:00
Xinchen Hui 0fbb421ec1 Merge branch 'PHP-5.6' 2013-12-13 00:15:11 +08:00
Dmitry Stogov fd4a7388d7 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  fix test
2013-12-12 16:46:15 +04:00
Michael Wallner c0e87e9bb1 Merge branch 'PHP-5.5'
* PHP-5.5:
  fix test
2013-12-12 12:10:08 +01:00
Anatol Belski bdc565e67a revamp ext/dom 2013-12-12 11:50:45 +01:00
Dmitry Stogov 9d08f09e06 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  remove always_populate_raw_post_data INI entries from master, UPGRADING.INTERNALS coming shortly
2013-12-12 14:42:19 +04:00
Michael Wallner bc1c2b3b31 remove always_populate_raw_post_data INI entries from master, UPGRADING.INTERNALS coming shortly 2013-12-12 11:33:06 +01:00
Dmitry Stogov a23bcba875 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Fixed bug #65486 mysqli_poll() is broken on Win x64
2013-12-12 13:59:37 +04:00
Dmitry Stogov 8738e6d86f Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed tests
  Fixed ext/soap/tests/bugs/bug54911.phpt
2013-12-12 13:55:42 +04:00
Anatol Belski e0c7899ddd Merge branch 'master' into str_size_and_int64 2013-12-12 10:52:52 +01:00
Anatol Belski 58b754ca4a Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #65486 mysqli_poll() is broken on Win x64
2013-12-12 10:46:36 +01:00
Anatol Belski fa2a2c88fd revamp ext/pdo_mysql 2013-12-11 23:39:43 +01:00
Anatol Belski 6d5c56367d revamp ext/pdo 2013-12-11 23:39:18 +01:00
Bob Weinand 2e5d78192e Committed the damned new files 2013-12-11 21:31:22 +01:00
Bob Weinand 488dd317fe First non-working test of segfault handlers 2013-12-11 21:27:03 +01:00
Anatol Belski a1803faea2 revamp ext/pgsql 2013-12-11 20:04:04 +01:00
Anatol Belski adb70b9923 Merge branch 'master' into str_size_and_int64 2013-12-11 19:29:21 +01:00
Anatol Belski 05fe153f49 revamp ext/soap 2013-12-11 19:23:17 +01:00
Bob Weinand 98d929290c Merge branch 'PHP-5.6'
* PHP-5.6:
  Added one more test for constant scalar expressions
2013-12-11 19:20:10 +01:00
Anatol Belski fa1802381f Merge branch 'PHP-5.6'
* PHP-5.6:
  added missing prototype
2013-12-11 14:16:22 +01:00
Anatol Belski 2301e190e7 Merge branch 'master' into str_size_and_int64 2013-12-11 13:48:38 +01:00
Anatol Belski 2f707bf246 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix dir separator in cve-2013-6420 test
2013-12-11 13:33:59 +01:00
Anatol Belski d3f9debcae Merge branch 'master' into str_size_and_int64 2013-12-11 12:44:05 +01:00
Anatol Belski 4670d46a42 additional range checks for ext/sockets 2013-12-11 12:41:12 +01:00
Ard Biesheuvel 9a5944d960 Merge branch 'PHP-5.6' 2013-12-11 08:51:27 +01:00
Stanislav Malyshev 35b8f57906 Merge branch 'PHP-5.6'
* PHP-5.6:
  5.3.29-dev
  Fix CVE-2013-6420 - memory corruption in openssl_x509_parse
2013-12-10 11:36:33 -08:00
Anatol Belski 19161b8d4e fix function params 2013-12-10 20:00:59 +01:00
Anatol Belski 27990438f1 Merge branch 'master' into str_size_and_int64
Conflicts:
	Zend/zend_builtin_functions.c
	ext/opcache/Optimizer/pass1_5.c
	ext/reflection/php_reflection.c
	ext/soap/soap.c
2013-12-10 19:46:40 +01:00
Remi Collet 8e29235b6c Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  Fixed Bug #66218 zend_register_functions breaks reflection
2013-12-10 16:10:48 +01:00
Anatol Belski 34e5236836 more range checks for ext/sqlite3 2013-12-10 15:40:19 +01:00
Dmitry Stogov ad4f0c7812 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66112 (Use after free condition in SOAP extension). (martin dot koegler at brz dot gv dot at)
2013-12-10 17:59:20 +04:00
Anatol Belski 77d4db3957 fixed return 2013-12-10 14:15:29 +01:00
Dmitry Stogov d439b3970a Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66251 (Constants get statically bound at compile time when Optimized)
2013-12-10 17:05:23 +04:00
Anatol Belski a697297f5f more range checks for ext/tidy 2013-12-10 13:41:49 +01:00
Dmitry Stogov 90c5689b59 Merge branch 'PHP-5.6'
* PHP-5.6:
  Revered func_get_args() changes, because they were not completly transparent and broke some tricky PHP code that worked because of luck before php-5.5.6 (see Bug #66107). The changes are going to be kept in PHP-5.6.
2013-12-10 16:08:56 +04:00
Dmitry Stogov 6eaf57eb3c Merge branch 'PHP-5.6'
* PHP-5.6:
2013-12-10 16:07:53 +04:00
Dmitry Stogov 1dafdaa31b Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Zend: fix overflow handling bug in non-x86 fast_add_function()
2013-12-10 15:15:46 +04:00
Dmitry Stogov 78265a44c5 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed memory leaks introdused by: 	commit 611da37617 	Author: Igor Wiedler <igor@wiedler.ch> 	Date:   Sat Nov 9 13:48:23 2013 -0500
2013-12-10 15:15:11 +04:00
Ard Biesheuvel c786c30108 Merge branch 'PHP-5.6' 2013-12-10 12:12:44 +01:00
Anatol Belski 5acc0c0c5b revamp ext/xmlreader 2013-12-10 11:42:56 +01:00
Dmitry Stogov b260cb92e4 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66252 (Problems in AST evaluation invalidating valid parent:: reference. Constant expessions have to be evaluated in context of defining class).
2013-12-10 14:21:38 +04:00
Anatol Belski da62a38244 revamp ext/xsl 2013-12-10 10:15:47 +01:00
Dmitry Stogov 6b6a4e466a Merge branch 'PHP-5.6'
* PHP-5.6:
  Arguments passed to user function have to be properly allocated on heap
2013-12-10 13:03:24 +04:00
Anatol Belski f195339006 revamp range checks in ext/xml 2013-12-10 09:34:45 +01:00
Ard Biesheuvel 21fd125343 Merge branch 'PHP-5.6' 2013-12-09 17:04:05 +01:00
Anatol Belski f7f8c590a5 Merge remote-tracking branch 'bukka/str_size_and_int64_openssl' into str_size_and_int64 2013-12-09 11:30:07 +01:00
Anatol Belski 757c93dd85 Z_STRLEN vs Z_STRSIZE after automerge 2013-12-09 11:18:40 +01:00
Anatol Belski 325224832b Merge remote-tracking branch 'origin/master' into str_size_and_int64
Conflicts:
	Zend/zend_compile.c
	Zend/zend_compile.h
2013-12-09 10:20:04 +01:00
Stanislav Malyshev 912be12432 Merge branch 'PHP-5.6'
* PHP-5.6:
  Replace invalid code with a proper #error
2013-12-08 16:26:34 -08:00
Jakub Zelenka d3acd878d0 Merge branch 'str_size_and_int64' into str_size_and_int64_openssl 2013-12-08 16:21:40 +00:00
Jakub Zelenka f9816d6729 Remove explicit casts to and from 64bit types 2013-12-08 16:17:55 +00:00
Adam Harvey b97156113e Merge branch 'PHP-5.6'
* PHP-5.6:
  Switch to using freetype-config for freetype detection.
2013-12-07 19:42:00 -08:00
Anatol Belski 31a4d08d37 fix repeated compiler warnings 2013-12-07 08:57:02 +01:00
Anatol Belski 20217b04b4 added macros for integer constants to append appropriate suffix 2013-12-07 08:55:31 +01:00
Anatol Belski 3982b3eccf recap fixes for ext/standard 2013-12-07 00:53:14 +01:00
Anatol Belski 0494cf46cf fixes to rand 2013-12-06 22:12:28 +01:00
Anatol Belski 8b7a8aff13 Merge branch 'str_size_and_int64' of git.php.net:php-src into str_size_and_int64 2013-12-06 11:43:45 +01:00
Anatol Belski 9510451fb1 remaining fixes to ext/zlib
datatypes for globals
%pd format
2013-12-06 11:42:30 +01:00
Ferenc Kovacs e3ebe995c9 Merge branch 'PHP-5.6' 2013-12-06 11:07:36 +01:00
Michael Wallner d81d61fcc4 Merge branch 'PHP-5.6'
* PHP-5.6:
  BFN
2013-12-06 10:39:18 +01:00
Michael Wallner 01a13bb8c1 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #61645 (fopen and O_NONBLOCK)
  fix possibly uninitialized value
  Use 'user@example.com' rather than 'user@company.com' in tests
2013-12-06 10:34:11 +01:00
Anatol Belski 7fdf6b51d2 Merge branch 'master' into str_size_and_int64 2013-12-06 09:55:50 +01:00
Anatol Belski c253fbda9a fix conflicting types 2013-12-05 16:13:30 -08:00
Anatol Belski adb1e38468 integrated %pd into more ported extensions 2013-12-05 14:35:06 +01:00
Anatol Belski e881537089 integrated %pd into ext/spl 2013-12-05 13:28:22 +01:00
Anatol Belski 122805100a removed warnings in newly implemented pcre range cehcks 2013-12-05 12:38:11 +01:00
Anatol Belski 4d703a4225 added range check for pcre ini entries 2013-12-05 12:08:19 +01:00
Anatol Belski a0622d7c68 implemented %pd format for snprintf and spprintf
php_int_t var = 42;
php_printf("%pd", var);
2013-12-05 12:05:46 +01:00
Anatol Belski 42b1222754 Merge branch 'master' into str_size_and_int64 2013-12-05 08:37:37 +01:00
Adam Harvey de3b9bc77c Renumber the comments in php_request_shutdown() to be in order.
What, me OCD?
2013-12-04 14:29:45 -08:00
Jakub Zelenka fbfae33e39 Add missing overflow checks 2013-12-04 19:01:39 +00:00
Andrey Hristov 0cb38a3d26 Merge branch 'master' of git.php.net:php-src
Conflicts:
	NEWS
2013-12-04 18:32:32 +02:00
Sara Golemon 9adfcea241 Use 'user@example.com' rather than 'user@company.com' in tests
Using some arbitrary 3rd party's domain name is clowny,
even if it never tries to send.
2013-12-04 07:51:43 -08:00
Michael Wallner ecf95a4cc5 BFN 2013-12-05 11:30:52 +01:00
Michael Wallner 44ff944b37 Merge branch 'dba'
* dba:
  fix bug #62490
  more test fixes
  fix test
  fix php_stream_copy_to_stream_ex usage
  add missing clean section
  remove test for already removed feature
2013-12-05 11:27:26 +01:00
Michael Wallner 5a420c8680 fix bug #62490
inifiles delete handler did not return false if the key was not found
2013-12-05 11:04:25 +01:00
Andrey Hristov 406d5a5ecc Merge branch 'PHP-5.6'
Conflicts:
	NEWS
	UPGRADING
2013-12-04 16:20:03 +02:00
Anatol Belski 7228ac190a fixed ext/bcmath 2013-12-04 15:06:32 +01:00
Anatol Belski 3142989a14 finer fixes for ext/opcache 2013-12-04 14:07:27 +01:00
Anatol Belski 3930766e79 basic fixes to ext/opcache 2013-12-04 12:04:07 +01:00
Anatol Belski 55023a87b0 Merge branch 'master' into str_size_and_int64 2013-12-04 09:10:43 +01:00
Sara Golemon e51ddf9dc8 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix php_module_startup() when loading more than one additional module
2013-12-03 18:21:40 -08:00
Adam Harvey 8f11f7f179 Merge branch 'PHP-5.6'
* PHP-5.6:
  Remove 128.0.0.0/16 and 191.255.0.0/16 from the reserved list.
2013-12-03 14:54:24 -08:00
Anatol Belski 72e7a63485 basic fixes for ext/ldap 2013-12-03 22:43:37 +01:00
Anatol Belski c14d14e0d6 fix uninitialized variable 2013-12-03 22:03:11 +01:00
Anatol Belski fbb87ace85 basic fixes to ext/snmp 2013-12-03 21:31:55 +01:00
Anatol Belski fd6e5766ce basic fixes for ext/pdo_pgsql 2013-12-03 18:21:06 +01:00
Michael Wallner f0c85fab45 more test fixes 2013-12-03 18:18:40 +01:00
Michael Wallner b0415856fd fix test 2013-12-03 17:55:26 +01:00
Michael Wallner 9e309a2d10 fix php_stream_copy_to_stream_ex usage 2013-12-03 17:55:18 +01:00
Michael Wallner a7f0465c0b add missing clean section 2013-12-03 17:07:40 +01:00
Michael Wallner f4912e3a96 remove test for already removed feature 2013-12-03 16:57:35 +01:00
Anatol Belski 8e11fa2251 basic fixes to ext/odbc 2013-12-03 16:54:15 +01:00
Anatol Belski 727d14b8dd basic fixes to ext/ftp 2013-12-03 12:09:12 +01:00
Anatol Belski b13e715581 basic fixes to ext/pdo_mysql 2013-12-03 11:44:18 +01:00
Anatol Belski 0ee45382cd basic fixes to ext/pdo_firebird 2013-12-03 11:18:12 +01:00
Anatol Belski 71be6bc5ec more fixes to ext/pdo and ext/pdo_pgsql 2013-12-03 10:52:55 +01:00
Sebastian Bergmann d1baf6c9d7 Leftover: Bump version to 5.7.0 2013-12-03 10:19:11 +01:00
Nikita Popov b3265e2108 Support gmp_remroot() on GMP 4.1 2013-12-03 10:19:10 +01:00
Anatol Belski e23b051be0 basic fixes to ext/pdo_pgsql 2013-12-03 09:53:22 +01:00
Anatol Belski 7193efebed basic fixes to ext/pdo_sqlite 2013-12-03 09:51:01 +01:00
Anatol Belski da7d62ea8a basic fixes for ext/pdo 2013-12-03 09:24:45 +01:00
Sebastian Bergmann 48cc47d55a Leftover: Bump version to 5.7.0 2013-12-03 07:42:37 +01:00
Anatol Belski 2fc14d515e some more fixes to ext/pgsql 2013-12-03 01:33:43 +01:00
Anatol Belski f7df15ea53 basic fixes for ext/pgsql 2013-12-02 21:10:33 +01:00
Jakub Zelenka 8710929b78 Fix typo 2013-12-02 19:54:25 +00:00
Jakub Zelenka 1488acb304 Add digest data_len overflow checks and few other fixes 2013-12-02 19:50:23 +00:00
Nikita Popov a87233f98a Merge branch 'PHP-5.6' 2013-12-02 20:11:34 +01:00
Anatol Belski ce6945eb55 basic fixes to ext/shmop 2013-12-02 18:18:24 +01:00
Anatol Belski a68477f758 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2013-12-02 17:48:31 +01:00
Michael Wallner c23a1f78b4 Merge branch 'PHP-5.6'
* PHP-5.6:
  BFN
  Fix bug #65196
2013-12-02 17:03:30 +01:00
Michael Wallner 7cd702640d Fix Bug #64776 The XSLT extension is not thread safe. 2013-12-02 15:01:24 +01:00
Michael Wallner df484b0008 Merge branch 'PHP-5.6'
* PHP-5.6:
  BFN
  fix bug #49634x
2013-12-02 12:19:03 +01:00
Dmitry Stogov f8148a3905 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed tests
2013-12-02 12:05:49 +04:00
Dmitry Stogov 86c806a36e Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed ability to build non-specialized GOTO VM
2013-12-02 11:03:57 +04:00
Anatol Belski d7827068e8 fix the length var datatype 2013-12-01 23:17:47 +01:00
Anatol Belski 8f91e77245 Merge branch 'master' into str_size_and_int64 2013-12-01 23:10:01 +01:00
Jakub Zelenka 7e85b12b53 Merge branch 'str_size_and_int64' into str_size_and_int64_openssl
Conflicts:
	ext/openssl/openssl.c
2013-12-01 20:04:58 +00:00
Jakub Zelenka b34ce97417 add some overflow checks and use correct msg formatting in openssl 2013-12-01 19:53:45 +00:00
Nikita Popov 1acee05579 Merge branch 'PHP-5.6' 2013-12-01 13:48:09 +01:00
Anatol Belski 6b9396bd8e Merge branch 'master' into str_size_and_int64
Conflicts:
	ext/date/php_date.c
2013-12-01 12:31:48 +01:00
Anatol Belski 66a42402d9 more fixes for ext/mysql 2013-12-01 12:22:52 +01:00
Anatol Belski ae2103ba40 basic fixes for ext/mysql 2013-12-01 09:45:26 +01:00
Anatol Belski eb922c6c9c more fixes for ext/mysqli 2013-11-30 21:51:21 +01:00
Anatol Belski d76d415f55 fix mysqlnd for bigint 2013-11-30 21:49:41 +01:00
Anatol Belski f3703d86f7 started to fix ext/mysqli 2013-11-30 15:58:57 +01:00
Anatol Belski ef216c21fd started to fix ext/mysqlnd 2013-11-30 14:59:18 +01:00
Felipe Pena cb9000f15e Merge branch 'master' of git.php.net:/php-src 2013-11-30 11:41:23 -02:00
Felipe Pena 52611a2c7e Merge branch 'PHP-5.6'
* PHP-5.6:
  - Fixed bug #65923 (ext/socket assumes AI_V4MAPPED is defined)
2013-11-30 11:41:01 -02:00
Nikita Popov 508738251f Merge branch 'PHP-5.6' 2013-11-30 13:41:22 +01:00
Anatol Belski 004d4630b4 basic fixes to ext/sqlite3 2013-11-30 12:39:09 +01:00
Nikita Popov 2e0a960e97 Merge branch 'PHP-5.6' 2013-11-29 23:59:21 +01:00
Nikita Popov 065c8e77e2 Merge branch 'PHP-5.6' 2013-11-29 23:32:14 +01:00
Anatol Belski 628135641d basic fixes ext/xmlrpc 2013-11-29 23:06:40 +01:00
Anatol Belski 22779fa66b fixed ext/tokenizer 2013-11-29 22:54:58 +01:00
Anatol Belski 9c16a4b96d fixed ext/tidy 2013-11-29 22:48:55 +01:00
Anatol Belski f119cd8f2d basic fixes to ext/sockets 2013-11-29 21:02:36 +01:00
Anatol Belski e094c64b67 finer fixes to ext/soap 2013-11-29 20:26:07 +01:00
Anatol Belski 9a834807bc fixed compilation after merging master 2013-11-29 17:12:35 +01:00
Anatol Belski d8fa7f4990 Merge branch 'str_size_and_int64' of git.php.net:php-src into str_size_and_int64 2013-11-29 17:00:24 +01:00
Anatol Belski 40f9958c08 Merge branch 'master' into str_size_and_int64
Conflicts:
	Zend/zend_hash.c
	ext/gmp/gmp.c
	ext/pcre/php_pcre.c
2013-11-29 17:00:11 +01:00
Anatol Belski 132bd2130d basic fix for ext/soap 2013-11-29 16:55:00 +01:00
Anatol Belski eabdd0e4a5 fixed ext/mcrypt 2013-11-29 16:12:36 +01:00
Anatol Belski 23019318b1 finer fixes for ext/json 2013-11-29 13:00:29 +01:00
Anatol Belski 3ffecac916 basic fixes for ext/json 2013-11-29 11:47:48 +01:00
Anatol Belski e6bf5ffeba fixed ext/gmp 2013-11-29 10:19:40 +01:00
Dmitry Stogov f65e652f9f Merge branch 'PHP-5.6'
* PHP-5.6:
  Added validation of class names in the autoload process
2013-11-29 12:55:38 +04:00
Anatol Belski 9f9e691c28 fixed ext/gettext 2013-11-29 09:47:00 +01:00
Anatol Belski 3659dcd98c further fixes for ext/gd 2013-11-29 09:18:13 +01:00
Anatol Belski 51d78c2533 basic fixes for ext/gd 2013-11-29 08:53:32 +01:00
Nikita Popov 0eb519de66 Merge branch 'PHP-5.6' 2013-11-29 00:10:13 +01:00
Anatol Belski 57db68e03d fixed ext/fileinfo
XXX update libmagic.patch
2013-11-28 23:44:24 +01:00
Dmitry Stogov f92eba241e Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Fixed bug #65199 (Wrong Day of Week) and fixed bug #63391 (Incorrect/inconsistent day of week prior to the year 1600)
  Marking those two as XFAIL for now.
  Fixed a few DST changeover issues.
  Move add/sub to timelib.
  Fix backwards transition diffs.
  Split up tests into their different categories.
  Group those tests a bit better, as some of the bd ones wanted a "ST" feature that doesn't exist yet.
  Fixed forward transitions in diffs.
  Always reset those parameters.
  Fixed "Forward Transition" construction of DateTime objects.
2013-11-29 00:59:47 +04:00
Dmitry Stogov 77cdda452d Merge branch 'PHP-5.6'
* PHP-5.6:
  Avoid interned hash key duplication and hash key length recaclulation
2013-11-29 00:59:26 +04:00
Anatol Belski ef54a95b71 fixed ext/wddx 2013-11-28 20:00:27 +01:00
Anatol Belski 262fca3a39 fixed ext/xml 2013-11-28 19:46:08 +01:00
Anatol Belski d9a036cc30 fixed ext/xsl 2013-11-28 19:18:38 +01:00
Anatol Belski 9e5c10e487 fixed ext/zip 2013-11-28 19:02:34 +01:00
Anatol Belski d8fbc23002 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2013-11-28 17:44:47 +01:00
Anatol Belski 91e6fb75d5 fix after automerge 2013-11-28 17:44:05 +01:00
Derick Rethans 38574614c5 Merge branch 'PHP-5.6' 2013-11-28 16:33:23 +00:00
Anatol Belski 5ced3db971 Merge branch 'master' into str_size_and_int64
Conflicts:
	Zend/zend.h
	Zend/zend_hash.c
	Zend/zend_hash.h
	Zend/zend_language_parser.y
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2013-11-28 17:27:59 +01:00
Anatol Belski a7862de2db fixed ext/filter 2013-11-28 17:16:25 +01:00
Derick Rethans 0d65cd50dd Merge branch 'master' of git.php.net:php-src 2013-11-28 14:45:56 +00:00
Derick Rethans b6ef87f803 Merge branch 'PHP-5.6' 2013-11-28 14:45:38 +00:00
Dmitry Stogov a1193b23b6 Merge branch 'PHP-5.6'
* PHP-5.6:
  Removed unused "pHashFunction" argument in _zend_hash_init() and family (must be 99% source compatible)
2013-11-28 18:42:57 +04:00
Anatol Belski fd7d31973a basic fixes for ext/exif 2013-11-28 14:36:20 +01:00
Dmitry Stogov 609efa2623 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Updated NEWS for Constant Scalar Exprs RFC
  Moved arrays again to "static_scalar:" & little cleanup
  Renaming
  Constant expressions refactoring
  Removed operations on constant arrays. They make no sense as constants are not allowed to be arrays. And as just properties are allowed to; no problem, we still don't need operations on any constant array.
  Added a few more operators
  Whitespace fix
  converted several switches to ifs and made more opcache friendly
  Fatal error about self referencing constants fixed
  Fixed mem leaks, added tests and ternary operator
  Working commit for constant scalar expressions (with constants). Tests will follow.
2013-11-28 17:03:59 +04:00
Dmitry Stogov 7fa9032d0b Merge branch 'PHP-5.6'
* PHP-5.6:
  Some rare deprecated cases replaced by ZEND_ASSERT() (some extensions might need to be fixed)
  Removed duplicated hash function implementation (100% source compatible)
2013-11-28 17:03:28 +04:00
Anatol Belski 4e2ddbc397 fixed ext/enchant 2013-11-28 13:59:55 +01:00
Bob Weinand be5b98ef0d Merge branch 'PHP-5.6' 2013-11-28 13:53:00 +01:00
Anatol Belski 1e2cc15845 fixed ext/curl 2013-11-28 13:45:09 +01:00
Anatol Belski 46448539b0 fixed ext/ctype 2013-11-28 09:53:00 +01:00
Anatol Belski 3f7522a652 Merge branch 'master' into str_size_and_int64 2013-11-28 09:29:12 +01:00
Anatol Belski de453dbef6 reverted a couple of things in ext/phar for now, but all tests pass now 2013-11-28 09:23:02 +01:00
Dmitry Stogov 98f3c410d9 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Fixed bug #53879 (DateTime::createFromFormat() fails to parse cookie expiration date)
2013-11-28 11:46:11 +04:00
Dmitry Stogov fe451e9a72 Merge branch 'PHP-5.6'
* PHP-5.6:
  Don't check argument types for internal functions without type hinting
2013-11-28 11:45:47 +04:00
Anatol Belski d135198559 next portion of fixes for ext/phar 2013-11-27 23:35:42 +01:00
Anatol Belski 2c3cc2e107 fixed the rdev stat array member again for streams 2013-11-27 23:34:27 +01:00
Derick Rethans e7a6d0b163 Merge branch 'PHP-5.6' 2013-11-27 22:01:16 +00:00
Anatol Belski ef52220617 basic fixes for ext/phar 2013-11-27 20:08:34 +01:00
Dmitry Stogov 45d399b96e Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed tests
2013-11-27 21:04:23 +04:00
Dmitry Stogov fca64efd62 Merge branch 'PHP-5.6'
* PHP-5.6:
  Removed deprecated AI_SET_PTR()s
2013-11-27 20:32:21 +04:00
Anatol Belski 0fd48b2f48 final ext/session fixes 2013-11-27 15:33:40 +01:00
Anatol Belski bec270ffc8 fix function definition 2013-11-27 04:58:57 -08:00
Anatol Belski b9c19f5d74 first shot for ext/calendar
At the first glance the extension could be fixed for bigger timestamps,
but that's not the goal right now. One test fail yet on win 64
2013-11-27 13:35:26 +01:00
Dmitry Stogov bc68ab8b57 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  NEWS
  Fixed bug #66060 (Heap buffer over-read in DateInterval)
2013-11-27 14:58:08 +04:00
Dmitry Stogov a3cb536d24 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #65969 (Chain assignment with T_LIST failure)
2013-11-27 14:56:48 +04:00
Remi Collet 42a35c9b8b Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  Fixed bug #66060 (Heap buffer over-read in DateInterval)
2013-11-27 11:16:18 +01:00
Anatol Belski 8115844674 basic fixes to ext/hash 2013-11-27 10:33:08 +01:00
Julien Pauli e9f2de918d Merge branch 'PHP-5.6'
* PHP-5.6:
  5.5.8-dev now
2013-11-27 10:33:05 +01:00
Stanislav Malyshev 3baad45b21 Merge branch 'PHP-5.6'
* PHP-5.6:
2013-11-27 00:19:30 -08:00
Stanislav Malyshev b64ac1faa3 Merge branch 'PHP-5.5'
* PHP-5.5:
  5.4.24-dev now
2013-11-27 00:15:03 -08:00
George Wang 9960ecc5cd update to LSAPI 6.6 2013-11-26 18:53:35 -05:00
Anatol Belski 0336763311 fixed ext/xmlwriter 2013-11-26 22:47:36 +01:00
Anatol Belski def8981190 fixed ext/xmlwriter 2013-11-26 22:36:35 +01:00
Anatol Belski 74f9e6309c fixed ext/dom for int64 branch 2013-11-26 22:25:22 +01:00
Anatol Belski 1d2150ca4f fixed some warning in ext/openssl 2013-11-26 21:36:41 +01:00
Anatol Belski 358fae9347 more param parsing fixes, overseen stuff 2013-11-26 21:13:14 +01:00
Anatol Belski 54797a9b15 fixed intl calendar param parsing 2013-11-26 21:13:13 +01:00
Andrey Hristov dd7c33d0c9 Merge branch 'master' of git.php.net:php-src 2013-11-26 20:10:17 +02:00
Anatol Belski 4c96b94873 Merge branch 'master' into str_size_and_int64 2013-11-26 19:09:31 +01:00
Anatol Belski 943ba2bf07 first x64 fixes for ext/openssl 2013-11-26 19:05:35 +01:00
Dmitry Stogov 0d61202427 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed opcahce_reset() crash when opcache.protect_memory is set
2013-11-26 21:59:19 +04:00
Dmitry Stogov ccd1babbfc Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Fixed a wrong test
2013-11-26 21:43:51 +04:00
Dmitry Stogov bbdcbbdba5 Merge branch 'PHP-5.6'
* PHP-5.6:
  Added an optimization of class constants and constant calls to some internal functions
  Added an optimization of class constants and constant calls to some internal functions

Conflicts:
	NEWS
2013-11-26 21:43:19 +04:00
Andrey Hristov 9c036b13f9 Merge branch 'PHP-5.5' 2013-11-26 19:37:43 +02:00
Dmitry Stogov 1d65e8f135 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66176 (Invalid constant substitution)
  Fixed bug #66176 (Invalid constant substitution)
2013-11-26 21:03:34 +04:00
Julien Pauli 8b83b48e98 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed a wrong test
2013-11-26 17:44:52 +01:00
Anatol Belski e5998bbda2 correct error datatype 2013-11-26 17:36:34 +01:00
Anatol Belski d508a094ae fixed 32 bit unsigned to int64 casts 2013-11-26 17:35:25 +01:00
Dmitry Stogov 34a55790f2 Merge branch 'PHP-5.6'
* PHP-5.6:
  Revert NEWS
  Fixed bug #66176 (Invalid constant substitution)
2013-11-26 17:49:38 +04:00
Anatol Belski f88a3e7fb9 first shot fixing ext/com_dotnet 2013-11-26 12:43:58 +01:00
Anatol Belski e2f2a3fcb5 Merge branch 'master' into str_size_and_int64 2013-11-26 10:59:55 +01:00
Anatol Belski 7e856fb09b fixed ext/bz2 2013-11-26 10:54:36 +01:00
Dmitry Stogov 854c9abcd4 Merge branch 'PHP-5.6'
* PHP-5.6:
  Added test
2013-11-26 12:14:22 +04:00
Dmitry Stogov b3ce714cbf Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #65559 (Opcache: cache not cleared if changes occur while running)
2013-11-26 11:37:05 +04:00
Anatol Belski a45082e78d fixed ext/intl 2013-11-25 21:59:09 +01:00
Andrey Hristov 36a3011613 Merge branch 'PHP-5.5' 2013-11-25 21:33:14 +02:00
Anatol Belski 8e50280163 updated datatypes in apache handler globals 2013-11-25 18:06:09 +01:00
Anatol Belski 0938a6266a fixes so file_get_contents() works again, and some more 2013-11-25 16:21:14 +01:00
Dmitry Stogov 704b24d048 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed compatibility with old PHP versions
  Fixed bug #65915 (Inconsistent results with require return value)
2013-11-25 14:12:11 +04:00
Anatol Belski 923518fab8 fix erroneous paste in 2013-11-25 07:39:37 +01:00
Anatol Belski 5300caade1 Merge remote-tracking branch 'origin/master' into str_size_and_int64 2013-11-25 00:46:03 +01:00
Anatol Belski c6adc039a1 more datatype fixes 2013-11-25 00:44:33 +01:00
Anatol Belski a218f8f3a4 ZEND_INT_FMT and some more for ext/standard 2013-11-25 00:43:05 +01:00
Anatol Belski 3198533e92 ZEND_INT_FMT again 2013-11-24 22:28:58 +01:00
Anatol Belski d8c7d69543 printf int format fixes 2013-11-24 22:10:57 +01:00
Jakub Zelenka 215811e3fd fix openssl (testing required) 2013-11-24 21:03:55 +00:00
Anatol Belski 08bbd2b510 fixed ini and functions in assert.c 2013-11-24 19:56:32 +01:00
Anatol Belski 9cc9a10efd one more walk through in Zend, fixed (or broken) things being overseen 2013-11-24 18:55:26 +01:00
Anatol Belski cbf40edf06 fixed range check 2013-11-24 18:47:03 +01:00
Anatol Belski a73c8812a1 one more walk through in Zend, fixed things being overseen 2013-11-24 16:06:47 +01:00
Anatol Belski 9238345922 started to fix ext/session 2013-11-23 10:06:42 +01:00
Anatol Belski 4a6981433d fixed ini_set for integers 2013-11-23 09:52:33 +01:00
Ingo Walz 880ecd603c Fixed bug 64604 2013-11-23 02:31:23 +01:00
Anatol Belski 639924fa2c first shot to fix session 2013-11-22 15:55:21 +01:00
Anatol Belski db40b1c037 fix return datatype 2013-11-22 12:26:39 +01:00
Anatol Belski 52afd818eb fixed apache2 handler 2013-11-22 11:39:33 +01:00
Anatol Belski 28cb72f480 made zend list to use 64 bit indexes 2013-11-22 08:51:13 +01:00
Anatol Belski 7f0d637de4 Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed test
  export more Zend API
2013-11-21 21:29:51 +01:00
Andrey Hristov e09e45eb86 Merge branch 'PHP-5.5' 2013-11-21 21:30:36 +02:00
Anatol Belski f88c30507c fixed param parsing in mbstring 2013-11-21 18:33:16 +01:00
Anatol Belski 015d179e49 converted simplexml ext 2013-11-21 16:17:10 +01:00
Anatol Belski 607f97cefa fixed libxml 2013-11-21 15:08:39 +01:00
Anatol Belski 51003463ef first shot for php-cgi for size_t and php_int_t 2013-11-21 13:26:56 +01:00
Anatol Belski fb27e16f01 fixed the skipif part 2013-11-21 11:54:35 +01:00
Anatol Belski c63f8bdfba now, as it works correct, fix the test 2013-11-20 17:49:40 +01:00
Anatol Belski 5e3d047a07 removed debugbreak 2013-11-20 17:15:01 +01:00
Anatol Belski 7156c5cb39 datatype fixes for iconv 2013-11-20 17:11:10 +01:00
Anatol Belski 6a60a03859 Merge branch 'master' into str_size_and_int64
Conflicts:
	Zend/zend_operators.h
2013-11-20 10:17:19 +01:00
Anatol Belski 6f2d32fd1f Merge branch 'PHP-5.6'
* PHP-5.6:
  permanently deactivate that place, not on runtime only
2013-11-20 10:12:29 +01:00
Yasuo Ohgaki bccead024d Merge branch 'PHP-5.6'
* PHP-5.6:
  added a test to cover distinction between boolean return value of unserialize function and deserializing serialized boolean
2013-11-20 07:25:45 +09:00
Jeff Welch b2ca20312d Fixed tests that fail with non-default serialize_precision configurations.
See:

 * https://bugs.php.net/bug.php?id=64760
 * 4dc4302
2013-11-20 06:17:57 +09:00
Anatol Belski 726d803375 fixed key length datatype 2013-11-19 14:51:20 +01:00
Anatol Belski e7b54a3aa7 fixed datatypes for some basic globals members 2013-11-19 14:13:23 +01:00
Anatol Belski f7bd3db224 Merge branch 'master' into str_size_and_int64 2013-11-19 13:42:51 +01:00
Anatol Belski aee386bb30 fix range check related to #45877 2013-11-19 13:40:43 +01:00
Remi Collet b41a2755c4 Merge branch 'PHP-5.6'
* PHP-5.6:
  avoid doing a stream_select on a closed stream
2013-11-19 12:43:00 +01:00
Anatol Belski d34f4454f0 fixed zlib param parsing 2013-11-19 10:38:54 +01:00
Andrea Faulds e68792dbb2 Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS
  Removed UPGRADING note
  Rewrote test using tcp instead of http:// stream
  Implemented FR #65917 (getallheaders() is not supported by the built-in...)
2013-11-18 21:54:00 +00:00
Anatol Belski 0cac40e879 moved the check to the right place and fixed wording 2013-11-18 17:28:48 +01:00
Anatol Belski c398bdd4a3 runtime checks for various lengths in pcre 2013-11-18 14:03:55 +01:00
kovacs.ferenc a833f7d460 Merge branch 'PHP-5.6' 2013-11-18 12:39:40 +01:00
Anatol Belski 365603916e fixed one more stat() occurrence 2013-11-18 09:39:42 +01:00
Anatol Belski 383ddcde2b Merge branch 'master' into str_size_and_int64 2013-11-18 09:10:22 +01:00
Kalle Sommer Nielsen 9e3551ba1f Eliminated the TSRMLS_FETCH() in zend_set_memory_limit() 2013-11-18 01:36:17 +01:00
krakjoe f046189e34 export more Zend API 2013-11-17 22:39:31 +00:00
Xinchen Hui b93f8e6277 Merge branch 'PHP-5.6' 2013-11-17 17:20:27 +08:00
Xinchen Hui 5a282136a3 Merge branch 'PHP-5.5' 2013-11-17 17:11:20 +08:00
Christopher Jones 3e4e173296 Merge branch 'PHP-5.6'
* PHP-5.6:
  Update NEWS
  This is CLI web server change.  Added some common MIME types to the existing lookup list, pending a more thorough lookup solution, if anyone wants to do that.  Ref http://news.php.net/php.internals/69990
2013-11-15 12:38:18 -08:00
Anatol Belski bfa6d8d87d Merge branch 'str_size_and_int64' of git.php.net:php-src into str_size_and_int64 2013-11-15 11:07:58 +01:00
Anatol Belski ae576a4309 fix zend_off_t when int64 is disabled 2013-11-15 01:44:18 -08:00
Anatol Belski 18e4e5b350 Merge branch 'master' into str_size_and_int64 2013-11-15 10:04:53 +01:00
Remi Collet a37ff1fa4b Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  Fix Bug #65714 	PHP cli forces the tty to cooked mode
2013-11-15 09:53:23 +01:00
Adam Harvey 6cf46f49e3 Merge branch 'PHP-5.6' 2013-11-14 10:53:02 -08:00
Anatol Belski a80567a929 fixed undefined behaviour in array_sum
The exact situation is when passing same pointer twice to
fast_add_function(). This prorably has to be fixed in mainstream too.
2013-11-14 14:59:08 +01:00
Anatol Belski e93c9ae26a fixed serialize/unserialize
- almost correct datatype fixes
2013-11-13 18:37:57 +01:00
Anatol Belski 6b229d541a fixed ext/date for php_int_t usage 2013-11-13 15:22:56 +01:00
Remi Collet b6f76adef4 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix failed test with recent glibc
  5.5.7 now
2013-11-13 13:21:28 +01:00
Anatol Belski bd81a99ab3 Merge branch 'master' into str_size_and_int64 2013-11-13 12:44:00 +01:00
Anatol Belski 15bb12b269 fixed "struct stat" usage in main, cli and ext/standard 2013-11-13 12:39:12 +01:00
Nikita Popov b8525baecf Merge branch 'PHP-5.6' 2013-11-12 22:04:45 +01:00
Anatol Belski 468b2923ca fixed stat usage, yet core only
- defined php_stat_t as replacement for struct stat
- on _WIN64 use _fstat64
2013-11-12 21:10:23 +01:00
Anatol Belski e9c7342a80 Merge branch 'master' into str_size_and_int64 2013-11-12 10:57:47 +01:00
Anatol Belski ef1c2ffaf0 more fixes to spl 2013-11-12 10:56:01 +01:00
Anatol Belski ae1fb8dc4b fixes to spl 2013-11-12 10:22:06 +01:00
Anatol Belski 266a428a59 use appropriate seek() and tell() on _WIN64 2013-11-12 00:41:58 +01:00
Anatol Belski f90fe17424 define platform dependent zend_off_t 2013-11-12 00:24:52 +01:00
Anatol Belski 570b1041e9 fixes to pow() 2013-11-11 14:23:58 +01:00
Anatol Belski 2cbd452cfb fixed parse_url() 2013-11-11 12:49:57 +01:00
Anatol Belski ebc2816318 fixed range() 2013-11-11 11:52:44 +01:00
Anatol Belski c23baba693 fixed array_product() 2013-11-11 09:44:24 +01:00
Anatol Belski 7e20b13d86 fixed array_slice() 2013-11-11 09:40:29 +01:00
Adam Harvey 91cb087727 Merge branch 'PHP-5.6'
* PHP-5.6:
  Update NEWS and remove the unnecessary UPGRADING note.
  UPGRADING and NEWS
  Better test: Check combined leading/trailing
  Fixed whitespace part of bug #64874 ("json_decode handles whitespace and case-sensitivity incorrectly")
2013-11-10 16:16:38 -05:00
Anatol Belski 57ce464a1c fixed *scanf() family 2013-11-10 18:59:07 +01:00
Anatol Belski 094c93b6f8 fixed *printf() family 2013-11-10 18:02:25 +01:00
Anatol Belski b7705365a2 fix explode() 2013-11-10 17:09:51 +01:00
Anatol Belski 3069b384e1 Merge branch 'master' into str_size_and_int64 2013-11-10 15:14:03 +01:00
Anatol Belski c0b112c68d one more fix to pack/unpack 2013-11-10 14:40:00 +01:00
Anatol Belski 7cf68266b3 fixed unpack 2013-11-10 14:02:38 +01:00
Anatol Belski 637e9fc5bb fix 64 bit integer values 2013-11-10 13:58:09 +01:00
Remi Collet fac240b5d1 Merge branch 'PHP-5.6'
* PHP-5.6:
  missing 'config.h' in 5dc37b3
2013-11-10 07:10:48 +01:00
Rasmus Lerdorf 7e01935dc2 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix broken test

Conflicts:
	NEWS
2013-11-09 09:49:09 -08:00
Adam Harvey 90d4ae4da8 Make all code paths in json_determine_array_type() return constants.
This is a purely cosmetic change, but the current behaviour of returning
PHP_JSON_OUTPUT_ARRAY and 1 looks weird.
2013-11-09 12:15:37 -05:00
Anatol Belski 36cbe38201 reverted compare funcs and return values, should be int anyway 2013-11-09 13:16:15 +01:00
Anatol Belski ad675f6ac2 Merge branch 'master' into str_size_and_int64
Conflicts:
	main/php_version.h
2013-11-09 11:03:04 +01:00
Anatol Belski 7c5af3884a fix index insert 2013-11-09 10:56:51 +01:00
Anatol Belski c58f9eea11 fix array related compare functions 2013-11-09 10:30:55 +01:00
Anatol Belski c2e228b77d too much for a compare func 2013-11-09 09:18:42 +01:00
Anatol Belski 27a86a4402 fixed 64 bit pass by ref 2013-11-09 02:09:14 +01:00
Anatol Belski 5615326e1f fixed fetching $this 2013-11-08 22:36:30 +01:00
Dmitry Stogov 43cb6ba763 Merge branch 'PHP-5.5'
* PHP-5.5:
  Fixed issue #115 (path issue when using phar). Fixed issue #149 (Phar mount points not working with OPcache enabled).

Conflicts:
	NEWS
2013-11-08 16:37:28 +04:00
Dmitry Stogov 8f097fb466 Merge branch 'PHP-5.6'
* PHP-5.6:
  Added tests for PHAR/OPCahce incompatibilities

Conflicts:
	NEWS
2013-11-08 14:16:40 +04:00
Xinchen Hui 6357cdaecf Merge branch 'PHP-5.5' 2013-11-08 15:33:57 +08:00
Xinchen Hui 4c13992f0d Merge branch 'PHP-5.5' 2013-11-08 15:09:08 +08:00
Rasmus Lerdorf 911ba0293a Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #65946 - pdo_sql_parser.c permanently converts values bound to strings
  bump API versions
2013-11-07 18:10:39 -08:00
Anatol Belski 11d4bcd706 remaining replacements ulong vs zend_uint_t 2013-11-07 19:41:57 +01:00
Anatol Belski df312c5ddf fix macros 2013-11-07 18:24:06 +01:00
Anatol Belski de99f93aa5 fix datatype for hash vars 2013-11-07 17:47:48 +01:00
Rasmus Lerdorf 308edceb51 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src: (304 commits)
  OCI8 build change: Fix source variable definition for C89 compatibility
  bump version, empty NEWS, UPGRADING and UPGRADING.INTERNALS
  bump API versions
  configure output alignment
  Add a couple more test cases to parse_url() tests
  fix missing change from 'tcp_socket' to the more common 'server'
  fix many parallel test issues
  Cleanup temp test file
  Revert "Fixed issue #115 (path issue when using phar)."
  Update LiteSpeed SAPI code to V6.4
  Fixed typo in Makefile.frag
  updated NEWS
  Remove outdate codes, make it clearer, although just a bit..
  Update NEWS
  Fixed Bug #66034 (Segmentation Fault when constructor of PDO statement throws an exception)
  NEWS + UPGRADING
  Sync ext/zip with pecl/zip version 1.3.2 - update libzip to version 1.11.1. We don't use any private symbol anymore - new method ZipArchive::setPassword($password) - add --with-libzip option to build with system libzip
  Fixed coredump due to abnormal implemention of phar
  Fix English here
  limit virtual_cwd_activate() duplicated call to ZTS only
  ...
2013-11-07 07:55:44 -08:00
Anatol Belski 98c6e0d535 first shot for 64 bit array indexes, more broken things to fix 2013-11-07 14:03:36 +01:00
Christopher Jones 0d506131af OCI8 build change: Fix source variable definition for C89 compatibility 2013-11-06 10:37:22 -08:00
Ferenc Kovacs d17b684b91 bump version, empty NEWS, UPGRADING and UPGRADING.INTERNALS 2013-11-06 14:03:24 +01:00
Ferenc Kovacs 117955daf6 bump API versions 2013-11-06 14:03:24 +01:00
Remi Collet 1d93f396bb configure output alignment 2013-11-06 13:38:53 +01:00
Pierre Joye fb3e21fbcc add vc12 (2013) 2013-11-04 22:25:50 +01:00
Pierre Joye 07b9db3def Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
# By Xinchen Hui
# Via Xinchen Hui
* 'PHP-5.5' of git.php.net:php-src:
  Fixed coredump due to abnormal implemention of phar
  remove "PHP 6" staff
2013-11-04 22:21:03 +01:00
Pierre Joye 9b54901ffb add vc12 (2013) 2013-11-04 22:19:02 +01:00
Anatol Belski dd360d6336 use max int to out the array index 2013-11-04 19:49:41 +01:00
Anatol Belski 446cfd3e1c fix stream_wrapper_register() 2013-11-04 11:12:10 +01:00
Anatol Belski 48e63da659 fixes to array funcs 2013-11-04 10:45:58 +01:00
Anatol Belski 642a8b870a Fixes mem size format for error msg, fixes also Zend\tests\bug55509.phpt 2013-11-04 09:57:29 +01:00
Anatol Belski e243a26b4c Merge branch 'master' into str_size_and_int64
* master: (30 commits)
  Fixed coredump due to abnormal implemention of phar
  Fix English here
  Fix bug #66008
  Removed unnecessary GC checks
  Add crypt() change in UPGRADING
  Fix bug #65997 by switching to Serializable for GMP
  Fix compile warning in GMP
  Fix ZTS build
  updated libs_versions.txt
  Implemented Change crypt() behavior w/o salt RFC
  Update NEWS
  Update NEWS
  Fixed Bug 64760 var_export() does not use full precision for floating-point numbers
  add bundled libzip LICENSE, as required by BSD License terms
  Avoid copy in func_get_arg()
  - Updated to version 2013.8 (2013h)
  Use zval* instead of zval**
  Increased limit for opcache.max_accelerated_files to 1,000,000. (Chris)
  Improved performance of array_merge() by eliminating useless copying
  Improved performance of func_get_args() by eliminating useless copying
  ...

Conflicts:
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2013-11-04 09:19:52 +01:00
Kevin Israel 82a4f1a1a2 Fix #66021 (Blank line inside empty array/object)
Changed json_encode() so that when the JSON_PRETTY_PRINT option is specified,
the pair of linefeeds immediately after an opening bracket and before the
corresponding closing bracket is omitted when the array or object contains no
elements or accessible properties (and hence would have a blank line between
the brackets).
2013-11-02 15:59:11 -04:00
Anatol Belski 1ba7ceee17 fixed hex integer interpretation 2013-10-28 10:27:36 +01:00
Anatol Belski 0c21ecf159 force the multiply macros to use zend_int_t 2013-10-28 10:26:39 +01:00
Anatol Belski 3889019638 Merge branch 'master' into str_size_and_int64
* master:
  fix limitation of upload size == (U)INT_MAX in CGI
  Link to more readmes
  test commit
  - test3
  - test commit 2
  - test commit1
2013-10-28 09:10:55 +01:00
Anatol Belski d5e835737c fixed binary int representation 2013-10-27 16:41:38 +01:00
Anatol Belski 20ff7a2d68 some strtol replacements 2013-10-27 11:05:40 +01:00
Anatol Belski 23390de0e7 fix strlen macros 2013-10-26 11:48:19 -07:00
Anatol Belski 4fc7dc6eae Merge branch 'master' into str_size_and_int64
* master: (79 commits)
  ldap_escape() notes
  Increment version number, since this will be 5.5.6.
  Added Zend Debugger to the note about the load order (by trash4you at online dot de)
  Added a LICENSE file to make it easier for PECL binary distributions to conform with the license.
  Fix Coverity issue reporting wrong sizeof()
  Fixed bug #65939 (Space before ";" breaks php.ini parsing). (brainstorm at nopcode dot org)
  exif NEWS
  add tests for bug #62523
  Merged PR #293 (Exif crash on unknown encoding was fixed) By: 	Draal Conflicts: 	configure.in 	main/php_version.h
  fix bug #65936 (dangling context pointer causes crash)
  remove TRAVIS check in test source
  Fixed compilation warning
  Just SKIP that test on travis
  Fixed issue #115 (path issue when using phar).
  fix memory leak on error (from Coverity scan)
  fix argument type & remove warning
  fix const warnings in intl methods
  Fix coverity issue with -1 returned by findOffset not being handled by getPreferredTag
  fix possibility of access to *storedType without initialization
  Fix coverity issue with -1 returned by findOffset not being handled by getPreferredTag
  ...

Conflicts:
	Zend/zend_compile.c
	ext/intl/collator/collator_create.c
	ext/intl/locale/locale_methods.c
	ext/intl/msgformat/msgformat_format.c
	ext/intl/msgformat/msgformat_parse.c
2013-10-25 04:19:27 -07:00
Anatol Belski f0fdb82f83 bigger memory_limit should work now on 64 bit windows 2013-10-16 10:48:03 -07:00
Anatol Belski 4a5fee1b36 fix broken master merge 2013-10-16 06:10:00 -07:00
Anatol Belski 4b6d784962 Merge branch 'str_size_and_int64' of https://github.com/weltling/php-src into str_size_and_int64
Conflicts:
	NEWS
	UPGRADING
	UPGRADING.INTERNALS
	Zend/zend_API.c
	Zend/zend_compile.c
	Zend/zend_compile.h
	Zend/zend_constants.h
	Zend/zend_exceptions.c
	Zend/zend_exceptions.h
	Zend/zend_execute.c
	Zend/zend_language_scanner.c
	Zend/zend_language_scanner.l
	Zend/zend_operators.c
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
	ext/date/lib/parse_date.c
	ext/date/php_date.c
	ext/imap/config.m4
	ext/oci8/config.m4
	ext/oci8/oci8.c
	ext/oci8/oci8_dtrace.d
	ext/oci8/oci8_interface.c
	ext/oci8/oci8_lob.c
	ext/oci8/oci8_statement.c
	ext/oci8/package.xml
	ext/oci8/php_oci8.h
	ext/reflection/php_reflection.c
	ext/spl/spl_directory.c
	ext/spl/spl_fixedarray.c
	ext/standard/file.c
	ext/standard/http_fopen_wrapper.c
	ext/standard/info.c
	ext/standard/string.c
	main/php_variables.c
	main/streams/streams.c
2013-10-16 06:02:27 -07:00
Anatol Belski 4e537ca4ca fix broken merge from master 2013-10-16 03:38:14 -07:00
Stanislav Malyshev 941887359b 5.4.21 now 2013-10-16 03:21:55 -07:00
Dmitry Stogov ed36099a0b Fixed bug #65561 (Zend Opcache on Solaris 11 x86 needs ZEND_MM_ALIGNMENT=4). (Terry Ellison) 2013-10-16 03:21:49 -07:00
Anatol Belski 615756c8ab fixed ext/iconv 2013-10-16 03:20:34 -07:00
Joey Smith e6095aa4cb Expose fputcsv's escape_char to userland
Allows users to assert that something other than the backslash
should be considered an escape char; also follows the RFC 4180
recommendation that fields containing a " be enclosed.
2013-10-16 03:18:19 -07:00
Anatol Belski 983db235b0 fixed decrement 2013-10-16 03:14:25 -07:00
Anatol Belski 582f52c173 fixed numeric string comparsion 2013-10-16 03:14:24 -07:00
Anatol Belski c47840d92b some more linux fixes 2013-10-16 03:14:23 -07:00
Anatol Belski 8949c825c7 fixed configure.in 2013-10-16 03:14:22 -07:00
Anatol Belski 68ec5a9b89 ext/intl further fixes 2013-10-16 03:14:22 -07:00
Anatol Belski 866d33e1e9 ext/intl further converting 2013-10-16 03:14:21 -07:00
Anatol Belski 52a74bbdd6 more fixes to ext/intl 2013-10-16 03:14:20 -07:00
Anatol Belski 05593baf9a Z_STRLEN vs Z_STRSIZE in ext/intl 2013-10-16 03:14:20 -07:00
Anatol Belski 457f28c354 adapted args in ext/intl 2013-10-16 03:14:19 -07:00
Anatol Belski 9e4a7835c5 fixed the mb_regex* stuff 2013-10-16 03:14:18 -07:00
Anatol Belski 1f261538e8 fixed sapi filter usage 2013-10-16 03:14:17 -07:00
Anatol Belski 80d8037531 replaced all the arg formats and Z_STRLEN
won't work yet, just initial work to be done
2013-10-16 03:14:17 -07:00
Anatol Belski 659d7ca634 fixed set process_title() 2013-10-16 03:14:16 -07:00
Anatol Belski 84e13901b0 fix pcre usage in spl 2013-10-16 03:14:15 -07:00
Anatol Belski 69ea580aad fixed ext/pcre internal stuff
Now only the flaw is pcrelib itself as it works with int for
string length and offsets. Bigger stuff won't work anyway, but
if there are some issue there are just a few places like pcre_exec()
where we can explicitly cast to int.
2013-10-16 03:14:15 -07:00
Anatol Belski af4924eaea adapted all the function arg formats in ext/zlib 2013-10-16 03:14:13 -07:00
Anatol Belski 1015a29997 some more fixes to zend operators 2013-10-16 03:14:12 -07:00
Anatol Belski 889b8d75fe added ZEND_INT_FMT 2013-10-16 03:14:12 -07:00
Anatol Belski 34818356fc some fixes to constants, var_dump and var_export 2013-10-16 03:14:11 -07:00
Anatol Belski dfec5cf775 first fixes to ext/spl, yet incomplete 2013-10-16 03:12:49 -07:00
Anatol Belski a5cda49fe9 fixes to reflection 2013-10-16 03:10:52 -07:00
Anatol Belski 3b55e60245 fixes to ereg 2013-10-16 03:10:51 -07:00
Anatol Belski 4f6e709a67 more fixes to ext/date 2013-10-16 03:10:50 -07:00
Anatol Belski b24f226e93 replaced arg formats in pcre 2013-10-16 03:10:50 -07:00
Anatol Belski 41e0c7b1f6 fixed sapi.h 2013-10-16 03:10:49 -07:00
Anatol Belski 4ea8803533 replaced all arg formats in ext/standard 2013-10-16 03:10:48 -07:00
Anatol Belski f8923bb076 replaced all the int params in the datetime 2013-10-16 03:09:52 -07:00
Anatol Belski d3f87d0ffc adapted the function args for ereg
And that actually seems to be it, all tests pass so far. So lets
see how it goes in the fture, too easy but seems to be done for now .
2013-10-16 03:09:51 -07:00
Anatol Belski 179d696b35 trivial fix spl_autoload_functions() 2013-10-16 03:09:50 -07:00
Anatol Belski 4be4279c83 final fix for hebrev() 2013-10-16 03:09:50 -07:00
Anatol Belski 832e9653d1 fix build 2013-10-16 03:09:49 -07:00
Anatol Belski 469b9e44fb fixed file_put_contents() 2013-10-16 03:09:48 -07:00
Anatol Belski b7f8723065 fixed fwrite 2013-10-16 03:09:47 -07:00
Anatol Belski a8959d76c8 fixed "s" vs "S" for soundex 2013-10-16 03:09:45 -07:00
Anatol Belski 734f9e58f9 partial fix to hebrev 2013-10-16 03:09:44 -07:00
Anatol Belski 5b6f0092f4 fixed unpack() 2013-10-16 03:09:44 -07:00
Anatol Belski d7d84804e6 fixed str_pad() 2013-10-16 03:09:43 -07:00
Anatol Belski 12951f8bbd lost condition 2013-10-16 03:09:42 -07:00
Anatol Belski 6fc93dfa6c fixed str_split() 2013-10-16 03:09:41 -07:00
Anatol Belski a61c753006 Fixed substr(), but no kidding now.
all the signed/unsigned arithmetic needs clear understanding
2013-10-16 03:09:41 -07:00
Anatol Belski 51ddf600fe small correction to substr 2013-10-16 03:08:26 -07:00
Anatol Belski df0a28baab fixed strstr() 2013-10-16 03:08:26 -07:00
Anatol Belski c9280f1e1c fixed substr() 2013-10-16 03:08:25 -07:00
Anatol Belski f4c91f0aa8 adapted all the zend_parse_parameters() calls 2013-10-16 03:08:24 -07:00
Anatol Belski 5d1c130506 changes to dns.c 2013-10-16 03:08:22 -07:00
Anatol Belski ec49b23a4d fixes for types to ext/standard with types ... some stuff is broken now 2013-10-16 03:08:21 -07:00
Anatol Belski 63cf4c45ca more fixes to string.c 2013-10-16 03:05:14 -07:00
Anatol Belski 010b8114cc more for cli sapi 2013-10-16 03:05:13 -07:00
Anatol Belski dec724e98d fixes to main/ 2013-10-16 03:05:13 -07:00
Anatol Belski 646b5d306c fixes after merging master 2013-10-16 03:02:34 -07:00
Anatol Belski 6a16702e30 Fixes for sizeof int 2013-10-16 02:57:39 -07:00
Anatol Belski f7730bd47e made lang scanner use zend_int.h and regenerated it 2013-10-16 02:57:38 -07:00
Anatol Belski c10c568d0f added zend_int.h to zend*.dsp 2013-10-16 02:37:13 -07:00
Anatol Belski 91058553c8 adjusted zend_types.h 2013-10-16 02:37:13 -07:00
Anatol Belski 631628baad added zend_int.h 2013-10-16 02:37:12 -07:00
Anatol Belski f6cf006496 the very first porting try, many things not worky 2013-10-16 02:37:11 -07:00
Anatol Belski baf3937c37 fixes to zend 2013-10-16 02:35:31 -07:00
Anatol Belski 0e3420bf8f more fixes to streams 2013-10-16 02:34:31 -07:00
Anatol Belski 0020a89c43 fixes to SAPI.c 2013-10-16 02:32:22 -07:00
Anatol Belski 9f294bf282 fixes to plain stream wrapper 2013-10-16 02:32:21 -07:00
Anatol Belski 5748286990 fixes to xp_socket.c 2013-10-16 02:32:20 -07:00
Anatol Belski b610404004 fixes to zend_ini and output 2013-10-16 02:32:19 -07:00
Anatol Belski 74a68df77c fix uuencode 2013-10-16 02:32:18 -07:00
Anatol Belski 42fdfacae6 fix base64 stuff 2013-10-16 02:32:17 -07:00
Anatol Belski 98ec9fdd51 fixes to url processing stuff 2013-10-16 02:32:17 -07:00
Anatol Belski 6221ea90cb huge fix to spl and more 2013-10-16 02:32:16 -07:00
Anatol Belski 86c9a6f901 fix 's' vs 'S' for datetime 2013-10-16 02:31:20 -07:00
Anatol Belski dc43044ffb string sze_t fix for internal strings 2013-10-16 02:31:20 -07:00
Anatol Belski 0d0eec58f1 strig size_t fixes to zend_alloc.* 2013-10-16 02:31:19 -07:00
Anatol Belski a296d61c05 trivial fixes to ext\standard 2013-10-16 02:31:18 -07:00
Anatol Belski 2f39ef6596 trivial fixes to spl 2013-10-16 02:30:28 -07:00
Anatol Belski 4f62adfb2c fix spl_autoload_* 2013-10-16 02:30:27 -07:00
Anatol Belski 43e05efd3b windows fixes 2013-10-16 02:30:27 -07:00
Anthony Ferrara 2cf827b52a Get core test suite to really pass, fully. Woot 2013-10-16 02:30:26 -07:00
Anthony Ferrara 0cd95c1ee0 Get basic language tests to all pass (minus xfails) 2013-10-16 02:30:25 -07:00
Anthony Ferrara 6484eaf77e Better test coverage 2013-10-16 02:26:33 -07:00
Anthony Ferrara e6f90ecc27 It compiles. Sort-of. In a way. Yeah. But nothing works. Sigh 2013-10-16 02:24:40 -07:00
Anthony Ferrara 1d861341a0 More work, get strings working, sort-of... 2013-10-16 01:58:11 -07:00
Anthony Ferrara 10ff0829d4 Refactor file.c to use new string types 2013-10-16 01:56:47 -07:00
Anthony Ferrara c224e239bd Re-do a lot of it using a conditional define, and legacy type information for APIs 2013-10-16 01:55:06 -07:00
Adam Harvey 59ebbf5109 Allow CURLOPT_FOLLOWLOCATION to be used with open_basedir.
Newer versions of libcurl prevent file:// location response headers by default,
which means that the open_basedir check is unnecessary — the fact
CURLOPT_REDIR_PROTOCOLS can't set CURLPROTO_FILE with open_basedir enabled
means that there's no possibility of breaching the open_basedir restriction,
and this allows HTTP redirects to be followed automatically.

Implements FR #65646 (re-enable CURLOPT_FOLLOWLOCATION with open_basedir or
safe_mode).
2013-10-16 01:34:31 -07:00
Adam Harvey 04c823d287 Tinker with the wording of the short_open_tag description.
I'm still not thrilled with this, but it's a bit better and addresses the
issues noted in bug #65644. Plus, it now mentions the decoupling of <?=.
2013-10-16 01:34:30 -07:00
Adam Harvey 5c50e69814 Handle CLI server request headers case insensitively.
Fixes bug #65633 (built-in server treat some http headers as case-sensitive).
2013-10-16 01:29:42 -07:00
unknown f074ad207c ensure that the defined interpolation method is used by the generic scaling functions 2013-10-16 01:29:06 -07:00
Dmitry Stogov 4d86b8b507 Fixed issue #128 (opcache_invalidate segmentation fault) 2013-10-16 01:28:23 -07:00
Christopher Jones 32a8ad32e7 Remove obsolete flag 2013-10-16 01:28:22 -07:00
Christopher Jones 814b1985bc Update DTrace probes 2013-10-16 01:28:22 -07:00
Christopher Jones f453122b73 Add test for oci_set_* error changes 2013-10-16 01:28:21 -07:00
Christopher Jones 66db31f5c6 Make oci_set_*($connection,...) errors retrievable via oci_error($connection).
Improve some error handling to produce error text on some rare edge cases.
Disambiguate the Oracle library function call return status values from ORA error numbers.
Review and unify error data types.
2013-10-16 01:28:20 -07:00
Christopher Jones 388928ee24 Cast time_t since some "dtrace -G" invocations fail on time_t arguments 2013-10-16 01:26:09 -07:00
Stanislav Malyshev 49c9e595f6 5.4.21 now 2013-10-16 01:26:08 -07:00
Gustavo André dos Santos Lopes f1a05e788c Update NEWS/UPGRADING with info about incompat ctx 2013-10-16 01:24:01 -07:00
Xinchen Hui fd91996c55 Typo.... 2013-10-16 01:24:00 -07:00
Xinchen Hui f16cdc0d50 Add a XFAIL test for #64896 2013-10-16 01:24:00 -07:00
Gustavo André dos Santos Lopes 765cdb22cf Implement phase 1 of rfc/incompat_ctx
Just changing the error level of the message from E_STRICT to
E_DEPRECATED. This comes one version later than the timeline
mentioned in the RFC.

Oddly, there were no tests for this ‘feature’. I added a simple
one.
2013-10-16 01:23:59 -07:00
Nikita Popov 7f17c8c11e Make use of direct returns in some places 2013-10-16 01:23:58 -07:00
Nikita Popov cc0e733baa Always pass return_value_ptr to internal functions
Previous some places passed return_value_ptr only if the function
returned by reference. Now return_value_ptr is always set, even
for functions returning by-value.

This allows you to return zvals without copying their contents. For
this purpose two new macros RETVAL_ZVAL_FAST and RETURN_ZVAL_FAST
are added:

    RETVAL_ZVAL_FAST(zv); /* Analog to RETVAL_ZVAL(zv, 1, 0) */
    RETURN_ZVAL_FAST(zv); /* Analog to RETURN_ZVAL(zv, 1, 0) */

These macros behave similarly to the non-FAST versions with
copy=1 and dtor=0, with the difference that the FAST versions
will try return the zval without copying by utilizing return_value_ptr.
2013-10-16 01:23:57 -07:00
Christopher Jones 93b6c4f2bb Allow OCI8 to be DTrace-enabled independently of core PHP's DTrace
status.  The proviso is OCI8 must be built "shared" when DTrace is
enabled.  This implementation (i) works around an incomplete core PHP
solution for extension tracing (ii) avoid any issues with DOF section
location and the complexities of needing to merge all provider .d
files for static builds (iii) allows OCI8 to be DTrace-enabled when
doing PECL installs of OCI8 on PHP versions without core PHP DTrace
support.

This is an initial patch i.e. it will undergo further testing.
2013-10-16 01:23:57 -07:00
Christopher Jones e9782f3a10 OCI8: remove unused ext/oci8/config.m4 macro 2013-10-16 01:23:56 -07:00
Christopher Jones 6bb30e2aec OCI8 whitespace: remove tabs embedded in code 2013-10-16 01:23:55 -07:00
Remi Collet a296e3d032 Fixed bug #65564 stack-buffer-overflow in DateTimeZone stuff caught by AddressSanitizer 2013-10-16 01:23:54 -07:00
Remi Collet 3df4c3eb70 Fixed Bug #65564 stack-buffer-overflow in DateTimeZone stuff caught by AddressSanitizer 2013-10-16 01:22:56 -07:00
Xinchen Hui 2e560a331d Fixed bug #60598 (cli/apache sapi segfault on objects manipulation) 2013-10-16 01:21:34 -07:00
Yasuo Ohgaki 9628ac34a6 Remove ini dependency in test 2013-10-16 01:20:56 -07:00
Dmitry Stogov 7fcd3e2721 Fixed bug #65510 (5.5.2 crashes in _get_zval_ptr_ptr_var) 2013-10-16 01:20:55 -07:00
Dmitry Stogov 58606fc10d Fixed bug #61759 (class_alias() should accept classes with leading backslashes). (Julien) 2013-10-16 01:20:13 -07:00
Dmitry Stogov 08c2e821cc Fixed compatibility with php-5.2 2013-10-16 01:19:17 -07:00
Dmitry Stogov 5352788b44 Fixed bug #65561 (Zend Opcache on Solaris 11 x86 needs ZEND_MM_ALIGNMENT=4). (Terry Ellison) 2013-10-16 01:19:16 -07:00
Xinchen Hui db11ad2e94 Avoid compiler warning 2013-10-16 01:18:36 -07:00
Adam Harvey acbfd16ddf Fix bug #65579 (Using traits with get_class_methods causes segfault).
Specifically, this checks if there are trait aliases defined in the class scope
before attempting to dereference the first trait alias. This handles the case
where a trait alias was used in a child trait but no aliases exist in the
concrete class.
2013-10-16 01:18:36 -07:00
Anatol Belski 132505cd52 removed the /Wp64 switch as we use true 64 bit compiler now 2013-10-16 01:17:54 -07:00
Anatol Belski f350f3c9b8 updated lib versions, the vc11 ones only matter now 2013-10-16 01:17:12 -07:00
Christopher Jones 16ef7e80a8 OCI8 2.0: add oci8-check-connection probe and do some renaming 2013-10-16 01:17:11 -07:00
Anatol Belski cf22d7c06b fixed ext/iconv 2013-10-16 01:17:10 -07:00
Xinchen Hui c4edc6e277 Fixed compiler warnings
warning: 'local_dval' may be used uninitialized in this function
[-Wmaybe-uninitialized]

warning: 'dval2' may be used uninitialized in this function
[-Wmaybe-uninitialized]
2013-10-16 01:17:09 -07:00
Christopher Jones 6a2c44c811 Use "__" consistently in OCI8 DTrace probe definitions. It maps to "-" in the probe name. 2013-10-16 01:16:12 -07:00
Christopher Jones fb03ad89ef Leave it to DTrace FBT to trace underlying library calls 2013-10-16 01:16:11 -07:00
Nikita Popov 66de4151e7 Evaluate ZVAL_ZVAL arguments only once
Also remove some isref/refcount assignments, which are no longer
necessary (as ZVAL_COPY_VALUE is used now).
2013-10-16 01:16:11 -07:00
Dmitry Stogov e8b7f9f011 Fixed compilation warning 2013-10-16 01:16:10 -07:00
gron1987 62b0f1d0fc Fix bug #65554 in DateTime, when use it with D/l in format and textual day have dot at the end 2013-10-16 01:16:09 -07:00
Stanislav Malyshev 66dd725ac7 fix mysql tests & mark nextRowset problematic tests 2013-10-16 01:14:27 -07:00
Joey Smith 7f22f40541 Expose fputcsv's escape_char to userland
Allows users to assert that something other than the backslash
should be considered an escape char; also follows the RFC 4180
recommendation that fields containing a " be enclosed.
2013-10-16 01:14:23 -07:00
Stanislav Malyshev e636bea3f7 fix mysql init 2013-10-16 01:12:01 -07:00
Stanislav Malyshev ef30289ead add openssl 2013-10-16 01:12:00 -07:00
Stanislav Malyshev b0aed8f9d3 add mysql settings 2013-10-16 01:11:59 -07:00
root c74f0c613d Test extension xmlrpc encode type double and string decode type string and int 2013-10-16 01:11:23 -07:00
Ole Markus With 32776ad023 Stricter libc-client symlink check 2013-10-16 01:11:22 -07:00
Michael M Slusarz 674fb57896 Fix #65483: quoted-printable encode stream filter incorrectly encoding spaces 2013-10-16 01:11:21 -07:00
Alexander Moskaliov 39c8f8a205 Remove semicolon 2013-10-16 01:11:21 -07:00
Alexander Moskalev 66174837ef Fix DateInterval->days value
when object was created not from DateTime::diff()
2013-10-16 01:11:20 -07:00
Boro Sitnikovski bce1151df9 Bug 64744
Show the type of the non-object for more descriptive errors
2013-09-20 13:34:12 +02:00
Anatol Belski b8213906ff fixed decrement 2013-08-26 07:31:10 -07:00
Anatol Belski 4b484e0278 fixed numeric string comparsion 2013-08-26 07:06:31 -07:00
Anatol Belski 1b523d9c93 Merge branch 'string_size_refactor_take_2' into str_size_and_int64 2013-08-26 05:44:35 -07:00
Anatol Belski a0dfabed1f some more linux fixes 2013-08-26 05:54:33 -07:00
Anatol Belski 61a1a3e39b fixed configure.in 2013-08-26 05:19:14 -07:00
Anatol Belski 6e4395b586 ext/intl further fixes 2013-08-26 04:33:07 -07:00
Anatol Belski 9c81da4170 ext/intl further converting 2013-08-26 01:52:31 -07:00
Anatol Belski 14f8e16870 more fixes to ext/intl 2013-08-24 07:32:28 -07:00
Anatol Belski 07b87a2a7f Z_STRLEN vs Z_STRSIZE in ext/intl 2013-08-24 07:02:28 -07:00
Anatol Belski 1492bc1d60 adapted args in ext/intl 2013-08-24 05:08:22 -07:00
Anatol Belski 2545fbbdc2 fixed the mb_regex* stuff 2013-08-24 03:24:06 -07:00
Anatol Belski 2bf8f91b87 fixed sapi filter usage 2013-08-24 03:04:35 -07:00
Anatol Belski 9382c75061 replaced all the arg formats and Z_STRLEN
won't work yet, just initial work to be done
2013-08-24 02:54:21 -07:00
Anatol Belski 644278c1a3 Merge branch 'master' of https://github.com/php/php-src into string_size_refactor_take_2 2013-08-23 09:07:58 -07:00
Anatol Belski 3d49768cc2 fixed set process_title() 2013-08-23 07:12:56 -07:00
Anatol Belski 2a28a30c4d fix pcre usage in spl 2013-08-23 06:47:18 -07:00
Anatol Belski f2a4f31bf4 fixed ext/pcre internal stuff
Now only the flaw is pcrelib itself as it works with int for
string length and offsets. Bigger stuff won't work anyway, but
if there are some issue there are just a few places like pcre_exec()
where we can explicitly cast to int.
2013-08-23 06:37:51 -07:00
Anatol Belski 6b474bbcf6 adapted all the function arg formats in ext/zlib 2013-08-23 04:21:02 -07:00
Anatol Belski 03bee19890 some more fixes to zend operators 2013-08-23 04:03:21 -07:00
Anatol Belski ba52352363 added ZEND_INT_FMT 2013-08-23 03:32:35 -07:00
Anatol Belski 3cbf45c510 some fixes to constants, var_dump and var_export 2013-08-23 02:34:14 -07:00
Anatol Belski 262de5d054 first fixes to ext/spl, yet incomplete 2013-08-23 01:56:16 -07:00
Anatol Belski ff233b591c fixes to reflection 2013-08-23 01:26:17 -07:00
Anatol Belski 3aed22ae8e fixes to ereg 2013-08-23 01:14:02 -07:00
Anatol Belski ebd2fc6b3f more fixes to ext/date 2013-08-23 01:08:35 -07:00
Anatol Belski 427cde5da6 replaced arg formats in pcre 2013-08-23 00:56:10 -07:00
Anatol Belski 570adc16e7 fixed sapi.h 2013-08-22 11:02:24 -07:00
Anatol Belski aae79a684d replaced all arg formats in ext/standard 2013-08-22 10:51:29 -07:00
Anatol Belski 0f892ce613 replaced all the int params in the datetime 2013-08-22 09:38:05 -07:00
Anatol Belski 261938b5e0 Merge branch 'string_size_refactor_take_2' into str_size_and_int64
Conflicts:
	ext/standard/string.c
2013-08-22 09:13:46 -07:00
Anatol Belski 5efaa8f7b9 adapted the function args for ereg
And that actually seems to be it, all tests pass so far. So lets
see how it goes in the fture, too easy but seems to be done for now .
2013-08-22 08:45:08 -07:00
Anatol Belski 320e82b603 trivial fix spl_autoload_functions() 2013-08-22 06:48:55 -07:00
Anatol Belski bfb0e87e2b final fix for hebrev() 2013-08-22 06:06:24 -07:00
Anatol Belski 5351aa9ac1 Merge branch 'string_size_refactor_take_2' of https://github.com/weltling/php-src into string_size_refactor_take_2 2013-08-22 03:45:28 -07:00
Anatol Belski 569cbd2081 fix build 2013-08-22 03:59:09 -07:00
Anatol Belski 764054c2eb Merge branch 'master' of https://github.com/php/php-src into string_size_refactor_take_2 2013-08-22 01:40:20 -07:00
Anatol Belski 5c6428b0b9 fixed file_put_contents() 2013-08-22 01:27:08 -07:00
Anatol Belski ea56c2dcfd fixed fwrite 2013-08-22 00:54:45 -07:00
Anatol Belski 09c3b6c1b6 fixed "s" vs "S" for soundex 2013-08-22 00:45:16 -07:00
Anatol Belski bda11c6bd2 partial fix to hebrev 2013-08-21 04:30:54 -07:00
Anatol Belski c8fbe078a1 fixed unpack() 2013-08-21 03:54:13 -07:00
Anatol Belski 2d44a04a83 fixed str_pad() 2013-08-21 01:35:40 -07:00
Anatol Belski d6c59e1d7e lost condition 2013-08-21 00:33:47 -07:00
Anatol Belski e2070d1409 Merge branch 'master' of https://github.com/php/php-src into string_size_refactor_take_2 2013-08-21 00:28:43 -07:00
Anatol Belski d871982507 Merge branch 'string_size_refactor_take_2' of https://github.com/ircmaxell/php-src into string_size_refactor_take_2 2013-08-21 00:28:19 -07:00
Anatol Belski c8acebe674 fixed str_split() 2013-08-21 00:27:07 -07:00
Anthony Ferrara dc29937050 Merge pull request #5 from weltling/string_size_refactor_take_2
String size refactor take 2, partial fixes to ext/standard
2013-08-17 12:42:52 -07:00
Anatol Belski 91ceb295da Fixed substr(), but no kidding now.
all the signed/unsigned arithmetic needs clear understanding
2013-08-17 10:10:15 -07:00
Anatol Belski 99442a301d small correction to substr 2013-08-17 04:22:09 -07:00
Anatol Belski 6b067db5fb fixed strstr() 2013-08-17 03:53:07 -07:00
Anatol Belski 5c754227a7 fixed substr() 2013-08-16 08:10:14 -07:00
Anatol Belski a7a797b455 adapted all the zend_parse_parameters() calls 2013-08-16 02:37:08 -07:00
Anatol Belski 715b040f46 Merge branch 'master' of https://github.com/php/php-src into string_size_refactor_take_2
Conflicts:
	Zend/zend_exceptions.c
	ext/date/php_date.c
	ext/standard/string.c
	ext/standard/url_scanner_ex.c
	ext/standard/url_scanner_ex.re
	main/rfc1867.c
2013-08-16 01:45:50 -07:00
Anatol Belski 1e53ccdf7a fixed merge mistake 2013-08-13 07:59:56 -07:00
Anthony Ferrara 221b9d44a8 Merge pull request #4 from weltling/string_size_refactor_take_2
String size refactor take 2
2013-08-13 07:36:50 -07:00
Anatol Belski 0773ab461e changes to dns.c 2013-08-13 01:26:05 -07:00
Anatol Belski ccf2069c18 Merge branch 'string_size_refactor_take_2' into str_size_and_int64
Conflicts:
	Zend/zend_constants.h
2013-08-13 01:10:09 -07:00
Anatol Belski 6478088a2c Merge branch 'master' of https://github.com/php/php-src into string_size_refactor_take_2
Conflicts:
	Zend/zend_operators.h
	main/SAPI.h
	main/rfc1867.c
	main/streams/php_stream_transport.h
	main/streams/streams.c
	main/streams/transports.c
	main/streams/xp_socket.c
2013-08-13 01:07:12 -07:00
Anatol Belski a95f8dbac2 fixes for types to ext/standard with types ... some stuff is broken now 2013-07-29 09:04:56 -07:00
Anatol Belski 88960bba1e more fixes to string.c 2013-07-29 04:50:47 -07:00
Anatol Belski 62c1f4127b more for cli sapi 2013-07-29 02:39:44 -07:00
Anatol Belski cd955c183b fixes to main/ 2013-07-29 02:16:39 -07:00
Anatol Belski dc0b9d716e Merge branch 'master' of https://github.com/php/php-src into string_size_refactor_take_2
Conflicts:
	Zend/zend_constants.h
	ext/standard/info.c
2013-07-29 01:47:45 -07:00
Anatol Belski 03cae613f0 fixes after merging master 2013-07-18 03:53:51 -07:00
Anatol Belski 9f177207fc Merge branch 'string_size_refactor_take_2' into str_size_and_int64 2013-07-18 03:22:12 -07:00
Anatol Belski 46e07a6fd7 Merge branch 'master' of https://github.com/php/php-src into string_size_refactor_take_2
Conflicts:
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2013-07-18 03:20:13 -07:00
Anatol Belski 231eaa3919 Fixes for sizeof int 2013-07-18 02:58:55 -07:00
Anatol Belski 13cb1b7e4a made lang scanner use zend_int.h and regenerated it 2013-07-18 02:52:15 -07:00
Anatol Belski 4bcc5a87d7 added zend_int.h to zend*.dsp 2013-07-18 01:09:03 -07:00
Anatol Belski 0605bebdb6 adjusted zend_types.h 2013-07-18 01:05:27 -07:00
Anatol Belski ec0300ec25 added zend_int.h 2013-07-18 01:04:37 -07:00
Anatol Belski 8b8f7d4a5a the very first porting try, many things not worky 2013-07-17 09:48:13 -07:00
Anatol Belski a5302f286e Merge branch 'string_size_refactor_take_2' into str_size_and_int64
* string_size_refactor_take_2:
  fixes to zend
  more fixes to streams
  fixes to SAPI.c
  fixes to plain stream wrapper
  fixes to xp_socket.c
  fixes to zend_ini and output
2013-07-17 09:24:21 -07:00
Anatol Belski d4c546b956 fixes to zend 2013-07-17 09:11:51 -07:00
Anatol Belski 9703f57bd1 more fixes to streams 2013-07-17 06:30:28 -07:00
Anatol Belski cc3ec2936c fixes to SAPI.c 2013-07-17 06:06:35 -07:00
Anatol Belski 06fe769905 fixes to plain stream wrapper 2013-07-17 05:50:33 -07:00
Anatol Belski c292a18514 fixes to xp_socket.c 2013-07-17 04:53:56 -07:00
Anatol Belski eb5ab08267 fixes to zend_ini and output 2013-07-17 03:31:17 -07:00
Anthony Ferrara 6bd00eda6b Merge pull request #2 from weltling/string_size_refactor_take_2
Fixes by the end of the day
2013-07-15 09:36:03 -07:00
Anatol Belski 5ae81ec123 fix uuencode 2013-07-11 08:12:30 -07:00
Anatol Belski 8f7abf4371 fix base64 stuff 2013-07-11 07:02:58 -07:00
Anatol Belski e17ef23c2c fixes to url processing stuff 2013-07-11 06:57:22 -07:00
Anatol Belski a9b623aa0b huge fix to spl and more 2013-07-11 05:37:09 -07:00
Anatol Belski 7331e4c9c8 Merge branch 'master' of https://github.com/php/php-src into string_size_refactor_take_2 2013-07-11 03:00:30 -07:00
Anatol Belski 42c8f29277 fix 's' vs 'S' for datetime 2013-07-11 02:58:53 -07:00
Anatol Belski 59d95c1537 Merge branch 'master' of https://github.com/php/php-src into string_size_refactor_take_2 2013-07-10 01:09:28 -07:00
Anatol Belski 309d3b512e Merge branch 'string_size_refactor_take_2' of https://github.com/ircmaxell/php-src into string_size_refactor_take_2 2013-07-10 01:09:01 -07:00
Anatol Belski 03ed6fc0b1 string sze_t fix for internal strings 2013-07-10 00:43:19 -07:00
Anatol Belski acd85d48f0 strig size_t fixes to zend_alloc.* 2013-07-09 06:13:08 -07:00
Anthony Ferrara 3744ff7c18 Merge pull request #1 from weltling/string_size_refactor_take_2
windows fixes
2013-07-05 05:26:40 -07:00
Anatol Belski 8db3e3738c trivial fixes to ext\standard 2013-07-04 09:35:05 -07:00
Anatol Belski bf18c56fb7 trivial fixes to spl 2013-07-04 08:50:58 -07:00
Anatol Belski 890345eda0 fix spl_autoload_* 2013-07-04 06:41:48 -07:00
Anatol Belski ca0e018c95 windows fixes 2013-07-04 04:27:40 -07:00
Anthony Ferrara f4c4fe417a Get core test suite to really pass, fully. Woot 2013-07-02 11:51:45 -04:00
Anthony Ferrara 3db6b5112f Get basic language tests to all pass (minus xfails) 2013-07-02 11:27:48 -04:00
Anthony Ferrara 91abad1e1b Better test coverage 2013-07-02 10:20:01 -04:00
Anthony Ferrara 6e008d40c2 It compiles. Sort-of. In a way. Yeah. But nothing works. Sigh 2013-07-02 09:46:30 -04:00
Gernot Vormayr a90a93f1a4 Add apparmor change hat functionality to fpm 2013-07-02 13:06:02 +02:00
Anthony Ferrara 66845fb6a5 More work, get strings working, sort-of... 2013-07-01 17:59:11 -04:00
Anthony Ferrara 89aea2f103 Refactor file.c to use new string types 2013-07-01 17:15:25 -04:00
Anthony Ferrara ea58b542d6 Re-do a lot of it using a conditional define, and legacy type information for APIs 2013-07-01 16:53:54 -04:00
Jefersson Nathan 89a657f80a Fixed identation on file 2013-04-23 08:24:15 -03:00
1713 changed files with 176454 additions and 123057 deletions

No files matched your search

+4
View File
@@ -22,6 +22,10 @@ sapi/nsapi/nsapi.c ident
sapi/continuity/capi.c ident
Zend/RFCs/002.txt ident
Zend/RFCs/003.txt ident
ext/exif/exif.c ident
ext/ldap/ldap.c ident
ext/pdo_pgsql/pdo_pgsql.c ident
ext/tidy/tidy.c ident
NEWS merge=NEWS
UPGRADING merge=NEWS
UPGRADING.INTERNALS merge=NEWS
+2
View File
@@ -246,6 +246,8 @@ sapi/fpm/php-fpm.1
sapi/fpm/init.d.php-fpm
sapi/fpm/php-fpm.conf
sapi/fpm/fpm/php-cgi
sapi/phpdbg/phpdbg_parser.c
sapi/phpdbg/phpdbg_parser.h
sapi/phpdbg/phpdbg
scripts/php-config
scripts/phpize
+17 -3
View File
@@ -5,7 +5,11 @@ php:
- 5.4
notifications:
email: false
email:
on_failure: change
cache:
- apt
env:
global:
@@ -15,8 +19,16 @@ env:
- PDO_MYSQL_TEST_USER=travis
- PDO_MYSQL_TEST_PASS=
- PDO_MYSQL_TEST_HOST=127.0.0.1
matrix:
- REPORT_EXIT_STATUS=1
matrix:
- ENABLE_MAINTAINER_ZTS=0 ENABLE_DEBUG=0
- ENABLE_MAINTAINER_ZTS=1 ENABLE_DEBUG=1
before_install:
- sudo apt-get update -qq
- sudo apt-get install -y libenchant-dev libaspell-dev libpspell-dev librecode-dev
- sudo cp ./travis/de /var/lib/locales/supported.d/de
- sudo dpkg-reconfigure locales
before_script:
# Compile PHP
@@ -29,4 +41,6 @@ before_script:
- . ./travis/ext/pdo_pgsql/setup.sh
# Run PHPs run-tests.php
script: ./sapi/cli/php run-tests.php -p `pwd`/sapi/cli/php -g "FAIL,XFAIL,BORK,WARN,LEAK,SKIP" --show-diff --set-timeout 120
script:
- ./sapi/cli/php run-tests.php -p `pwd`/sapi/cli/php -g "FAIL,XFAIL,BORK,WARN,LEAK,SKIP" --show-diff --set-timeout 120
- ./sapi/cli/php sapi/phpdbg/tests/run-tests.php -diff2stdout --phpdbg sapi/phpdbg/phpdbg
+1 -1
View File
@@ -1,6 +1,6 @@
--------------------------------------------------------------------
The PHP License, version 3.01
Copyright (c) 1999 - 2012 The PHP Group. All rights reserved.
Copyright (c) 1999 - 2014 The PHP Group. All rights reserved.
--------------------------------------------------------------------
Redistribution and use in source and binary forms, with or without
+1 -1
View File
@@ -14,7 +14,7 @@ php_lcov.info: lcov-test
@rm -rf lcov_data/
@$(mkinstalldirs) lcov_data/
@echo
-@files=`find . -name \*.gcda -o -name \*.gcno -o -name \*.da -o -name \*.c -o -name \*.h | sed -e 's/^\.\///' | sed -e 's/\.gcda//g' -e 's/\.gcno//g' -e 's/\.da//g' | $(EGREP) $(LCOV_INCLUDE) | uniq` ;\
-@files=`find . -name \*.gcda -o -name \*.gcno -o -name \*.da -o -name \*.c -o -name \*.h | sed -e 's/^\.\///' | sed -e 's/\.gcda//g' -e 's/\.gcno//g' -e 's/\.da//g' | $(EGREP) $(LCOV_INCLUDE) | sed -e 's/.libs/zzzz/g' | sort | sed -e 's/zzzz/.libs/g' | uniq` ;\
for x in $$files; do \
echo -n . ;\
y=`echo $$x | sed -e 's!\.libs/!!'`; \
-1
View File
@@ -115,7 +115,6 @@ clean:
find . -name \*.la -o -name \*.a | xargs rm -f
find . -name \*.so | xargs rm -f
find . -name .libs -a -type d|xargs rm -rf
find . -name \*.1 | xargs rm -f
rm -f libphp$(PHP_MAJOR_VERSION).la $(SAPI_CLI_PATH) $(SAPI_CGI_PATH) $(SAPI_MILTER_PATH) $(SAPI_LITESPEED_PATH) $(SAPI_FPM_PATH) $(OVERALL_TARGET) modules/* libs/*
distclean: clean
+11 -124
View File
@@ -1,136 +1,23 @@
PHP NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
?? ??? 2014, PHP 5.6.0 Alpha 3
?? ??? 20??, PHP 5.7.0
13 Feb 2014, PHP 5.6.0 Alpha 2
- Core:
. Added T_POW (**) operator
(RFC: https://wiki.php.net/rfc/pow-operator). (Tjerk Meesters)
- mysqli
. Added new function mysqli_get_links_stats() as well as new INI variable
mysqli.rollback_on_cached_plink of type bool (Andrey)
- PCRE:
. Upgraded to PCRE 8.34. (Anatol)
23 Jan 2014, PHP 5.6.0 Alpha 1
- CLI server:
. Added some MIME types to the CLI web server. (Chris Jones)
. Refactor MIME type handling to use a hash table instead of linear search.
(Adam)
. Update the MIME type list from the one shipped by Apache HTTPD. (Adam)
- Core:
. Improved IS_VAR operands fetching. (Laruence, Dmitry)
. Improved empty string handling. Now ZE uses an interned string instead of
allocation new empty string each time. (Laruence, Dmitry)
. Implemented internal operator overloading
(RFC: https://wiki.php.net/rfc/operator_overloading_gmp). (Nikita)
. Made calls from incompatible context issue an E_DEPRECATED warning instead
of E_STRICT (phase 1 of RFC: https://wiki.php.net/rfc/incompat_ctx).
(Gustavo)
. Uploads equal or greater than 2GB in size are now accepted.
(Ralf Lang, Mike)
. Reduced POST data memory usage by 200-300%. Changed INI setting
always_populate_raw_post_data to throw a deprecation warning when enabling
and to accept -1 for never populating the $HTTP_RAW_POST_DATA global
variable, which will be the default in future PHP versions. (Mike)
. Implemented dedicated syntax for variadic functions
(RFC: https://wiki.php.net/rfc/variadics). (Nikita)
. Fixed bug #50333 Improving multi-threaded scalability by using
emalloc/efree/estrdup (Anatol, Dmitry)
. Implemented constant scalar expressions (with support for constants)
(RFC: https://wiki.php.net/rfc/const_scalar_exprs). (Bob)
. Fixed bug #65784 (Segfault with finally). (Laruence, Dmitry)
. Fixed bug #66509 (copy() arginfo has changed starting from 5.4). (willfitch)
. Added PHP_INT_MIN constant. (Andrea)
- cURL:
. Implemented FR #65646 (re-enable CURLOPT_FOLLOWLOCATION with open_basedir
or safe_mode). (Adam)
- GMP:
. Moved GMP to use object as the underlying structure and implemented various
improvements based on this.
(RFC: https://wiki.php.net/rfc/operator_overloading_gmp). (Nikita)
. Added gmp_root() and gmp_rootrem() functions for calculating nth roots.
(Nikita)
- Hash:
. Added gost-crypto (CryptoPro S-box) GOST hash algo. (Manuel Mausz)
- JSON:
. Fixed case part of bug #64874 ("json_decode handles whitespace and
case-sensitivity incorrectly")
- mysqlnd:
. Disabled flag for SP OUT variables for 5.5+ servers as they are not natively
supported by the overlying APIs. (Andrey)
- OPcache:
. Added an optimization of class constants and constant calls to some
internal functions (Laruence, Dmitry)
. Added an optimization pass to convert FCALL_BY_NAME into DO_FCALL.
(Laruence, Dmitry)
. Added an optimization pass to merged identical constants (and related
cache_slots) in op_array->literals table. (Laruence, Dmitry)
. Added script level constant replacement optimization pass. (Dmitry)
- Openssl:
. Added crypto_method option for the ssl stream context. (Martin Jansen)
. Added certificate fingerprint support. (Tjerk Meesters)
. Added explicit TLSv1.1 and TLSv1.2 stream transports. (Daniel Lowrey)
. Fixed bug #65729 (CN_match gives false positive). (Tjerk Meesters)
. Peer name verification matches SAN DNS names for certs using
the Subject Alternative Name x509 extension. (Daniel Lowrey)
. Fixed segfault when built against OpenSSL>=1.0.1 (Daniel Lowrey)
. Peer certificates now verified by default in client socket operations
(RFC: https://wiki.php.net/rfc/tls-peer-verification). (Daniel Lowrey)
. Added SPKAC support. (Jason Gerfen)
- PDO_pgsql:
. Fixed Bug #42614 (PDO_pgsql: add pg_get_notify support). (Matteo)
. Fixed Bug #63657 (pgsqlCopyFromFile, pgsqlCopyToArray use Postgres < 7.3
syntax). (Matteo)
- phpdbg:
. Included phpdbg sapi (RFC: https://wiki.php.net/rfc/phpdbg).
(Felipe Pena, Joe Watkins and Bob Weinand)
- pgsql:
. pg_version() returns full report which obtained by PQparameterStatus().
(Yasuo)
. Added pg_lo_truncate(). (Yasuo)
. Added 64bit large object support for PostgreSQL 9.3 and later. (Yasuo)
- Session:
. Fixed Bug #65315 (session.hash_function silently fallback to default md5)
(Yasuo)
. Implemented Request #54649 (Create session_serializer_name()). (Yasuo)
. Implemented Request #17860 (Session write short circuit). (Yasuo)
. Implemented Request #20421 (session_abort() and session_reset() function).
(Yasuo)
. Implemented Request #11100 (session_gc() function). (Yasuo)
- DBA:
. Fixed bug #62490 (dba_delete returns true on missing item (inifile)). (Mike)
- Standard:
. Implemented FR #65634 (HTTP wrapper is very slow with protocol_version
1.1). (Adam)
. Implemented Change crypt() behavior w/o salt RFC. (Yasuo)
https://wiki.php.net/rfc/crypt_function_salt
. Implemented request #49824 (Change array_fill() to allow creating empty
array). (Nikita)
. Removed call_user_method() and call_user_method_array() functions. (Kalle)
. Fix user session handlers (See rfc:session.user.return-value). (Sara)
- XMLReader:
. Fixed bug #55285 (XMLReader::getAttribute/No/Ns methods inconsistency).
(Mike)
- Zip:
. update libzip to version 1.11.2.
PHP don't use any ilibzip private symbol anymore. (Pierre, Remi)
. new method ZipArchive::setPassword($password). (Pierre)
. add --with-libzip option to build with system libzip. (Remi)
. new methods:
ZipArchive::setExternalAttributesName($name, $opsys, $attr [, $flags])
ZipArchive::setExternalAttributesIndex($idx, $opsys, $attr [, $flags])
ZipArchive::getExternalAttributesName($name, &$opsys, &$attr [, $flags])
ZipArchive::getExternalAttributesIndex($idx, &$opsys, &$attr [, $flags])
- XSL:
. Fixed bug #64776 (The XSLT extension is not thread safe). (Mike)
<<< NOTE: Insert NEWS from last stable release here prior to actual release! >>>
+35 -31
View File
@@ -58,13 +58,14 @@ Type specifiers
zend_fcall_info and zend_fcall_info_cache)
h - array (returned as HashTable*)
H - array or HASH_OF(object) (returned as HashTable*)
l - long (long)
L - long, limits out-of-range numbers to LONG_MAX/LONG_MIN (long)
i - php_int_t (zend_int_t), platform dependent
I - php_int_t, limits out-of-range numbers to ZEND_INT_MAX/ZEND_INT_MIN (zend_int_t),
platform dependent
o - object of any type (zval*)
O - object of specific type given by class entry (zval*, zend_class_entry)
p - valid path (string without null bytes in the middle) and its length (char*, int)
P - valid path (string without null bytes in the middle) and its length (char*, php_size_t)
r - resource (zval*)
s - string (with possible null bytes) and its length (char*, int)
S - string (with possible null bytes) and its length (char*, php_size_t)
z - the actual zval (zval*)
Z - the actual zval (zval**)
* - variable arguments list (0 or more)
@@ -79,30 +80,33 @@ Type specifiers
! - the parameter it follows can be of specified type or NULL. If NULL is
passed and the output for such type is a pointer, then the output
pointer is set to a native NULL pointer.
For 'b', 'l' and 'd', an extra argument of type zend_bool* must be
passed after the corresponding bool*, long* or double* arguments,
For 'b', 'i' and 'd', an extra argument of type zend_bool* must be
passed after the corresponding bool*, php_int_t* or double* arguments,
respectively. A non-zero value will be written to the zend_bool iif a
PHP NULL is passed.
Note on 64bit compatibility
---------------------------
Please do not forget that int and long are two different things on 64bit
OSes (int is 4 bytes and long is 8 bytes), so make sure you pass longs to "l"
and ints to strings length (i.e. for "s" you need to pass char * and int),
not the other way round!
Remember: "l" is the only case when you need to pass long (and that's why
it's "l", not "i" btw).
Please do not forget that php_int_t and php_size_t are platform dependent,
you can consult Zend/zend_int.h for which type exactly these are mapped to.
In previous versions, long was used for integers and int for string
sizes. Now make sure you pass php_int_t to "i" and php_size_t to strings length
(i.e. for "S" you need to pass char * and php_size_t), not the other way round!
Remember: "i" is the only case when you need to pass platform depnedent integer
(and that's why it's "i", not "l" anymore). The old formats 'l' and 's' aren't
supported anymore. Passing int instead of php_size_t, or long instead of
php_int_t is wrong.
Both mistakes cause memory corruptions and segfaults on 64bit OSes:
1)
char *str;
long str_len; /* XXX THIS IS WRONG!! Use int instead. */
zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &str, &str_len)
int str_len; /* XXX THIS IS WRONG!! Use php_size_t instead. */
zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "S", &str, &str_len)
2)
int num; /* XXX THIS IS WRONG!! Use long instead. */
zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "l", &num)
long num; /* XXX THIS IS WRONG!! Use php_int_t instead. */
zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "i", &num)
If you're in doubt, use check_parameters.php script to the parameters
and their types (it can be found in ./scripts/dev/ directory of PHP sources):
@@ -112,12 +116,12 @@ and their types (it can be found in ./scripts/dev/ directory of PHP sources):
Examples
--------
/* Gets a long, a string and its length, and a zval */
long l;
/* Gets a php_int_t, a string and its length, and a zval */
php_int_t i;
char *s;
int s_len;
php_size_t s_len;
zval *param;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "lsz",
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "iSz",
&l, &s, &s_len, &param) == FAILURE) {
return;
}
@@ -150,8 +154,8 @@ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "a/!",
return;
}
/* Get either a set of 3 longs or a string. */
long l1, l2, l3;
/* Get either a set of 3 php_int_t vars or a string. */
php_int_t i1, i2, i3;
char *s;
/*
* The function expects a pointer to a integer in this case, not a long
@@ -160,13 +164,13 @@ char *s;
* properly, leading to random crashes on platforms like
* Tru64 or Linux/Alpha.
*/
int length;
php_size_t length;
if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS() TSRMLS_CC,
"lll", &l1, &l2, &l3) == SUCCESS) {
/* manipulate longs */
"iii", &i1, &i2, &i3) == SUCCESS) {
/* manipulate php_int_t */
} else if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS() TSRMLS_CC,
"s", &s, &length) == SUCCESS) {
"S", &s, &length) == SUCCESS) {
/* manipulate string */
} else {
/* output error */
@@ -197,11 +201,11 @@ if (varargs) {
/* Function that accepts a string, followed by varargs (1 or more) */
char *str;
int str_len;
php_size_t str_len;
int i, num_varargs;
zval ***varargs = NULL;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s+", &str, &str_len, &varargs, &num_varargs) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "S+", &str, &str_len, &varargs, &num_varargs) == FAILURE) {
return;
}
@@ -214,13 +218,13 @@ if (varargs) {
}
/* Function that takes an array, followed by varargs, and ending with a long */
long num;
/* Function that takes an array, followed by varargs, and ending with a php_int_t */
php_int_t num;
zval *array;
int i, num_varargs;
zval ***varargs = NULL;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "a*l", &array, &varargs, &num_varargs, &num) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "a*i", &array, &varargs, &num_varargs, &num) == FAILURE) {
return;
}
+33 -20
View File
@@ -11,17 +11,27 @@ because the sysadmins can not upgrade stuff then.
2. Package two days before a release. So if the release is to be on Thursday,
package on Tuesday. Think about timezones as well.
3. Ensure that Windows builds will work before packaging
3. Ensure that the tests on Travis CI are green.
See: https://travis-ci.org/php/php-src/builds
It is recommended to do so a couple of days before the packaging day, to
have enough time to investigate failures, communicate with the authors and
commit the fixes.
The RM for the branch is also responsible for keeping the CI green on
ongoing bases between the releases. Check the CI status for your branch
periodically and resolve the failures ASAP. See more in:
https://wiki.php.net/rfc/travis_ci
4. Follow all steps to the letter. When unclear ask previous RM's (David/Julien/
4. Ensure that Windows builds will work before packaging
5. Follow all steps to the letter. When unclear ask previous RM's (David/Julien/
Johannes/Stas/Derick/Ilia) before proceeding. Ideally make sure that for the
first releases one of the previous RM's is around to answer questions. For the
steps related to the php/QA/bug websites try to have someone from the webmaster
team (Bjori) on hand.
5. Verify the tags to be extra sure everything was tagged properly.
6. Verify the tags to be extra sure everything was tagged properly.
6. Moving extensions from/to PECL requires write acces to the destination.
7. Moving extensions from/to PECL requires write acces to the destination.
Most developers should have this.
Moving extensions from php-src to PECL
@@ -48,47 +58,49 @@ Rolling a non stable release (alpha/beta/RC)
1. Check windows snapshot builder logs (http://windows.php.net/downloads/snaps/ the last revision)
2. run the "scripts/dev/credits" script in php-src and commit the changes in the
2. Check the tests at https://travis-ci.org/php/php-src/builds
3. run the "scripts/dev/credits" script in php-src and commit the changes in the
credits files in ext/standard.
3. Checkout the release branch for this release (e.g., PHP-5.4.2) from the main branch.
4. Checkout the release branch for this release (e.g., PHP-5.4.2) from the main branch.
4. Bump the version numbers in ``main/php_version.h``, ``configure.in`` and possibly ``NEWS``.
5. Bump the version numbers in ``main/php_version.h``, ``configure.in`` and possibly ``NEWS``.
Do not use abbreviations for alpha and beta. Do not use dashes, you should
``#define PHP_VERSION "5.4.22RC1"`` and not ``#define PHP_VERSION "5.4.22-RC1"``
5. Compile and make test, with and without ZTS, using the right Bison version
6. Compile and make test, with and without ZTS, using the right Bison version
(for example, for 5.5, Bison 2.4.1 is used)
6. Check ./sapi/cli/php -v output for version matching.
7. Check ./sapi/cli/php -v output for version matching.
7. If all is right, commit the changes to the release branch with ``git commit -a``.
8. If all is right, commit the changes to the release branch with ``git commit -a``.
8. Tag the repository release branch with the version, e.g.:
9. Tag the repository release branch with the version, e.g.:
``git tag -u YOURKEYID php-5.4.2RC2``
9. Bump the version numbers in ``main/php_version.h``, ``configure.in`` and ``NEWS``
10. Bump the version numbers in ``main/php_version.h``, ``configure.in`` and ``NEWS``
in the *main* branch (PHP-5.4 for example) to prepare for the **next** version.
F.e. if the RC is "5.4.1RC1" then the new one should be "5.4.2-dev" - regardless if we get
a new RC or not. This is to make sure ``version_compare()`` can correctly work.
Commit the changes to the main branch.
10. Push the changes to the main repo, the tag, the main branch and the release branch :
11. Push the changes to the main repo, the tag, the main branch and the release branch :
``git push --tags origin HEAD``
``git push origin {main branch}``
``git push origin {release branch}``
11. run: ``PHPROOT=. ./makedist 5.4.2RC2``, this will export the tree, create configure
12. run: ``PHPROOT=. ./makedist 5.4.2RC2``, this will export the tree, create configure
and build three tarballs (gz, bz2 and xz).
12. Copy those tarballs (scp, rsync) to downloads.php.net, in your homedir there should be a
13. Copy those tarballs (scp, rsync) to downloads.php.net, in your homedir there should be a
directory "downloads/". Copy them into there, so that the system can generate
MD5 sums. If you do not have this directory, talk to Derick or Dan.
13. Now the RC can be found on http://downloads.php.net/yourname,
14. Now the RC can be found on http://downloads.php.net/yourname,
f.e. http://downloads.php.net/derick/
14. Once the release has been tagged, contact the PHP Windows development team
15. Once the release has been tagged, contact the PHP Windows development team
(internals-win@lists.php.net) so that Windows binaries can be created. Once
those are made, they should be placed into the same directory as the source snapshots.
@@ -139,12 +151,13 @@ Rolling a stable release
1. Checkout your release branch, you should have created when releasing previous RC
and bump the version numbers in ``main/php_version.h``, ``configure.in`` and possibly ``NEWS``.
2. If a CVE commit needs to be merged to the release, then have it commited to
2. If a CVE commit needs to be merged to the release, then have it committed to
the base branches and merged upwards as usual (f.e commit the CVE fix to 5.3,
merge to 5.4, 5.5 etc...). Then you can cherry-pick it in your release branch.
Don't forget to update NEWS manually in an extra commit then.
3. Commit those changes
3. Commit those changes. Ensure the tests at https://travis-ci.org/php/php-src/builds are
still passing.
4. run the "scripts/dev/credits" script in php-src and commit the changes in the
credits files in ext/standard.
@@ -154,7 +167,7 @@ credits files in ext/standard.
6. Check ./sapi/cli/php -v output for version matching.
7. tag the repository with the version f.e. "``git tag -s php-5.4.1``"
7. tag the repository with the version f.e. "``git tag -u YOURKEYID -s php-5.4.1``"
8. Push the tag f.e. "``git push origin php-5.4.1``"
Executable → Regular
View File
File mode changed.
+1 -1
View File
@@ -64,7 +64,7 @@ typedef int ts_rsrc_id;
/* Define THREAD_T and MUTEX_T */
#ifdef TSRM_WIN32
# define THREAD_T DWORD
# define THREAD_T UINT_PTR
# define MUTEX_T CRITICAL_SECTION *
#elif defined(GNUPTH)
# define THREAD_T pth_t
+1 -1
View File
@@ -2,7 +2,7 @@
#define TSRM_CONFIG_COMMON_H
#ifndef __CYGWIN__
# if WINNT|WIN32
# ifdef _WIN32
# define TSRM_WIN32
# endif
#endif
Executable → Regular
+41 -141
View File
@@ -4,181 +4,81 @@ PHP X.Y UPGRADE NOTES
1. Backward Incompatible Changes
2. New Features
2. Changes in SAPI modules
3. Deprecated Functionality
4. Changed Functions
5. New Functions
6. New Classes and Interfaces
7. Removed Extensions
8. Other Changes to Extensions
9. New Global Constants
10. Changes to INI File Handling
11. Other Changes
3. Changes in SAPI modules
4. Deprecated Functionality
5. Changed Functions
6. New Functions
7. New Classes and Interfaces
8. Removed Extensions
9. Other Changes to Extensions
10. New Global Constants
11. Changes to INI File Handling
12. Other Changes
========================================
1. Backward Incompatible Changes
========================================
- JSON:
json_decode() no longer accepts non-lowercase variants of lone JSON true,
false or null values. For example, True or FALSE will now cause json_decode to
return NULL and set an error value you can fetch with json_last_error().
This affects JSON texts consisting solely of true, false or null. Text
containing non-lowercase values inside JSON arrays or objects has never been
accepted.
- openssl:
To prevent Man-in-the-Middle attacks against encrypted transfers client
streams now verify peer certificates by default. Previous versions
required users to manually enable peer verification. As a result of this
change, existing code using ssl:// or tls:// stream wrappers (e.g.
file_get_contents(), fsockopen(), stream_socket_client()) may no longer
connect successfully without manually disabling peer verification via the
stream context's "verify_peer" setting. Encrypted transfers delegate to
operating system certificate stores by default, so many/most users *should*
be unaffected by this transparent security enhancement.
- DBA
. dba_delete() now returns false if the key was not found for the inifile
handler, too.
========================================
2. New Features
========================================
- Added constant scalar expressions syntax.
(https://wiki.php.net/rfc/const_scalar_exprs)
- Added dedicated syntax for variadic functions.
(https://wiki.php.net/rfc/variadics)
- Added support for argument unpacking to complement the variadic syntax.
(https://wiki.php.net/rfc/argument_unpacking)
- Added T_POW (**) operator.
(https://wiki.php.net/rfc/pow-operator)
- The php://input stream is now re-usable and can be used concurrently with
enable_post_data_reading=0.
- Added gost-crypto (CryptoPro S-box) hash algo.
- Added openssl certificate fingerprint support (inclusive stream context
option).
- Added openssl crypto method stream context option.
- Added openssl peer verification support for SAN x509 extension
- Added use function and use const.
(https://wiki.php.net/rfc/use_function)
========================================
2. Changes in SAPI modules
========================================
- Added phpdbg sapi.
(https://wiki.php.net/rfc/phpdbg)
========================================
3. Deprecated Functionality
========================================
- Incompatible context calls:
Instance calls from an incompatible context are now deprecated and issue
E_DEPRECATED instead of E_STRICT. See https://wiki.php.net/rfc/incompat_ctx
========================================
4. Changed Functions
========================================
- cURL:
CURLOPT_SAFE_UPLOAD is now turned on by default and uploads with @file
do not work unless it is explicitly set to false.
- Crypt:
crypt() will now raise an E_NOTICE error if the salt parameter is omitted.
See: https://wiki.php.net/rfc/crypt_function_salt
- XMLReader:
XMLReader::getAttributeNs and XMLReader::getAttributeNo now return NULL if
the attribute could not be found, just like XMLReader::getAttribute.
========================================
5. New Functions
========================================
- GMP:
Added gmp_root($a, $nth) and gmp_rootrem($a, $nth) for calculating nth roots.
- Openssl:
Added string openssl_x509_fingerprint($x509, $type, $binary).
Added string openssl_spki_new($private_key, $challenge, $algorithm)
Added bool openssl_spki_verify($spkac)
Added string openssl_spki_export($spkac)
Added string openssl_spki_export_challenge($spkac)
- LDAP:
Added ldap_escape($value, $ignore = "", $flags = 0).
- Zip:
Added ZipArchive::setPassword($password)
========================================
6. New Classes and Interfaces
3. Changes in SAPI modules
========================================
========================================
7. Removed Extensions
4. Deprecated Functionality
========================================
========================================
8. Other Changes to Extensions
5. Changed Functions
========================================
- GMP:
The GMP extension now uses objects as the underlying data structure, rather
than resources. GMP instances now support dumping, serialization, cloning,
casts to primitive types and have overloaded operators.
(RFC: https://wiki.php.net/rfc/operator_overloading_gmp)
- OCI8:
- Added Implicit Result Set support for Oracle Database 12c with a
new oci_get_implicit_resultset() function.
- Using 'oci_execute($s, OCI_NO_AUTO_COMMIT)' for a SELECT no longer
unnecessarily initiates an internal ROLLBACK during connection
close.
- Added DTrace probes enabled with PHP's generic --enable-dtrace
- The oci_internal_debug() function is now a no-op.
- The phpinfo() output format for OCI8 has changed.
========================================
9. New Global Constants
6. New Functions
========================================
- LDAP:
LDAP_ESCAPE_FILTER int(1)
LDAP_ESCAPE_DN int(2)
========================================
10. Changes to INI File Handling
7. New Classes and Interfaces
========================================
- Core:
Changed always_populate_raw_post_data to throw a deprecation warning when
enabled and to recognize ohe value -1 for never populating the global
$HTTP_RAW_POST_DATA variable, which will be default in future PHP versions.
========================================
11. Other Changes
8. Removed Extensions
========================================
- File upload:
Uploads equal or greater than 2GB in size are now accepted.
- HTTP stream wrapper:
HTTP 1.1 requests now include a Connection: close header unless explicitly
overridden by setting a Connection header via the header context option.
========================================
9. Other Changes to Extensions
========================================
- Zip:
New --with-libzip option allow to use system libzip. Version > 0.11 required,
Version >= 0.11.2 recommended for all features.
========================================
10. New Global Constants
========================================
- Core
, PHP_INT_MIN added.
========================================
11. Changes to INI File Handling
========================================
========================================
12. Other Changes
========================================
- Standard
. call_user_method() and call_user_method_array() no longer exists.
+1 -98
View File
@@ -17,108 +17,11 @@ UPGRADE NOTES - PHP X.Y
1. Internal API changes
========================
a. Addition of do_operation and compare object handlers
a. zend_set_memory_limit() now takes the TSRMLS_CC macro as its last argument
Two new object handlers have been added:
do_operation:
typedef int (*zend_object_do_operation_t)(
zend_uchar opcode, zval *result, zval *op1, zval *op2 TSRMLS_DC
);
compare:
typedef int (*zend_object_compare_zvals_t)(
zval *result, zval *op1, zval *op2 TSRMLS_DC
);
The first handler is used to overload arithmetic operations. The first
argument specifies the opcode of the operator, result is the target zval,
op1 the first operand and op2 the second operand. For unary operations
op2 is NULL. If the handler returns FAILURE PHP falls back to the default
behavior for the operation.
The second handler is used to perform comparison operations with
non-objects. The value written into result must be an IS_LONG with value
-1 (smaller), 0 (equal) or 1 (greater). The return value is a SUCCESS/FAILURE
return code. The difference between this handler and compare_objects is
that it will be triggered for comparisons with non-objects and objects of
different types. It takes precedence over compare_objects.
Further docs in the RFC: https://wiki.php.net/rfc/operator_overloading_gmp
b. return_value_ptr now always available, RETVAL_ZVAL_FAST macros
The return_value_ptr argument to internal functions is now always set.
Previously it was only available for functions returning by-reference.
return_value_ptr can now be used to return zvals without copying them.
For this purpose two new macros are provided:
RETVAL_ZVAL_FAST(zv); /* analog to RETVAL_ZVAL(zv, 1, 0) */
RETURN_ZVAL_FAST(zv); /* analog to RETURN_ZVAL(zv, 1, 0) */
The macros behave similarly to the non-FAST variants with copy=1 and
dtor=0, but will try to return the zval without making a copy by utilizing
return_value_ptr.
c. POST data handling
The sapi_request_info's members post_data, post_data_len and raw_post_data as
well as raw_post_data_len have been replaced with a temp PHP stream
request_body.
The recommended way to access raw POST data is to open and use a php://input
stream wrapper. It is safe to be used concurrently and more than once.
d. Arginfo changes
The pass_rest_by_reference argument of the ZEND_BEGIN_ARG_INFO and
ZEND_BEGIN_ARG_INFO_EX() is no longer used. The value passed to it is ignored.
Instead a variadic argument is created using ZEND_ARG_VARIADIC_INFO():
ZEND_ARG_VARIADIC_INFO(0, name) /* pass rest by value */
ZEND_ARG_VARIADIC_INFO(1, name) /* pass rest by reference */
ZEND_ARG_VARIADIC_INFO(ZEND_SEND_PREFER_REF, name)
/* pass rest by prefer-ref */
ZEND_ARG_VARIADIC_INFO() should only be used for the last argument.
The following changes were applied to the zend_arg_info struct:
typedef struct _zend_arg_info {
const char *class_name;
zend_uint class_name_len;
zend_uchar type_hint;
+ zend_uchar pass_by_reference;
zend_bool allow_null;
- zend_bool pass_by_reference;
+ zend_bool is_variadic;
} zend_arg_info;
The following changes were applied to the zend_internal_function_info struct:
typedef struct _zend_internal_function_info {
zend_uint required_num_args;
zend_uchar _type_hint;
zend_bool return_reference;
- zend_bool pass_rest_by_reference;
+ zend_bool _allow_null;
+ zend_bool _is_variadic;
} zend_internal_function_info;
The CHECK_ARG_SEND_TYPE(), ARG_MUST_BE_SENT_BY_REF(),
ARG_SHOULD_BE_SENT_BY_REF() and ARG_MAY_BE_SENT_BY_REF() macros now assume
that the argument passed to them is a zend_function* and that it is non-NULL.
========================
2. Build system changes
========================
a. Unix build system changes
- The bison version check is now a blacklist instead of a whitelist.
- The bison binary can be specified through the YACC environment/configure
variable. Previously `bison` was assumed to be in $PATH.
b. Windows build system changes
-
+4
View File
@@ -375,6 +375,10 @@ SOURCE=.\zend_istdiostream.h
# End Source File
# Begin Source File
SOURCE=.\zend_int.h
# End Source File
# Begin Source File
SOURCE=".\zend_language_parser.h"
# End Source File
# Begin Source File
+1 -1
View File
@@ -130,7 +130,7 @@ int main()
exit(1);
}
], [
AC_DEFINE([ZEND_DVAL_TO_LVAL_CAST_OK], 1, [Define if double cast to long preserves least significant bits])
AC_DEFINE([ZEND_DVAL_TO_IVAL_CAST_OK], 1, [Define if double cast to long preserves least significant bits])
AC_MSG_RESULT(yes)
], [
AC_MSG_RESULT(no)
+4
View File
@@ -405,6 +405,10 @@ SOURCE=.\zend_iterators.h
# End Source File
# Begin Source File
SOURCE=.\zend_int.h
# End Source File
# Begin Source File
SOURCE=".\zend_language_parser.h"
# End Source File
# Begin Source File
+11
View File
@@ -0,0 +1,11 @@
--TEST--
Bug #67468 (Segfault in highlight_file()/highlight_string())
--SKIPIF--
<?php if(!function_exists("leak")) print "skip only for debug builds"; ?>
--FILE--
<?php
highlight_string("<?php __CLASS__;", true);
echo "done";
?>
--EXPECT--
done
+5 -9
View File
@@ -30,12 +30,12 @@ test(...getArray([1, 2, 3]));
test(...arrayGen([]));
test(...arrayGen([1, 2, 3]));
test(1, ...[2, 3], ...[4, 5], 6);
test(1, ...getArray([2, 3]), ...arrayGen([4, 5]), 6);
test(1, ...[2, 3], ...[4, 5]);
test(1, ...getArray([2, 3]), ...arrayGen([4, 5]));
test2(...[1, 2]);
test2(...[1, 2, 3]);
test2(...[1], ...[], ...[], ...[2, 3], 4, ...[5, 6]);
test2(...[1], ...[], ...[], ...[2, 3], ...[4, 5]);
?>
--EXPECT--
@@ -75,7 +75,7 @@ array(3) {
[2]=>
int(3)
}
array(6) {
array(5) {
[0]=>
int(1)
[1]=>
@@ -86,10 +86,8 @@ array(6) {
int(4)
[4]=>
int(5)
[5]=>
int(6)
}
array(6) {
array(5) {
[0]=>
int(1)
[1]=>
@@ -100,8 +98,6 @@ array(6) {
int(4)
[4]=>
int(5)
[5]=>
int(6)
}
int(1)
int(2)
+67 -71
View File
@@ -17,46 +17,37 @@ $array = [1, 2, 3];
test1(...$array);
var_dump($array);
$array1 = [1, 2]; $val2 = 3; $array2 = [4, 5];
test1(...$array1, $val2, ...$array2);
var_dump($array1, $val2, $array2);
$array1 = [1, 2]; $array2 = [3, 4];
test1(...$array1, ...$array2);
var_dump($array1, $array2);
function test2($val1, &$ref1, $val2, &$ref2) {
$ref1++;
$ref2++;
}
$array = [1, 2, 3, 4];
$array = [0, 0, 0, 0];
test2(...$array);
var_dump($array);
$array1 = [1, 2]; $array2 = [4, 5];
test1(...$array1, ...$array2);
var_dump($array1, $array2);
$a = $b = $c = $d = 0;
$array = [0, 0, 0, 0];
$array = [];
test2(...$array, $a, $b, $c, $d);
var_dump($array, $a, $b, $c, $d);
test2($a, ...$array);
var_dump($a, $array);
$array = [1];
test2(...$array, $a, $b, $c, $d);
var_dump($array, $a, $b, $c, $d);
test2($a, $b, ...$array);
var_dump($a, $b, $array);
$array = [1, 2];
test2(...$array, $a, $b, $c, $d);
var_dump($array, $a, $b, $c, $d);
test2($a, $b, $c, ...$array);
var_dump($a, $b, $c, $array);
$array = [1, 2, 3];
test2(...$array, $a, $b, $c, $d);
var_dump($array, $a, $b, $c, $d);
$vars = [];
$array = [];
test2(...$array, $vars['a'], $vars['b'], $vars['c'], $vars['d']);
var_dump($vars);
$vars = [];
$array = [1];
test2(...$array, $vars['a'], $vars['b'], $vars['c'], $vars['d']);
var_dump($vars);
test2($a, $b, $c, $d, ...$array);
var_dump($a, $b, $c, $d, $array);
?>
--EXPECTF--
@@ -74,76 +65,81 @@ array(2) {
[1]=>
int(3)
}
int(4)
array(2) {
[0]=>
int(4)
[1]=>
int(5)
}
array(4) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(0)
[3]=>
int(1)
}
array(2) {
[0]=>
int(2)
[1]=>
int(3)
}
array(2) {
[0]=>
int(5)
[1]=>
int(6)
}
int(0)
array(4) {
[0]=>
int(1)
[1]=>
int(3)
int(0)
[2]=>
int(3)
int(1)
[3]=>
int(5)
}
array(0) {
int(0)
}
int(0)
int(1)
int(0)
int(1)
array(1) {
[0]=>
int(1)
}
int(1)
int(1)
int(1)
int(1)
array(2) {
array(4) {
[0]=>
int(1)
[1]=>
int(3)
}
int(1)
int(2)
int(1)
int(1)
array(3) {
[0]=>
int(1)
[1]=>
int(3)
[2]=>
int(3)
int(1)
[3]=>
int(0)
}
int(0)
int(2)
int(2)
int(1)
int(1)
Notice: Undefined index: a in %s on line %d
Notice: Undefined index: c in %s on line %d
array(2) {
["b"]=>
int(0)
array(4) {
[0]=>
int(2)
[1]=>
int(1)
["d"]=>
[2]=>
int(1)
[3]=>
int(0)
}
Notice: Undefined index: b in %s on line %d
Notice: Undefined index: d in %s on line %d
array(2) {
["a"]=>
int(0)
int(3)
int(0)
int(1)
array(4) {
[0]=>
int(2)
[1]=>
int(1)
["c"]=>
[2]=>
int(1)
[3]=>
int(0)
}
+1 -1
View File
@@ -9,7 +9,7 @@ $fn = function(...$args) {
$fn(...[]);
$fn(...[1, 2, 3]);
$fn(1, ...[2, 3], ...[], 4, 5);
$fn(1, ...[2, 3], ...[], ...[4, 5]);
?>
--EXPECT--
+1 -1
View File
@@ -12,7 +12,7 @@ test(...42);
test(...new stdClass);
test(1, 2, 3, ..."foo", ...[4, 5]);
test(1, 2, ...new StdClass, 3, ...3.14, ...[4, 5]);
test(1, 2, 3, ...new StdClass, ...3.14, ...[4, 5]);
?>
--EXPECTF--
+1 -14
View File
@@ -14,8 +14,7 @@ class Foo {
}
$foo = new Foo;
$foo->test(...[1, 2], 3, 4, ...[], 5);
Foo::test2(1, 2, ...[3, 4], ...[], 5);
Foo::test2(1, 2, ...[3, 4], ...[], ...[5]);
?>
--EXPECT--
@@ -31,15 +30,3 @@ array(5) {
[4]=>
int(5)
}
array(5) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
int(4)
[4]=>
int(5)
}
+2 -6
View File
@@ -11,7 +11,7 @@ class Foo {
new Foo(...[]);
new Foo(...[1, 2, 3]);
new Foo(...[1], 2, ...[], ...[3, 4], 5);
new Foo(...[1], ...[], ...[2, 3]);
?>
--EXPECT--
@@ -25,15 +25,11 @@ array(3) {
[2]=>
int(3)
}
array(5) {
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
int(4)
[4]=>
int(5)
}
@@ -0,0 +1,10 @@
--TEST--
Positional arguments cannot be used after argument unpacking
--FILE--
<?php
var_dump(...[1, 2, 3], 4);
?>
--EXPECTF--
Fatal error: Cannot use positional argument after argument unpacking in %s on line %d
@@ -20,11 +20,11 @@ function gen() {
}
try {
test(1, 2, ...new Foo, 3, 4);
test(1, 2, ...new Foo, ...[3, 4]);
} catch (Exception $e) { var_dump($e->getMessage()); }
try {
test(1, 2, ...gen(), 3, 4);
test(1, 2, ...gen(), ...[3, 4]);
} catch (Exception $e) { var_dump($e->getMessage()); }
?>
@@ -13,8 +13,6 @@ function gen($array) {
}
}
test(...gen([1, 2, 3]), $a);
var_dump($a);
test(1, 2, 3, $b, ...gen([4, 5, 6]));
var_dump($b);
@@ -25,7 +23,6 @@ test(...gen([1, 2]), ...gen([3, 4]));
?>
--EXPECTF--
int(42)
int(42)
Warning: Cannot pass by-reference argument 4 of test() by unpacking a Traversable, passing by-value instead in %s on line %d
+30
View File
@@ -0,0 +1,30 @@
--TEST--
Bug #66015 (wrong array indexing in class's static property)
--FILE--
<?php
class Test
{
const FIRST = 1;
const SECOND = 2;
const THIRD = 3;
protected static $array = [
self::FIRST => 'first',
'second',
'third'
];
public function __construct()
{
var_export(self::$array);
}
}
$test = new Test();
?>
--EXPECTF--
array (
1 => 'first',
2 => 'second',
3 => 'third',
)
+73
View File
@@ -0,0 +1,73 @@
--TEST--
Bug #66608 (Incorrect behavior with nested "finally" blocks)
--FILE--
<?php
function bar() {
try {
echo "1\n";
try {
} finally {
try {
} finally {
}
echo "2\n";
}
} finally {
try {
throw new Exception ("");
} catch (Exception $ab) {
echo "3\n";
} finally {
try {
} finally {
echo "4\n";
try {
} finally {
}
echo "5\n";
}
}
echo "6\n";
try {
} finally {
while (1) {
try {
echo "7\n";
break;
} finally {
echo "8\n";
}
echo "bad";
}
echo "9\n";
while (1) {
try {
throw new Exception("");
} catch(Exception $e) {
echo "10\n";
break;
} finally {
echo "11\n";
}
echo "bak\n";
}
}
echo "12\n";
}
echo "13\n";
}
bar();
--EXPECT--
1
2
3
4
5
6
7
8
9
10
11
12
13
+13
View File
@@ -0,0 +1,13 @@
--TEST--
Bug #66660 (Composer.phar install/update fails)
--STDIN--
<?php __CLASS__ ?>
--FILE--
<?php
file_put_contents(__DIR__."/bug66660.tmp.php", "<?php __CLASS__ ?>");
echo php_strip_whitespace(__DIR__."/bug66660.tmp.php");
?>
--CLEAN--
<?php unlink(__DIR__."/bug66660.tmp.php"); ?>
--EXPECT--
<?php __CLASS__ ?>
+26
View File
@@ -0,0 +1,26 @@
--TEST--
Bug #67169: array_splice all elements, then []= gives wrong index
--FILE--
<?php
$array = array('a', 'b');
array_splice($array, 0, 2);
$array[] = 'c';
var_dump($array);
$array = array('a', 'b');
array_shift($array);
array_shift($array);
$array[] = 'c';
var_dump($array);
?>
--EXPECT--
array(1) {
[0]=>
string(1) "c"
}
array(1) {
[0]=>
string(1) "c"
}
+12
View File
@@ -0,0 +1,12 @@
--TEST--
Bug #67368 (Memory leak with immediately dereferenced array in class constant)
--INI--
report_memleaks=1
--FILE--
<?php
class FooBar {
const bar = ["bar" => 3]["bar"];
}
echo "okey";
--EXPECTF--
okey
+10
View File
@@ -0,0 +1,10 @@
<?php
class a {
public function test($arg = c::TESTCONSTANT) {
echo __METHOD__ . "($arg)\n";
}
static public function staticTest() {
}
}
+8
View File
@@ -0,0 +1,8 @@
<?php
class b extends a {
public function test() {
echo __METHOD__ . "()\n";
parent::test();
}
}
+26
View File
@@ -0,0 +1,26 @@
--TEST--
bug67436: Autoloader isn't called if user defined error handler is present
--INI--
error_reporting=
--FILE--
<?php
spl_autoload_register(function($classname) {
if (in_array($classname, array('a','b','c'))) {
require_once ($classname . '.php');
}
});
set_error_handler(function ($errno, $errstr, $errfile, $errline) {
}, error_reporting());
a::staticTest();
$b = new b();
$b->test();
--EXPECT--
b::test()
a::test(c::TESTCONSTANT)
@@ -0,0 +1,24 @@
--TEST--
bug67436: E_STRICT instead of custom error handler
--INI--
error_reporting=-1
--FILE--
<?php
spl_autoload_register(function($classname) {
if (in_array($classname, array('a','b','c'))) {
require_once ($classname . '.php');
}
});
a::staticTest();
$b = new b();
$b->test();
--EXPECTF--
Strict Standards: Declaration of b::test() should be compatible with a::test($arg = c::TESTCONSTANT) in %s/bug67436/b.php on line %d
b::test()
a::test(c::TESTCONSTANT)
+5
View File
@@ -0,0 +1,5 @@
<?php
class c {
const TESTCONSTANT = "c::TESTCONSTANT";
}
+22
View File
@@ -0,0 +1,22 @@
--TEST--
Closure 049: static::class in static closure in non-static method.
--FILE--
<?php
class A {
function foo() {
$f = static function() {
return static::class;
};
return $f();
}
}
class B extends A {}
$b = new B;
var_dump($b->foo());
--EXPECT--
string(1) "B"
+22
View File
@@ -0,0 +1,22 @@
--TEST--
Closure 050: static::class in non-static closure in non-static method.
--FILE--
<?php
class A {
function foo() {
$f = function() {
return static::class;
};
return $f();
}
}
class B extends A {}
$b = new B;
var_dump($b->foo());
--EXPECT--
string(1) "B"
+21
View File
@@ -0,0 +1,21 @@
--TEST--
Closure 051: static::class in static closure in static method.
--FILE--
<?php
class A {
static function foo() {
$f = static function() {
return static::class;
};
return $f();
}
}
class B extends A {}
var_dump(B::foo());
--EXPECT--
string(1) "B"
+21
View File
@@ -0,0 +1,21 @@
--TEST--
Closure 052: static::class in non-static closure in static method.
--FILE--
<?php
class A {
static function foo() {
$f = function() {
return static::class;
};
return $f();
}
}
class B extends A {}
var_dump(B::foo());
--EXPECT--
string(1) "B"
+22
View File
@@ -0,0 +1,22 @@
--TEST--
Closure 053: self::class in static closure in non-static method.
--FILE--
<?php
class A {
function foo() {
$f = static function() {
return self::class;
};
return $f();
}
}
class B extends A {}
$b = new B;
var_dump($b->foo());
--EXPECT--
string(1) "A"
+22
View File
@@ -0,0 +1,22 @@
--TEST--
Closure 054: self::class in non-static closure in non-static method.
--FILE--
<?php
class A {
function foo() {
$f = function() {
return self::class;
};
return $f();
}
}
class B extends A {}
$b = new B;
var_dump($b->foo());
--EXPECT--
string(1) "A"
+21
View File
@@ -0,0 +1,21 @@
--TEST--
Closure 055: self::class in static closure in static method.
--FILE--
<?php
class A {
static function foo() {
$f = static function() {
return self::class;
};
return $f();
}
}
class B extends A {}
var_dump(B::foo());
--EXPECT--
string(1) "A"
+21
View File
@@ -0,0 +1,21 @@
--TEST--
Closure 056: self::class in non-static closure in static method.
--FILE--
<?php
class A {
static function foo() {
$f = function() {
return self::class;
};
return $f();
}
}
class B extends A {}
var_dump(B::foo());
--EXPECT--
string(1) "A"
+37
View File
@@ -0,0 +1,37 @@
--TEST--
Bug 66622: Closures do not correctly capture the late bound class (static::) in some cases
--FILE--
<?php
class A {
static function name() { return 'A'; }
function foo() {
$fn = function() { return static::name(); };
echo static::name() . ' vs ' . $fn() . "\n";
}
function bar() {
$fn = static function() { return static::name(); };
echo static::name() . ' vs ' . $fn() . "\n";
}
static function baz() {
$fn = function() { return static::name(); };
echo static::name() . ' vs ' . $fn() . "\n";
}
}
class B extends A {
static function name() { return 'B'; }
}
function test() {
(new B)->foo();
(new B)->bar();
(new B)->baz();
B::baz();
}
test();
--EXPECT--
B vs B
B vs B
B vs B
B vs B
+5
View File
@@ -35,6 +35,9 @@ const T_25 = 1 + 2 * 3;
// Test for memory leaks
const T_26 = "1" + 2 + "3";
// Allow T_POW
const T_27 = 2 ** 3;
var_dump(T_1);
var_dump(T_2);
var_dump(T_3);
@@ -61,6 +64,7 @@ var_dump(T_23);
var_dump(T_24);
var_dump(T_25);
var_dump(T_26);
var_dump(T_27);
?>
--EXPECT--
int(2)
@@ -89,3 +93,4 @@ bool(false)
bool(true)
int(7)
int(6)
int(8)
@@ -0,0 +1,66 @@
--TEST--
Constant expressions with arrays
--FILE--
<?php
const a = [1,2,[3,[4]]];
const b = a[0];
const c = a[2][0];
const d = a[2];
const e = ["string" => [1]]["string"][0];
var_dump(b, c, e);
function test ($a = d[1][0]) {
var_dump($a);
}
test();
class foo {
const bar = [1][0];
}
var_dump(foo::bar);
var_dump(a, a[0], a[2], a[2][1], a[3]);
?>
--EXPECTF--
int(1)
int(3)
int(1)
int(4)
int(1)
Notice: Undefined offset: 3 in %s on line %d
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
array(2) {
[0]=>
int(3)
[1]=>
array(1) {
[0]=>
int(4)
}
}
}
int(1)
array(2) {
[0]=>
int(3)
[1]=>
array(1) {
[0]=>
int(4)
}
}
array(1) {
[0]=>
int(4)
}
NULL
@@ -0,0 +1,13 @@
--TEST--
Self-referencing constant expression (part of a constant AST)
--FILE--
<?php
class A {
const FOO = [self::BAR];
const BAR = [self::FOO];
}
var_dump(A::FOO);
?>
--EXPECTF--
Fatal error: Cannot declare self-referencing constant 'self::FOO' in %s on line %d
+19
View File
@@ -0,0 +1,19 @@
--TEST--
Testing __debugInfo() magic method with bad returns ZERO (float)
--FILE--
<?php
class C {
public $val;
public function __debugInfo() {
return $this->val;
}
public function __construct($val) {
$this->val = $val;
}
}
$c = new C(0.0);
var_dump($c);
--EXPECTF--
Fatal error: __debuginfo() must return an array in %s%eZend%etests%edebug_info-error-0.0.php on line %d
+19
View File
@@ -0,0 +1,19 @@
--TEST--
Testing __debugInfo() magic method with bad returns ZERO
--FILE--
<?php
class C {
public $val;
public function __debugInfo() {
return $this->val;
}
public function __construct($val) {
$this->val = $val;
}
}
$c = new C(0);
var_dump($c);
--EXPECTF--
Fatal error: __debuginfo() must return an array in %s%eZend%etests%edebug_info-error-0.php on line %d
+19
View File
@@ -0,0 +1,19 @@
--TEST--
Testing __debugInfo() magic method with bad returns ONE (float)
--FILE--
<?php
class C {
public $val;
public function __debugInfo() {
return $this->val;
}
public function __construct($val) {
$this->val = $val;
}
}
$c = new C(1.0);
var_dump($c);
--EXPECTF--
Fatal error: __debuginfo() must return an array in %s%eZend%etests%edebug_info-error-1.0.php on line %d
+19
View File
@@ -0,0 +1,19 @@
--TEST--
Testing __debugInfo() magic method with bad returns ONE
--FILE--
<?php
class C {
public $val;
public function __debugInfo() {
return $this->val;
}
public function __construct($val) {
$this->val = $val;
}
}
$c = new C(1);
var_dump($c);
--EXPECTF--
Fatal error: __debuginfo() must return an array in %s%eZend%etests%edebug_info-error-1.php on line %d
@@ -0,0 +1,19 @@
--TEST--
Testing __debugInfo() magic method with bad returns EMPTY STRING
--FILE--
<?php
class C {
public $val;
public function __debugInfo() {
return $this->val;
}
public function __construct($val) {
$this->val = $val;
}
}
$c = new C("");
var_dump($c);
--EXPECTF--
Fatal error: __debuginfo() must return an array in %s%eZend%etests%edebug_info-error-empty_str.php on line %d
+19
View File
@@ -0,0 +1,19 @@
--TEST--
Testing __debugInfo() magic method with bad returns FALSE
--FILE--
<?php
class C {
public $val;
public function __debugInfo() {
return $this->val;
}
public function __construct($val) {
$this->val = $val;
}
}
$c = new C(false);
var_dump($c);
--EXPECTF--
Fatal error: __debuginfo() must return an array in %s%eZend%etests%edebug_info-error-false.php on line %d
+19
View File
@@ -0,0 +1,19 @@
--TEST--
Testing __debugInfo() magic method with bad returns OBJECT
--FILE--
<?php
class C {
public $val;
public function __debugInfo() {
return $this->val;
}
public function __construct($val) {
$this->val = $val;
}
}
$c = new C(new stdClass);
var_dump($c);
--EXPECTF--
Fatal error: __debuginfo() must return an array in %s%eZend%etests%edebug_info-error-object.php on line %d
+19
View File
@@ -0,0 +1,19 @@
--TEST--
Testing __debugInfo() magic method with bad returns RESOURCE
--FILE--
<?php
class C {
public $val;
public function __debugInfo() {
return $this->val;
}
public function __construct($val) {
$this->val = $val;
}
}
$c = new C(fopen("data:text/plain,Foo", 'r'));
var_dump($c);
--EXPECTF--
Fatal error: __debuginfo() must return an array in %s%eZend%etests%edebug_info-error-resource.php on line %d
+19
View File
@@ -0,0 +1,19 @@
--TEST--
Testing __debugInfo() magic method with bad returns STRING
--FILE--
<?php
class C {
public $val;
public function __debugInfo() {
return $this->val;
}
public function __construct($val) {
$this->val = $val;
}
}
$c = new C("foo");
var_dump($c);
--EXPECTF--
Fatal error: __debuginfo() must return an array in %s%eZend%etests%edebug_info-error-str.php on line %d
+19
View File
@@ -0,0 +1,19 @@
--TEST--
Testing __debugInfo() magic method with bad returns TRUE
--FILE--
<?php
class C {
public $val;
public function __debugInfo() {
return $this->val;
}
public function __construct($val) {
$this->val = $val;
}
}
$c = new C(true);
var_dump($c);
--EXPECTF--
Fatal error: __debuginfo() must return an array in %s%eZend%etests%edebug_info-error-true.php on line %d
+39
View File
@@ -0,0 +1,39 @@
--TEST--
Testing __debugInfo() magic method
--FILE--
<?php
class Foo {
public $d = 4;
protected $e = 5;
private $f = 6;
public function __debugInfo() {
return ['a'=>1, "\0*\0b"=>2, "\0Foo\0c"=>3];
}
}
class Bar {
public $val = 123;
public function __debugInfo() {
return null;
}
}
$f = new Foo;
var_dump($f);
$b = new Bar;
var_dump($b);
--EXPECTF--
object(Foo)#%d (3) {
["a"]=>
int(1)
["b":protected]=>
int(2)
["c":"Foo":private]=>
int(3)
}
object(Bar)#%d (0) {
}
+1 -1
View File
@@ -76,4 +76,4 @@ NULL
Notice: Undefined offset: 3 in %s on line %d
Fatal error: Call to a member function bar() on a non-object in %s on line %d
Fatal error: Call to a member function bar() on null in %s on line %d
+11 -1
View File
@@ -7,7 +7,17 @@ class test {
const TEST = array(1,2,3);
}
var_dump(test::TEST);
echo "Done\n";
?>
--EXPECTF--
Fatal error: Arrays are not allowed in class constants in %s on line %d
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
Done
+19
View File
@@ -0,0 +1,19 @@
--TEST--
Bug #67467: eval with parse error causes segmentation fault in generator
--FILE--
<?php
function gen() {
$a = 1;
yield $a;
}
@eval('abc');
$values = gen();
$values->next();
?>
===DONE===
--EXPECT--
===DONE===
@@ -32,12 +32,11 @@ Stack trace:
#0 %s(%d): serialize(Object(Generator))
#1 {main}
exception 'Exception' with message 'Unserialization of 'Generator' is not allowed' in %s:%d
Stack trace:
#0 [internal function]: Generator->__wakeup()
#1 %s(%d): unserialize('O:9:"Generator"...')
#2 {main}
Warning: Erroneous data format for unserializing 'Generator' in %sserialize_unserialize_error.php on line %d
Notice: unserialize(): Error at offset 19 of 20 bytes in %sserialize_unserialize_error.php on line %s
bool(false)
exception 'Exception' with message 'Unserialization of 'Generator' is not allowed' in %s:%d
Stack trace:
#0 %s(%d): unserialize('C:9:"Generator"...')
+5 -2
View File
@@ -3,6 +3,9 @@
--FILE--
<?php
const C = array();
--EXPECTF--
Fatal error: Arrays are not allowed as constants in %sns_059.php on line 2
var_dump(C);
?>
--EXPECTF--
array(0) {
}
+15
View File
@@ -0,0 +1,15 @@
--TEST--
Try finally (segfault with empty break)
--FILE--
<?php
function foo () {
try {
break;
} finally {
}
}
foo();
?>
--EXPECTF--
Fatal error: Cannot break/continue 1 level in %stry_finally_011.php on line %d
+49 -49
View File
@@ -46,22 +46,22 @@
/* true multithread-shared globals */
ZEND_API zend_class_entry *zend_standard_class_def = NULL;
ZEND_API int (*zend_printf)(const char *format, ...);
ZEND_API zend_size_t (*zend_printf)(const char *format, ...);
ZEND_API zend_write_func_t zend_write;
ZEND_API FILE *(*zend_fopen)(const char *filename, char **opened_path TSRMLS_DC);
ZEND_API int (*zend_stream_open_function)(const char *filename, zend_file_handle *handle TSRMLS_DC);
ZEND_API void (*zend_block_interruptions)(void);
ZEND_API void (*zend_unblock_interruptions)(void);
ZEND_API void (*zend_ticks_function)(int ticks);
ZEND_API void (*zend_error_cb)(int type, const char *error_filename, const uint error_lineno, const char *format, va_list args);
int (*zend_vspprintf)(char **pbuf, size_t max_len, const char *format, va_list ap);
ZEND_API void (*zend_ticks_function)(int ticks TSRMLS_DC);
ZEND_API void (*zend_error_cb)(int type, const char *error_filename, const zend_size_t error_lineno, const char *format, va_list args);
zend_size_t (*zend_vspprintf)(char **pbuf, zend_size_t max_len, const char *format, va_list ap);
ZEND_API char *(*zend_getenv)(char *name, size_t name_len TSRMLS_DC);
ZEND_API char *(*zend_resolve_path)(const char *filename, int filename_len TSRMLS_DC);
ZEND_API char *(*zend_resolve_path)(const char *filename, zend_size_t filename_len TSRMLS_DC);
void (*zend_on_timeout)(int seconds TSRMLS_DC);
static void (*zend_message_dispatcher_p)(long message, const void *data TSRMLS_DC);
static int (*zend_get_configuration_directive_p)(const char *name, uint name_length, zval *contents);
static void (*zend_message_dispatcher_p)(zend_int_t message, const void *data TSRMLS_DC);
static int (*zend_get_configuration_directive_p)(const char *name, zend_size_t name_length, zval *contents);
static ZEND_INI_MH(OnUpdateErrorReporting) /* {{{ */
{
@@ -127,7 +127,7 @@ ZEND_API zval zval_used_for_init; /* True global variable */
/* version information */
static char *zend_version_info;
static uint zend_version_info_length;
static zend_size_t zend_version_info_length;
#define ZEND_CORE_VERSION_INFO "Zend Engine v" ZEND_VERSION ", Copyright (c) 1998-2014 Zend Technologies\n"
#define PRINT_ZVAL_INDENT 4
@@ -136,8 +136,8 @@ static void print_hash(zend_write_func_t write_func, HashTable *ht, int indent,
zval **tmp;
char *string_key;
HashPosition iterator;
ulong num_key;
uint str_len;
zend_uint_t num_key;
zend_size_t str_len;
int i;
for (i = 0; i < indent; i++) {
@@ -155,8 +155,8 @@ static void print_hash(zend_write_func_t write_func, HashTable *ht, int indent,
case HASH_KEY_IS_STRING:
if (is_object) {
const char *prop_name, *class_name;
int prop_len;
int mangled = zend_unmangle_property_name_ex(string_key, str_len - 1, &class_name, &prop_name, &prop_len);
zend_size_t prop_len;
zend_size_t mangled = zend_unmangle_property_name_ex(string_key, str_len - 1, &class_name, &prop_name, &prop_len);
ZEND_WRITE_EX(prop_name, prop_len);
if (class_name && mangled == SUCCESS) {
@@ -172,10 +172,10 @@ static void print_hash(zend_write_func_t write_func, HashTable *ht, int indent,
ZEND_WRITE_EX(string_key, str_len-1);
}
break;
case HASH_KEY_IS_LONG:
case HASH_KEY_IS_INT:
{
char key[25];
snprintf(key, sizeof(key), "%ld", num_key);
snprintf(key, sizeof(key), ZEND_INT_FMT, num_key);
ZEND_PUTS_EX(key);
}
break;
@@ -198,8 +198,8 @@ static void print_flat_hash(HashTable *ht TSRMLS_DC) /* {{{ */
zval **tmp;
char *string_key;
HashPosition iterator;
ulong num_key;
uint str_len;
zend_uint_t num_key;
zend_size_t str_len;
int i = 0;
zend_hash_internal_pointer_reset_ex(ht, &iterator);
@@ -212,8 +212,8 @@ static void print_flat_hash(HashTable *ht TSRMLS_DC) /* {{{ */
case HASH_KEY_IS_STRING:
ZEND_PUTS(string_key);
break;
case HASH_KEY_IS_LONG:
zend_printf("%ld", num_key);
case HASH_KEY_IS_INT:
zend_printf(ZEND_INT_FMT, num_key);
break;
}
ZEND_PUTS("] => ");
@@ -231,26 +231,26 @@ ZEND_API void zend_make_printable_zval(zval *expr, zval *expr_copy, int *use_cop
}
switch (Z_TYPE_P(expr)) {
case IS_NULL:
Z_STRLEN_P(expr_copy) = 0;
Z_STRSIZE_P(expr_copy) = 0;
Z_STRVAL_P(expr_copy) = STR_EMPTY_ALLOC();
break;
case IS_BOOL:
if (Z_LVAL_P(expr)) {
Z_STRLEN_P(expr_copy) = 1;
if (Z_IVAL_P(expr)) {
Z_STRSIZE_P(expr_copy) = 1;
Z_STRVAL_P(expr_copy) = estrndup("1", 1);
} else {
Z_STRLEN_P(expr_copy) = 0;
Z_STRSIZE_P(expr_copy) = 0;
Z_STRVAL_P(expr_copy) = STR_EMPTY_ALLOC();
}
break;
case IS_RESOURCE:
Z_STRVAL_P(expr_copy) = (char *) emalloc(sizeof("Resource id #") - 1 + MAX_LENGTH_OF_LONG);
Z_STRLEN_P(expr_copy) = snprintf(Z_STRVAL_P(expr_copy), sizeof("Resource id #") - 1 + MAX_LENGTH_OF_LONG, "Resource id #%ld", Z_LVAL_P(expr));
Z_STRVAL_P(expr_copy) = (char *) emalloc(sizeof("Resource id #") - 1 + MAX_LENGTH_OF_ZEND_INT);
Z_STRSIZE_P(expr_copy) = snprintf(Z_STRVAL_P(expr_copy), sizeof("Resource id #") - 1 + MAX_LENGTH_OF_ZEND_INT, "Resource id #" ZEND_INT_FMT, Z_IVAL_P(expr));
break;
case IS_ARRAY:
zend_error(E_NOTICE, "Array to string conversion");
Z_STRLEN_P(expr_copy) = sizeof("Array") - 1;
Z_STRVAL_P(expr_copy) = estrndup("Array", Z_STRLEN_P(expr_copy));
Z_STRSIZE_P(expr_copy) = sizeof("Array") - 1;
Z_STRVAL_P(expr_copy) = estrndup("Array", Z_STRSIZE_P(expr_copy));
break;
case IS_OBJECT:
{
@@ -288,7 +288,7 @@ ZEND_API void zend_make_printable_zval(zval *expr, zval *expr_copy, int *use_cop
zval_ptr_dtor(&z);
}
zend_error(EG(exception) ? E_ERROR : E_RECOVERABLE_ERROR, "Object of class %s could not be converted to string", Z_OBJCE_P(expr)->name);
Z_STRLEN_P(expr_copy) = 0;
Z_STRSIZE_P(expr_copy) = 0;
Z_STRVAL_P(expr_copy) = STR_EMPTY_ALLOC();
}
break;
@@ -308,13 +308,13 @@ ZEND_API void zend_make_printable_zval(zval *expr, zval *expr_copy, int *use_cop
}
/* }}} */
ZEND_API int zend_print_zval(zval *expr, int indent) /* {{{ */
ZEND_API zend_size_t zend_print_zval(zval *expr, int indent) /* {{{ */
{
return zend_print_zval_ex(zend_write, expr, indent);
}
/* }}} */
ZEND_API int zend_print_zval_ex(zend_write_func_t write_func, zval *expr, int indent) /* {{{ */
ZEND_API zend_size_t zend_print_zval_ex(zend_write_func_t write_func, zval *expr, int indent) /* {{{ */
{
zval expr_copy;
int use_copy;
@@ -323,17 +323,17 @@ ZEND_API int zend_print_zval_ex(zend_write_func_t write_func, zval *expr, int in
if (use_copy) {
expr = &expr_copy;
}
if (Z_STRLEN_P(expr) == 0) { /* optimize away empty strings */
if (Z_STRSIZE_P(expr) == 0) { /* optimize away empty strings */
if (use_copy) {
zval_dtor(expr);
}
return 0;
}
write_func(Z_STRVAL_P(expr), Z_STRLEN_P(expr));
write_func(Z_STRVAL_P(expr), Z_STRSIZE_P(expr));
if (use_copy) {
zval_dtor(expr);
}
return Z_STRLEN_P(expr);
return Z_STRSIZE_P(expr);
}
/* }}} */
@@ -355,7 +355,7 @@ ZEND_API void zend_print_flat_zval_r(zval *expr TSRMLS_DC) /* {{{ */
{
HashTable *properties = NULL;
const char *class_name = NULL;
zend_uint clen;
zend_size_t clen;
if (Z_OBJ_HANDLER_P(expr, get_class_name)) {
Z_OBJ_HANDLER_P(expr, get_class_name)(expr, &class_name, &clen, 0 TSRMLS_CC);
@@ -413,7 +413,7 @@ ZEND_API void zend_print_zval_r_ex(zend_write_func_t write_func, zval *expr, int
{
HashTable *properties;
const char *class_name = NULL;
zend_uint clen;
zend_size_t clen;
int is_temp;
if (Z_OBJ_HANDLER_P(expr, get_class_name)) {
@@ -621,7 +621,7 @@ static void php_scanner_globals_ctor(zend_php_scanner_globals *scanner_globals_p
void zend_init_opcodes_handlers(void);
static zend_bool php_auto_globals_create_globals(const char *name, uint name_len TSRMLS_DC) /* {{{ */
static zend_bool php_auto_globals_create_globals(const char *name, zend_size_t name_len TSRMLS_DC) /* {{{ */
{
zval *globals;
@@ -870,7 +870,7 @@ void zenderror(const char *error) /* {{{ */
/* }}} */
BEGIN_EXTERN_C()
ZEND_API void _zend_bailout(char *filename, uint lineno) /* {{{ */
ZEND_API void _zend_bailout(char *filename, zend_size_t lineno) /* {{{ */
{
TSRMLS_FETCH();
@@ -890,7 +890,7 @@ END_EXTERN_C()
void zend_append_version_info(const zend_extension *extension) /* {{{ */
{
char *new_info;
uint new_info_length;
zend_size_t new_info_length;
new_info_length = sizeof(" with v, , by \n")
+ strlen(extension->name)
@@ -954,7 +954,7 @@ ZEND_API void zend_deactivate(TSRMLS_D) /* {{{ */
zend_destroy_rsrc_list(&EG(regular_list) TSRMLS_CC);
#ifdef ZEND_DEBUG
#if ZEND_DEBUG
if (GC_G(gc_enabled) && !CG(unclean_shutdown)) {
gc_collect_cycles(TSRMLS_C);
}
@@ -981,7 +981,7 @@ ZEND_API void zend_deactivate(TSRMLS_D) /* {{{ */
/* }}} */
BEGIN_EXTERN_C()
ZEND_API void zend_message_dispatcher(long message, const void *data TSRMLS_DC) /* {{{ */
ZEND_API void zend_message_dispatcher(zend_int_t message, const void *data TSRMLS_DC) /* {{{ */
{
if (zend_message_dispatcher_p) {
zend_message_dispatcher_p(message, data TSRMLS_CC);
@@ -990,7 +990,7 @@ ZEND_API void zend_message_dispatcher(long message, const void *data TSRMLS_DC)
/* }}} */
END_EXTERN_C()
ZEND_API int zend_get_configuration_directive(const char *name, uint name_length, zval *contents) /* {{{ */
ZEND_API int zend_get_configuration_directive(const char *name, zend_size_t name_length, zval *contents) /* {{{ */
{
if (zend_get_configuration_directive_p) {
return zend_get_configuration_directive_p(name, name_length, contents);
@@ -1025,7 +1025,7 @@ ZEND_API void zend_error(int type, const char *format, ...) /* {{{ */
zval *retval;
zval *z_error_type, *z_error_message, *z_error_filename, *z_error_lineno, *z_context;
const char *error_filename;
uint error_lineno;
zend_size_t error_lineno;
zval *orig_user_error_handler;
zend_bool in_compilation;
zend_class_entry *saved_class_entry;
@@ -1150,21 +1150,21 @@ ZEND_API void zend_error(int type, const char *format, ...) /* {{{ */
# endif
#endif
va_copy(usr_copy, args);
Z_STRLEN_P(z_error_message) = zend_vspprintf(&Z_STRVAL_P(z_error_message), 0, format, usr_copy);
Z_STRSIZE_P(z_error_message) = zend_vspprintf(&Z_STRVAL_P(z_error_message), 0, format, usr_copy);
#ifdef va_copy
va_end(usr_copy);
#endif
Z_TYPE_P(z_error_message) = IS_STRING;
Z_LVAL_P(z_error_type) = type;
Z_TYPE_P(z_error_type) = IS_LONG;
Z_IVAL_P(z_error_type) = type;
Z_TYPE_P(z_error_type) = IS_INT;
if (error_filename) {
ZVAL_STRING(z_error_filename, error_filename, 1);
}
Z_LVAL_P(z_error_lineno) = error_lineno;
Z_TYPE_P(z_error_lineno) = IS_LONG;
Z_IVAL_P(z_error_lineno) = error_lineno;
Z_TYPE_P(z_error_lineno) = IS_INT;
if (!EG(active_symbol_table)) {
zend_rebuild_symbol_table(TSRMLS_C);
@@ -1211,7 +1211,7 @@ ZEND_API void zend_error(int type, const char *format, ...) /* {{{ */
if (call_user_function_ex(CG(function_table), NULL, orig_user_error_handler, &retval, 5, params, 1, NULL TSRMLS_CC) == SUCCESS) {
if (retval) {
if (Z_TYPE_P(retval) == IS_BOOL && Z_LVAL_P(retval) == 0) {
if (Z_TYPE_P(retval) == IS_BOOL && Z_IVAL_P(retval) == 0) {
zend_error_cb(type, error_filename, error_lineno, format, args);
}
zval_ptr_dtor(&retval);
@@ -1302,7 +1302,7 @@ ZEND_API int zend_execute_scripts(int type TSRMLS_DC, zval **retval, int file_co
zend_file_handle *file_handle;
zend_op_array *orig_op_array = EG(active_op_array);
zval **orig_retval_ptr_ptr = EG(return_value_ptr_ptr);
long orig_interactive = CG(interactive);
zend_int_t orig_interactive = CG(interactive);
va_start(files, file_count);
for (i = 0; i < file_count; i++) {
@@ -1378,7 +1378,7 @@ ZEND_API int zend_execute_scripts(int type TSRMLS_DC, zval **retval, int file_co
ZEND_API char *zend_make_compiled_string_description(const char *name TSRMLS_DC) /* {{{ */
{
const char *cur_filename;
int cur_lineno;
zend_size_t cur_lineno;
char *compiled_string_description;
if (zend_is_compiling(TSRMLS_C)) {
+46 -48
View File
@@ -22,7 +22,7 @@
#ifndef ZEND_H
#define ZEND_H
#define ZEND_VERSION "2.6.0-dev"
#define ZEND_VERSION "2.7.0-dev"
#define ZEND_ENGINE_2
@@ -266,14 +266,14 @@ char *alloca ();
#define LONG_MIN (- LONG_MAX - 1)
#endif
#if SIZEOF_LONG == 4
#define MAX_LENGTH_OF_LONG 11
static const char long_min_digits[] = "2147483648";
#elif SIZEOF_LONG == 8
#define MAX_LENGTH_OF_LONG 20
static const char long_min_digits[] = "9223372036854775808";
#if SIZEOF_ZEND_INT == 4
#define MAX_LENGTH_OF_ZEND_INT 11
static const char int_min_digits[] = "2147483648";
#elif SIZEOF_ZEND_INT == 8
#define MAX_LENGTH_OF_ZEND_INT 20
static const char int_min_digits[] = "9223372036854775808";
#else
#error "Unknown SIZEOF_LONG"
#error "Unknown SIZEOF_ZEND_INT"
#endif
#define MAX_LENGTH_OF_DOUBLE 32
@@ -320,11 +320,11 @@ typedef struct _zend_object {
#include "zend_ast.h"
typedef union _zvalue_value {
long lval; /* long value */
zend_int_t lval; /* long value */
double dval; /* double value */
struct {
char *val;
int len;
zend_size_t len;
} str;
HashTable *ht; /* hash table value */
zend_object_value obj;
@@ -443,12 +443,12 @@ typedef struct _zend_unserialize_data zend_unserialize_data;
struct _zend_trait_method_reference {
const char* method_name;
unsigned int mname_len;
zend_size_t mname_len;
zend_class_entry *ce;
const char* class_name;
unsigned int cname_len;
zend_size_t cname_len;
};
typedef struct _zend_trait_method_reference zend_trait_method_reference;
@@ -466,7 +466,7 @@ struct _zend_trait_alias {
* name for method to be added
*/
const char* alias;
unsigned int alias_len;
zend_size_t alias_len;
/**
* modifiers to be set on trait method
@@ -478,7 +478,7 @@ typedef struct _zend_trait_alias zend_trait_alias;
struct _zend_class_entry {
char type;
const char *name;
zend_uint name_length;
zend_size_t name_length;
struct _zend_class_entry *parent;
int refcount;
zend_uint ce_flags;
@@ -502,6 +502,7 @@ struct _zend_class_entry {
union _zend_function *__call;
union _zend_function *__callstatic;
union _zend_function *__tostring;
union _zend_function *__debugInfo;
union _zend_function *serialize_func;
union _zend_function *unserialize_func;
@@ -511,11 +512,11 @@ struct _zend_class_entry {
zend_object_value (*create_object)(zend_class_entry *class_type TSRMLS_DC);
zend_object_iterator *(*get_iterator)(zend_class_entry *ce, zval *object, int by_ref TSRMLS_DC);
int (*interface_gets_implemented)(zend_class_entry *iface, zend_class_entry *class_type TSRMLS_DC); /* a class implements this interface */
union _zend_function *(*get_static_method)(zend_class_entry *ce, char* method, int method_len TSRMLS_DC);
union _zend_function *(*get_static_method)(zend_class_entry *ce, char* method, zend_size_t method_len TSRMLS_DC);
/* serializer callbacks */
int (*serialize)(zval *object, unsigned char **buffer, zend_uint *buf_len, zend_serialize_data *data TSRMLS_DC);
int (*unserialize)(zval **object, zend_class_entry *ce, const unsigned char *buf, zend_uint buf_len, zend_unserialize_data *data TSRMLS_DC);
int (*serialize)(zval *object, unsigned char **buffer, zend_size_t *buf_len, zend_serialize_data *data TSRMLS_DC);
int (*unserialize)(zval **object, zend_class_entry *ce, const unsigned char *buf, zend_size_t buf_len, zend_unserialize_data *data TSRMLS_DC);
zend_class_entry **interfaces;
zend_uint num_interfaces;
@@ -528,10 +529,10 @@ struct _zend_class_entry {
union {
struct {
const char *filename;
zend_uint line_start;
zend_uint line_end;
zend_size_t line_start;
zend_size_t line_end;
const char *doc_comment;
zend_uint doc_comment_len;
zend_size_t doc_comment_len;
} user;
struct {
const struct _zend_function_entry *builtin_functions;
@@ -542,29 +543,29 @@ struct _zend_class_entry {
#include "zend_stream.h"
typedef struct _zend_utility_functions {
void (*error_function)(int type, const char *error_filename, const uint error_lineno, const char *format, va_list args) ZEND_ATTRIBUTE_PTR_FORMAT(printf, 4, 0);
int (*printf_function)(const char *format, ...) ZEND_ATTRIBUTE_PTR_FORMAT(printf, 1, 2);
int (*write_function)(const char *str, uint str_length);
void (*error_function)(int type, const char *error_filename, const zend_size_t error_lineno, const char *format, va_list args) ZEND_ATTRIBUTE_PTR_FORMAT(printf, 4, 0);
zend_size_t (*printf_function)(const char *format, ...) ZEND_ATTRIBUTE_PTR_FORMAT(printf, 1, 2);
zend_size_t (*write_function)(const char *str, zend_size_t str_length);
FILE *(*fopen_function)(const char *filename, char **opened_path TSRMLS_DC);
void (*message_handler)(long message, const void *data TSRMLS_DC);
void (*message_handler)(zend_int_t message, const void *data TSRMLS_DC);
void (*block_interruptions)(void);
void (*unblock_interruptions)(void);
int (*get_configuration_directive)(const char *name, uint name_length, zval *contents);
void (*ticks_function)(int ticks);
int (*get_configuration_directive)(const char *name, zend_size_t name_length, zval *contents);
void (*ticks_function)(int ticks TSRMLS_DC);
void (*on_timeout)(int seconds TSRMLS_DC);
int (*stream_open_function)(const char *filename, zend_file_handle *handle TSRMLS_DC);
int (*vspprintf_function)(char **pbuf, size_t max_len, const char *format, va_list ap);
char *(*getenv_function)(char *name, size_t name_len TSRMLS_DC);
char *(*resolve_path_function)(const char *filename, int filename_len TSRMLS_DC);
zend_size_t (*vspprintf_function)(char **pbuf, zend_size_t max_len, const char *format, va_list ap);
char *(*getenv_function)(char *name, zend_size_t name_len TSRMLS_DC);
char *(*resolve_path_function)(const char *filename, zend_size_t filename_len TSRMLS_DC);
} zend_utility_functions;
typedef struct _zend_utility_values {
char *import_use_extension;
uint import_use_extension_length;
zend_size_t import_use_extension_length;
zend_bool html_errors;
} zend_utility_values;
typedef int (*zend_write_func_t)(const char *str, uint str_length);
typedef int (*zend_write_func_t)(const char *str, zend_size_t str_length);
#undef MIN
#undef MAX
@@ -580,7 +581,7 @@ typedef int (*zend_write_func_t)(const char *str, uint str_length);
/* data types */
/* All data types <= IS_BOOL have their constructor/destructors skipped */
#define IS_NULL 0
#define IS_LONG 1
#define IS_INT 1
#define IS_DOUBLE 2
#define IS_BOOL 3
#define IS_ARRAY 4
@@ -588,14 +589,11 @@ typedef int (*zend_write_func_t)(const char *str, uint str_length);
#define IS_STRING 6
#define IS_RESOURCE 7
#define IS_CONSTANT 8
#define IS_CONSTANT_ARRAY 9
#define IS_CONSTANT_AST 10
#define IS_CALLABLE 11
#define IS_CONSTANT_AST 9
#define IS_CALLABLE 10
/* Ugly hack to support constants as static array indices */
#define IS_CONSTANT_TYPE_MASK 0x00f
#define IS_CONSTANT_UNQUALIFIED 0x010
#define IS_CONSTANT_INDEX 0x080
#define IS_LEXICAL_VAR 0x020
#define IS_LEXICAL_REF 0x040
#define IS_CONSTANT_IN_NAMESPACE 0x100
@@ -614,7 +612,7 @@ void zend_post_startup(TSRMLS_D);
void zend_set_utility_values(zend_utility_values *utility_values);
BEGIN_EXTERN_C()
ZEND_API void _zend_bailout(char *filename, uint lineno);
ZEND_API void _zend_bailout(char *filename, zend_size_t lineno);
END_EXTERN_C()
#define zend_bailout() _zend_bailout(__FILE__, __LINE__)
@@ -648,8 +646,8 @@ END_EXTERN_C()
BEGIN_EXTERN_C()
ZEND_API char *get_zend_version(void);
ZEND_API void zend_make_printable_zval(zval *expr, zval *expr_copy, int *use_copy);
ZEND_API int zend_print_zval(zval *expr, int indent);
ZEND_API int zend_print_zval_ex(zend_write_func_t write_func, zval *expr, int indent);
ZEND_API zend_size_t zend_print_zval(zval *expr, int indent);
ZEND_API zend_size_t zend_print_zval_ex(zend_write_func_t write_func, zval *expr, int indent);
ZEND_API void zend_print_zval_r(zval *expr, int indent TSRMLS_DC);
ZEND_API void zend_print_flat_zval_r(zval *expr TSRMLS_DC);
ZEND_API void zend_print_zval_r_ex(zend_write_func_t write_func, zval *expr, int indent TSRMLS_DC);
@@ -697,18 +695,18 @@ END_EXTERN_C()
#define ZEND_PUTC(c) zend_write(&(c), 1)
BEGIN_EXTERN_C()
extern ZEND_API int (*zend_printf)(const char *format, ...) ZEND_ATTRIBUTE_PTR_FORMAT(printf, 1, 2);
extern ZEND_API zend_size_t (*zend_printf)(const char *format, ...) ZEND_ATTRIBUTE_PTR_FORMAT(printf, 1, 2);
extern ZEND_API zend_write_func_t zend_write;
extern ZEND_API FILE *(*zend_fopen)(const char *filename, char **opened_path TSRMLS_DC);
extern ZEND_API void (*zend_block_interruptions)(void);
extern ZEND_API void (*zend_unblock_interruptions)(void);
extern ZEND_API void (*zend_ticks_function)(int ticks);
extern ZEND_API void (*zend_error_cb)(int type, const char *error_filename, const uint error_lineno, const char *format, va_list args) ZEND_ATTRIBUTE_PTR_FORMAT(printf, 4, 0);
extern ZEND_API void (*zend_ticks_function)(int ticks TSRMLS_DC);
extern ZEND_API void (*zend_error_cb)(int type, const char *error_filename, const zend_size_t error_lineno, const char *format, va_list args) ZEND_ATTRIBUTE_PTR_FORMAT(printf, 4, 0);
extern ZEND_API void (*zend_on_timeout)(int seconds TSRMLS_DC);
extern ZEND_API int (*zend_stream_open_function)(const char *filename, zend_file_handle *handle TSRMLS_DC);
extern int (*zend_vspprintf)(char **pbuf, size_t max_len, const char *format, va_list ap);
extern ZEND_API char *(*zend_getenv)(char *name, size_t name_len TSRMLS_DC);
extern ZEND_API char *(*zend_resolve_path)(const char *filename, int filename_len TSRMLS_DC);
extern zend_size_t (*zend_vspprintf)(char **pbuf, zend_size_t max_len, const char *format, va_list ap);
extern ZEND_API char *(*zend_getenv)(char *name, zend_size_t name_len TSRMLS_DC);
extern ZEND_API char *(*zend_resolve_path)(const char *filename, zend_size_t filename_len TSRMLS_DC);
ZEND_API void zend_error(int type, const char *format, ...) ZEND_ATTRIBUTE_FORMAT(printf, 2, 3);
@@ -735,9 +733,9 @@ END_EXTERN_C()
#endif
BEGIN_EXTERN_C()
ZEND_API void zend_message_dispatcher(long message, const void *data TSRMLS_DC);
ZEND_API void zend_message_dispatcher(zend_int_t message, const void *data TSRMLS_DC);
ZEND_API int zend_get_configuration_directive(const char *name, uint name_length, zval *contents);
ZEND_API int zend_get_configuration_directive(const char *name, zend_size_t name_length, zval *contents);
END_EXTERN_C()
/* Messages for applications of Zend */
+195 -177
View File
File diff suppressed because it is too large. Load diff
+98 -97
View File
@@ -28,7 +28,7 @@
#include "zend_operators.h"
#include "zend_variables.h"
#include "zend_execute.h"
#include "zend_types.h"
BEGIN_EXTERN_C()
@@ -171,7 +171,7 @@ typedef struct _zend_fcall_info_cache {
#define INIT_OVERLOADED_CLASS_ENTRY_EX(class_container, class_name, class_name_len, functions, handle_fcall, handle_propget, handle_propset, handle_propunset, handle_propisset) \
{ \
const char *cl_name = class_name; \
int _len = class_name_len; \
zend_size_t _len = class_name_len; \
class_container.name = zend_new_interned_string(cl_name, _len+1, 0 TSRMLS_CC); \
if (class_container.name == cl_name) { \
class_container.name = zend_strndup(cl_name, _len); \
@@ -197,6 +197,7 @@ typedef struct _zend_fcall_info_cache {
class_container.__set = handle_propset; \
class_container.__unset = handle_propunset; \
class_container.__isset = handle_propisset; \
class_container.__debugInfo = NULL; \
class_container.serialize_func = NULL; \
class_container.unserialize_func = NULL; \
class_container.serialize = NULL; \
@@ -266,7 +267,7 @@ ZEND_API int zend_parse_parameter(int flags, int arg_num TSRMLS_DC, zval **arg,
ZEND_API int zend_register_functions(zend_class_entry *scope, const zend_function_entry *functions, HashTable *function_table, int type TSRMLS_DC);
ZEND_API void zend_unregister_functions(const zend_function_entry *functions, int count, HashTable *function_table TSRMLS_DC);
ZEND_API int zend_startup_module(zend_module_entry *module_entry);
ZEND_API int zend_startup_module(zend_module_entry *module_entry TSRMLS_DC);
ZEND_API zend_module_entry* zend_register_internal_module(zend_module_entry *module_entry TSRMLS_DC);
ZEND_API zend_module_entry* zend_register_module_ex(zend_module_entry *module TSRMLS_DC);
ZEND_API int zend_startup_module_ex(zend_module_entry *module TSRMLS_DC);
@@ -280,15 +281,15 @@ ZEND_API zend_class_entry *zend_register_internal_class_ex(zend_class_entry *cla
ZEND_API zend_class_entry *zend_register_internal_interface(zend_class_entry *orig_class_entry TSRMLS_DC);
ZEND_API void zend_class_implements(zend_class_entry *class_entry TSRMLS_DC, int num_interfaces, ...);
ZEND_API int zend_register_class_alias_ex(const char *name, int name_len, zend_class_entry *ce TSRMLS_DC);
ZEND_API int zend_register_class_alias_ex(const char *name, zend_size_t name_len, zend_class_entry *ce TSRMLS_DC);
#define zend_register_class_alias(name, ce) \
zend_register_class_alias_ex(name, sizeof(name)-1, ce TSRMLS_CC)
#define zend_register_ns_class_alias(ns, name, ce) \
zend_register_class_alias_ex(ZEND_NS_NAME(ns, name), sizeof(ZEND_NS_NAME(ns, name))-1, ce TSRMLS_CC)
ZEND_API int zend_disable_function(char *function_name, uint function_name_length TSRMLS_DC);
ZEND_API int zend_disable_class(char *class_name, uint class_name_length TSRMLS_DC);
ZEND_API int zend_disable_function(char *function_name, zend_size_t function_name_length TSRMLS_DC);
ZEND_API int zend_disable_class(char *class_name, zend_size_t class_name_length TSRMLS_DC);
ZEND_API void zend_wrong_param_count(TSRMLS_D);
@@ -299,51 +300,51 @@ ZEND_API void zend_wrong_param_count(TSRMLS_D);
#define IS_CALLABLE_STRICT (IS_CALLABLE_CHECK_IS_STATIC)
ZEND_API zend_bool zend_is_callable_ex(zval *callable, zval *object_ptr, uint check_flags, char **callable_name, int *callable_name_len, zend_fcall_info_cache *fcc, char **error TSRMLS_DC);
ZEND_API zend_bool zend_is_callable_ex(zval *callable, zval *object_ptr, uint check_flags, char **callable_name, zend_size_t *callable_name_len, zend_fcall_info_cache *fcc, char **error TSRMLS_DC);
ZEND_API zend_bool zend_is_callable(zval *callable, uint check_flags, char **callable_name TSRMLS_DC);
ZEND_API zend_bool zend_make_callable(zval *callable, char **callable_name TSRMLS_DC);
ZEND_API const char *zend_get_module_version(const char *module_name);
ZEND_API int zend_get_module_started(const char *module_name);
ZEND_API int zend_declare_property(zend_class_entry *ce, const char *name, int name_length, zval *property, int access_type TSRMLS_DC);
ZEND_API int zend_declare_property_ex(zend_class_entry *ce, const char *name, int name_length, zval *property, int access_type, const char *doc_comment, int doc_comment_len TSRMLS_DC);
ZEND_API int zend_declare_property_null(zend_class_entry *ce, const char *name, int name_length, int access_type TSRMLS_DC);
ZEND_API int zend_declare_property_bool(zend_class_entry *ce, const char *name, int name_length, long value, int access_type TSRMLS_DC);
ZEND_API int zend_declare_property_long(zend_class_entry *ce, const char *name, int name_length, long value, int access_type TSRMLS_DC);
ZEND_API int zend_declare_property_double(zend_class_entry *ce, const char *name, int name_length, double value, int access_type TSRMLS_DC);
ZEND_API int zend_declare_property_string(zend_class_entry *ce, const char *name, int name_length, const char *value, int access_type TSRMLS_DC);
ZEND_API int zend_declare_property_stringl(zend_class_entry *ce, const char *name, int name_length, const char *value, int value_len, int access_type TSRMLS_DC);
ZEND_API int zend_declare_property(zend_class_entry *ce, const char *name, zend_size_t name_length, zval *property, int access_type TSRMLS_DC);
ZEND_API int zend_declare_property_ex(zend_class_entry *ce, const char *name, zend_size_t name_length, zval *property, int access_type, const char *doc_comment, zend_size_t doc_comment_len TSRMLS_DC);
ZEND_API int zend_declare_property_null(zend_class_entry *ce, const char *name, zend_size_t name_length, int access_type TSRMLS_DC);
ZEND_API int zend_declare_property_bool(zend_class_entry *ce, const char *name, zend_size_t name_length, zend_int_t value, int access_type TSRMLS_DC);
ZEND_API int zend_declare_property_int(zend_class_entry *ce, const char *name, zend_size_t name_length, zend_int_t value, int access_type TSRMLS_DC);
ZEND_API int zend_declare_property_double(zend_class_entry *ce, const char *name, zend_size_t name_length, double value, int access_type TSRMLS_DC);
ZEND_API int zend_declare_property_string(zend_class_entry *ce, const char *name, zend_size_t name_length, const char *value, int access_type TSRMLS_DC);
ZEND_API int zend_declare_property_stringl(zend_class_entry *ce, const char *name, zend_size_t name_length, const char *value, zend_size_t value_len, int access_type TSRMLS_DC);
ZEND_API int zend_declare_class_constant(zend_class_entry *ce, const char *name, size_t name_length, zval *value TSRMLS_DC);
ZEND_API int zend_declare_class_constant_null(zend_class_entry *ce, const char *name, size_t name_length TSRMLS_DC);
ZEND_API int zend_declare_class_constant_long(zend_class_entry *ce, const char *name, size_t name_length, long value TSRMLS_DC);
ZEND_API int zend_declare_class_constant_bool(zend_class_entry *ce, const char *name, size_t name_length, zend_bool value TSRMLS_DC);
ZEND_API int zend_declare_class_constant_double(zend_class_entry *ce, const char *name, size_t name_length, double value TSRMLS_DC);
ZEND_API int zend_declare_class_constant_stringl(zend_class_entry *ce, const char *name, size_t name_length, const char *value, size_t value_length TSRMLS_DC);
ZEND_API int zend_declare_class_constant_string(zend_class_entry *ce, const char *name, size_t name_length, const char *value TSRMLS_DC);
ZEND_API int zend_declare_class_constant(zend_class_entry *ce, const char *name, zend_size_t name_length, zval *value TSRMLS_DC);
ZEND_API int zend_declare_class_constant_null(zend_class_entry *ce, const char *name, zend_size_t name_length TSRMLS_DC);
ZEND_API int zend_declare_class_constant_int(zend_class_entry *ce, const char *name, zend_size_t name_length, zend_int_t value TSRMLS_DC);
ZEND_API int zend_declare_class_constant_bool(zend_class_entry *ce, const char *name, zend_size_t name_length, zend_bool value TSRMLS_DC);
ZEND_API int zend_declare_class_constant_double(zend_class_entry *ce, const char *name, zend_size_t name_length, double value TSRMLS_DC);
ZEND_API int zend_declare_class_constant_stringl(zend_class_entry *ce, const char *name, zend_size_t name_length, const char *value, zend_size_t value_length TSRMLS_DC);
ZEND_API int zend_declare_class_constant_string(zend_class_entry *ce, const char *name, zend_size_t name_length, const char *value TSRMLS_DC);
ZEND_API void zend_update_class_constants(zend_class_entry *class_type TSRMLS_DC);
ZEND_API void zend_update_property(zend_class_entry *scope, zval *object, const char *name, int name_length, zval *value TSRMLS_DC);
ZEND_API void zend_update_property_null(zend_class_entry *scope, zval *object, const char *name, int name_length TSRMLS_DC);
ZEND_API void zend_update_property_bool(zend_class_entry *scope, zval *object, const char *name, int name_length, long value TSRMLS_DC);
ZEND_API void zend_update_property_long(zend_class_entry *scope, zval *object, const char *name, int name_length, long value TSRMLS_DC);
ZEND_API void zend_update_property_double(zend_class_entry *scope, zval *object, const char *name, int name_length, double value TSRMLS_DC);
ZEND_API void zend_update_property_string(zend_class_entry *scope, zval *object, const char *name, int name_length, const char *value TSRMLS_DC);
ZEND_API void zend_update_property_stringl(zend_class_entry *scope, zval *object, const char *name, int name_length, const char *value, int value_length TSRMLS_DC);
ZEND_API void zend_update_property(zend_class_entry *scope, zval *object, const char *name, zend_size_t name_length, zval *value TSRMLS_DC);
ZEND_API void zend_update_property_null(zend_class_entry *scope, zval *object, const char *name, zend_size_t name_length TSRMLS_DC);
ZEND_API void zend_update_property_bool(zend_class_entry *scope, zval *object, const char *name, zend_size_t name_length, zend_int_t value TSRMLS_DC);
ZEND_API void zend_update_property_int(zend_class_entry *scope, zval *object, const char *name, zend_size_t name_length, zend_int_t value TSRMLS_DC);
ZEND_API void zend_update_property_double(zend_class_entry *scope, zval *object, const char *name, zend_size_t name_length, double value TSRMLS_DC);
ZEND_API void zend_update_property_string(zend_class_entry *scope, zval *object, const char *name, zend_size_t name_length, const char *value TSRMLS_DC);
ZEND_API void zend_update_property_stringl(zend_class_entry *scope, zval *object, const char *name, zend_size_t name_length, const char *value, zend_size_t value_length TSRMLS_DC);
ZEND_API int zend_update_static_property(zend_class_entry *scope, const char *name, int name_length, zval *value TSRMLS_DC);
ZEND_API int zend_update_static_property_null(zend_class_entry *scope, const char *name, int name_length TSRMLS_DC);
ZEND_API int zend_update_static_property_bool(zend_class_entry *scope, const char *name, int name_length, long value TSRMLS_DC);
ZEND_API int zend_update_static_property_long(zend_class_entry *scope, const char *name, int name_length, long value TSRMLS_DC);
ZEND_API int zend_update_static_property_double(zend_class_entry *scope, const char *name, int name_length, double value TSRMLS_DC);
ZEND_API int zend_update_static_property_string(zend_class_entry *scope, const char *name, int name_length, const char *value TSRMLS_DC);
ZEND_API int zend_update_static_property_stringl(zend_class_entry *scope, const char *name, int name_length, const char *value, int value_length TSRMLS_DC);
ZEND_API int zend_update_static_property(zend_class_entry *scope, const char *name, zend_size_t name_length, zval *value TSRMLS_DC);
ZEND_API int zend_update_static_property_null(zend_class_entry *scope, const char *name, zend_size_t name_length TSRMLS_DC);
ZEND_API int zend_update_static_property_bool(zend_class_entry *scope, const char *name, zend_size_t name_length, zend_int_t value TSRMLS_DC);
ZEND_API int zend_update_static_property_int(zend_class_entry *scope, const char *name, zend_size_t name_length, zend_int_t value TSRMLS_DC);
ZEND_API int zend_update_static_property_double(zend_class_entry *scope, const char *name, zend_size_t name_length, double value TSRMLS_DC);
ZEND_API int zend_update_static_property_string(zend_class_entry *scope, const char *name, zend_size_t name_length, const char *value TSRMLS_DC);
ZEND_API int zend_update_static_property_stringl(zend_class_entry *scope, const char *name, zend_size_t name_length, const char *value, zend_size_t value_length TSRMLS_DC);
ZEND_API zval *zend_read_property(zend_class_entry *scope, zval *object, const char *name, int name_length, zend_bool silent TSRMLS_DC);
ZEND_API zval *zend_read_property(zend_class_entry *scope, zval *object, const char *name, zend_size_t name_length, zend_bool silent TSRMLS_DC);
ZEND_API zval *zend_read_static_property(zend_class_entry *scope, const char *name, int name_length, zend_bool silent TSRMLS_DC);
ZEND_API zval *zend_read_static_property(zend_class_entry *scope, const char *name, zend_size_t name_length, zend_bool silent TSRMLS_DC);
ZEND_API zend_class_entry *zend_get_class_entry(const zval *zobject TSRMLS_DC);
ZEND_API int zend_get_object_classname(const zval *object, const char **class_name, zend_uint *class_name_len TSRMLS_DC);
ZEND_API int zend_get_object_classname(const zval *object, const char **class_name, zend_size_t *class_name_len TSRMLS_DC);
ZEND_API char *zend_get_type_by_const(int type);
#define getThis() (this_ptr)
@@ -364,7 +365,7 @@ ZEND_API char *zend_get_type_by_const(int type);
#define object_init(arg) _object_init((arg) ZEND_FILE_LINE_CC TSRMLS_CC)
#define object_init_ex(arg, ce) _object_init_ex((arg), (ce) ZEND_FILE_LINE_CC TSRMLS_CC)
#define object_and_properties_init(arg, ce, properties) _object_and_properties_init((arg), (ce), (properties) ZEND_FILE_LINE_CC TSRMLS_CC)
ZEND_API int _array_init(zval *arg, uint size ZEND_FILE_LINE_DC);
ZEND_API int _array_init(zval *arg, zend_uint_t size ZEND_FILE_LINE_DC);
ZEND_API int _object_init(zval *arg ZEND_FILE_LINE_DC TSRMLS_DC);
ZEND_API int _object_init_ex(zval *arg, zend_class_entry *ce ZEND_FILE_LINE_DC TSRMLS_DC);
ZEND_API int _object_and_properties_init(zval *arg, zend_class_entry *ce, HashTable *properties ZEND_FILE_LINE_DC TSRMLS_DC);
@@ -375,16 +376,16 @@ ZEND_API void zend_merge_properties(zval *obj, HashTable *properties, int destro
/* no longer supported */
ZEND_API int add_assoc_function(zval *arg, const char *key, void (*function_ptr)(INTERNAL_FUNCTION_PARAMETERS));
ZEND_API int add_assoc_long_ex(zval *arg, const char *key, uint key_len, long n);
ZEND_API int add_assoc_null_ex(zval *arg, const char *key, uint key_len);
ZEND_API int add_assoc_bool_ex(zval *arg, const char *key, uint key_len, int b);
ZEND_API int add_assoc_resource_ex(zval *arg, const char *key, uint key_len, int r);
ZEND_API int add_assoc_double_ex(zval *arg, const char *key, uint key_len, double d);
ZEND_API int add_assoc_string_ex(zval *arg, const char *key, uint key_len, char *str, int duplicate);
ZEND_API int add_assoc_stringl_ex(zval *arg, const char *key, uint key_len, char *str, uint length, int duplicate);
ZEND_API int add_assoc_zval_ex(zval *arg, const char *key, uint key_len, zval *value);
ZEND_API int add_assoc_int_ex(zval *arg, const char *key, zend_size_t key_len, zend_int_t n);
ZEND_API int add_assoc_null_ex(zval *arg, const char *key, zend_size_t key_len);
ZEND_API int add_assoc_bool_ex(zval *arg, const char *key, zend_size_t key_len, int b);
ZEND_API int add_assoc_resource_ex(zval *arg, const char *key, zend_size_t key_len, int r);
ZEND_API int add_assoc_double_ex(zval *arg, const char *key, zend_size_t key_len, double d);
ZEND_API int add_assoc_string_ex(zval *arg, const char *key, zend_size_t key_len, char *str, int duplicate);
ZEND_API int add_assoc_stringl_ex(zval *arg, const char *key, zend_size_t key_len, char *str, zend_size_t length, int duplicate);
ZEND_API int add_assoc_zval_ex(zval *arg, const char *key, zend_size_t key_len, zval *value);
#define add_assoc_long(__arg, __key, __n) add_assoc_long_ex(__arg, __key, strlen(__key)+1, __n)
#define add_assoc_int(__arg, __key, __n) add_assoc_int_ex(__arg, __key, strlen(__key)+1, __n)
#define add_assoc_null(__arg, __key) add_assoc_null_ex(__arg, __key, strlen(__key) + 1)
#define add_assoc_bool(__arg, __key, __b) add_assoc_bool_ex(__arg, __key, strlen(__key)+1, __b)
#define add_assoc_resource(__arg, __key, __r) add_assoc_resource_ex(__arg, __key, strlen(__key)+1, __r)
@@ -399,47 +400,47 @@ ZEND_API int add_assoc_zval_ex(zval *arg, const char *key, uint key_len, zval *v
#define add_next_index_unset(__arg) add_next_index_null(__arg)
#define add_property_unset(__arg, __key) add_property_null(__arg, __key)
ZEND_API int add_index_long(zval *arg, ulong idx, long n);
ZEND_API int add_index_null(zval *arg, ulong idx);
ZEND_API int add_index_bool(zval *arg, ulong idx, int b);
ZEND_API int add_index_resource(zval *arg, ulong idx, int r);
ZEND_API int add_index_double(zval *arg, ulong idx, double d);
ZEND_API int add_index_string(zval *arg, ulong idx, const char *str, int duplicate);
ZEND_API int add_index_stringl(zval *arg, ulong idx, const char *str, uint length, int duplicate);
ZEND_API int add_index_zval(zval *arg, ulong index, zval *value);
ZEND_API int add_index_int(zval *arg, zend_uint_t idx, zend_int_t n);
ZEND_API int add_index_null(zval *arg, zend_uint_t idx);
ZEND_API int add_index_bool(zval *arg, zend_uint_t idx, int b);
ZEND_API int add_index_resource(zval *arg, zend_uint_t idx, int r);
ZEND_API int add_index_double(zval *arg, zend_uint_t idx, double d);
ZEND_API int add_index_string(zval *arg, zend_uint_t idx, const char *str, int duplicate);
ZEND_API int add_index_stringl(zval *arg, zend_uint_t idx, const char *str, zend_size_t length, int duplicate);
ZEND_API int add_index_zval(zval *arg, zend_uint_t index, zval *value);
ZEND_API int add_next_index_long(zval *arg, long n);
ZEND_API int add_next_index_int(zval *arg, zend_int_t n);
ZEND_API int add_next_index_null(zval *arg);
ZEND_API int add_next_index_bool(zval *arg, int b);
ZEND_API int add_next_index_resource(zval *arg, int r);
ZEND_API int add_next_index_double(zval *arg, double d);
ZEND_API int add_next_index_string(zval *arg, const char *str, int duplicate);
ZEND_API int add_next_index_stringl(zval *arg, const char *str, uint length, int duplicate);
ZEND_API int add_next_index_stringl(zval *arg, const char *str, zend_size_t length, int duplicate);
ZEND_API int add_next_index_zval(zval *arg, zval *value);
ZEND_API int add_get_assoc_string_ex(zval *arg, const char *key, uint key_len, const char *str, void **dest, int duplicate);
ZEND_API int add_get_assoc_stringl_ex(zval *arg, const char *key, uint key_len, const char *str, uint length, void **dest, int duplicate);
ZEND_API int add_get_assoc_string_ex(zval *arg, const char *key, zend_size_t key_len, const char *str, void **dest, int duplicate);
ZEND_API int add_get_assoc_stringl_ex(zval *arg, const char *key, zend_size_t key_len, const char *str, zend_size_t length, void **dest, int duplicate);
#define add_get_assoc_string(__arg, __key, __str, __dest, __duplicate) add_get_assoc_string_ex(__arg, __key, strlen(__key)+1, __str, __dest, __duplicate)
#define add_get_assoc_stringl(__arg, __key, __str, __length, __dest, __duplicate) add_get_assoc_stringl_ex(__arg, __key, strlen(__key)+1, __str, __length, __dest, __duplicate)
ZEND_API int add_get_index_long(zval *arg, ulong idx, long l, void **dest);
ZEND_API int add_get_index_double(zval *arg, ulong idx, double d, void **dest);
ZEND_API int add_get_index_string(zval *arg, ulong idx, const char *str, void **dest, int duplicate);
ZEND_API int add_get_index_stringl(zval *arg, ulong idx, const char *str, uint length, void **dest, int duplicate);
ZEND_API int add_get_index_int(zval *arg, zend_uint_t idx, zend_int_t l, void **dest);
ZEND_API int add_get_index_double(zval *arg, zend_uint_t idx, double d, void **dest);
ZEND_API int add_get_index_string(zval *arg, zend_uint_t idx, const char *str, void **dest, int duplicate);
ZEND_API int add_get_index_stringl(zval *arg, zend_uint_t idx, const char *str, zend_size_t length, void **dest, int duplicate);
ZEND_API int array_set_zval_key(HashTable *ht, zval *key, zval *value);
ZEND_API int add_property_long_ex(zval *arg, const char *key, uint key_len, long l TSRMLS_DC);
ZEND_API int add_property_null_ex(zval *arg, const char *key, uint key_len TSRMLS_DC);
ZEND_API int add_property_bool_ex(zval *arg, const char *key, uint key_len, int b TSRMLS_DC);
ZEND_API int add_property_resource_ex(zval *arg, const char *key, uint key_len, long r TSRMLS_DC);
ZEND_API int add_property_double_ex(zval *arg, const char *key, uint key_len, double d TSRMLS_DC);
ZEND_API int add_property_string_ex(zval *arg, const char *key, uint key_len, const char *str, int duplicate TSRMLS_DC);
ZEND_API int add_property_stringl_ex(zval *arg, const char *key, uint key_len, const char *str, uint length, int duplicate TSRMLS_DC);
ZEND_API int add_property_zval_ex(zval *arg, const char *key, uint key_len, zval *value TSRMLS_DC);
ZEND_API int add_property_int_ex(zval *arg, const char *key, zend_size_t key_len, zend_int_t l TSRMLS_DC);
ZEND_API int add_property_null_ex(zval *arg, const char *key, zend_size_t key_len TSRMLS_DC);
ZEND_API int add_property_bool_ex(zval *arg, const char *key, zend_size_t key_len, int b TSRMLS_DC);
ZEND_API int add_property_resource_ex(zval *arg, const char *key, zend_size_t key_len, zend_int_t r TSRMLS_DC);
ZEND_API int add_property_double_ex(zval *arg, const char *key, zend_size_t key_len, double d TSRMLS_DC);
ZEND_API int add_property_string_ex(zval *arg, const char *key, zend_size_t key_len, const char *str, int duplicate TSRMLS_DC);
ZEND_API int add_property_stringl_ex(zval *arg, const char *key, zend_size_t key_len, const char *str, zend_size_t length, int duplicate TSRMLS_DC);
ZEND_API int add_property_zval_ex(zval *arg, const char *key, zend_size_t key_len, zval *value TSRMLS_DC);
#define add_property_long(__arg, __key, __n) add_property_long_ex(__arg, __key, strlen(__key)+1, __n TSRMLS_CC)
#define add_property_int(__arg, __key, __n) add_property_int_ex(__arg, __key, strlen(__key)+1, __n TSRMLS_CC)
#define add_property_null(__arg, __key) add_property_null_ex(__arg, __key, strlen(__key) + 1 TSRMLS_CC)
#define add_property_bool(__arg, __key, __b) add_property_bool_ex(__arg, __key, strlen(__key)+1, __b TSRMLS_CC)
#define add_property_resource(__arg, __key, __r) add_property_resource_ex(__arg, __key, strlen(__key)+1, __r TSRMLS_CC)
@@ -511,19 +512,19 @@ ZEND_API int zend_fcall_info_call(zend_fcall_info *fci, zend_fcall_info_cache *f
ZEND_API int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TSRMLS_DC);
ZEND_API int zend_set_hash_symbol(zval *symbol, const char *name, int name_length, zend_bool is_ref, int num_symbol_tables, ...);
ZEND_API int zend_set_hash_symbol(zval *symbol, const char *name, zend_size_t name_length, zend_bool is_ref, int num_symbol_tables, ...);
ZEND_API void zend_delete_variable(zend_execute_data *ex, HashTable *ht, const char *name, int name_len, ulong hash_value TSRMLS_DC);
ZEND_API void zend_delete_variable(zend_execute_data *ex, HashTable *ht, const char *name, zend_size_t name_len, zend_uint_t hash_value TSRMLS_DC);
ZEND_API int zend_delete_global_variable(const char *name, int name_len TSRMLS_DC);
ZEND_API int zend_delete_global_variable(const char *name, zend_size_t name_len TSRMLS_DC);
ZEND_API int zend_delete_global_variable_ex(const char *name, int name_len, ulong hash_value TSRMLS_DC);
ZEND_API int zend_delete_global_variable_ex(const char *name, zend_size_t name_len, zend_uint_t hash_value TSRMLS_DC);
ZEND_API void zend_reset_all_cv(HashTable *symbol_table TSRMLS_DC);
ZEND_API void zend_rebuild_symbol_table(TSRMLS_D);
ZEND_API const char* zend_find_alias_name(zend_class_entry *ce, const char *name, zend_uint len);
ZEND_API const char* zend_find_alias_name(zend_class_entry *ce, const char *name, zend_size_t len);
ZEND_API const char* zend_resolve_method_name(zend_class_entry *ce, zend_function *f);
#define add_method(arg, key, method) add_assoc_function((arg), (key), (method))
@@ -534,26 +535,26 @@ END_EXTERN_C()
#if ZEND_DEBUG
#define CHECK_ZVAL_STRING(z) \
if (Z_STRVAL_P(z)[ Z_STRLEN_P(z) ] != '\0') { zend_error(E_WARNING, "String is not zero-terminated (%s)", Z_STRVAL_P(z)); }
if (Z_STRVAL_P(z)[ Z_STRSIZE_P(z) ] != '\0') { zend_error(E_WARNING, "String is not zero-terminated (%s)", Z_STRVAL_P(z)); }
#define CHECK_ZVAL_STRING_REL(z) \
if (Z_STRVAL_P(z)[ Z_STRLEN_P(z) ] != '\0') { zend_error(E_WARNING, "String is not zero-terminated (%s) (source: %s:%d)", Z_STRVAL_P(z) ZEND_FILE_LINE_RELAY_CC); }
if (Z_STRVAL_P(z)[ Z_STRSIZE_P(z) ] != '\0') { zend_error(E_WARNING, "String is not zero-terminated (%s) (source: %s:%d)", Z_STRVAL_P(z) ZEND_FILE_LINE_RELAY_CC); }
#else
#define CHECK_ZVAL_STRING(z)
#define CHECK_ZVAL_STRING_REL(z)
#endif
#define CHECK_ZVAL_NULL_PATH(p) (Z_STRLEN_P(p) != strlen(Z_STRVAL_P(p)))
#define CHECK_ZVAL_NULL_PATH(p) (Z_STRSIZE_P(p) != strlen(Z_STRVAL_P(p)))
#define CHECK_NULL_PATH(p, l) (strlen(p) != l)
#define ZVAL_RESOURCE(z, l) do { \
zval *__z = (z); \
Z_LVAL_P(__z) = l; \
Z_IVAL_P(__z) = l; \
Z_TYPE_P(__z) = IS_RESOURCE;\
} while (0)
#define ZVAL_BOOL(z, b) do { \
zval *__z = (z); \
Z_LVAL_P(__z) = ((b) != 0); \
Z_IVAL_P(__z) = ((b) != 0); \
Z_TYPE_P(__z) = IS_BOOL; \
} while (0)
@@ -561,10 +562,10 @@ END_EXTERN_C()
Z_TYPE_P(z) = IS_NULL; \
}
#define ZVAL_LONG(z, l) { \
#define ZVAL_INT(z, l) { \
zval *__z = (z); \
Z_LVAL_P(__z) = l; \
Z_TYPE_P(__z) = IS_LONG; \
Z_IVAL_P(__z) = l; \
Z_TYPE_P(__z) = IS_INT; \
}
#define ZVAL_DOUBLE(z, d) { \
@@ -576,22 +577,22 @@ END_EXTERN_C()
#define ZVAL_STRING(z, s, duplicate) do { \
const char *__s=(s); \
zval *__z = (z); \
Z_STRLEN_P(__z) = strlen(__s); \
Z_STRVAL_P(__z) = (duplicate?estrndup(__s, Z_STRLEN_P(__z)):(char*)__s);\
Z_STRSIZE_P(__z) = (zend_size_t) strlen(__s); \
Z_STRVAL_P(__z) = (duplicate?estrndup(__s, Z_STRSIZE_P(__z)):(char*)__s);\
Z_TYPE_P(__z) = IS_STRING; \
} while (0)
#define ZVAL_STRINGL(z, s, l, duplicate) do { \
const char *__s=(s); int __l=l; \
const char *__s=(s); zend_size_t __l= (zend_size_t) (l); \
zval *__z = (z); \
Z_STRLEN_P(__z) = __l; \
Z_STRSIZE_P(__z) = __l; \
Z_STRVAL_P(__z) = (duplicate?estrndup(__s, __l):(char*)__s);\
Z_TYPE_P(__z) = IS_STRING; \
} while (0)
#define ZVAL_EMPTY_STRING(z) do { \
zval *__z = (z); \
Z_STRLEN_P(__z) = 0; \
Z_STRSIZE_P(__z) = 0; \
Z_STRVAL_P(__z) = STR_EMPTY_ALLOC();\
Z_TYPE_P(__z) = IS_STRING; \
} while (0)
@@ -617,7 +618,7 @@ END_EXTERN_C()
#define RETVAL_RESOURCE(l) ZVAL_RESOURCE(return_value, l)
#define RETVAL_BOOL(b) ZVAL_BOOL(return_value, b)
#define RETVAL_NULL() ZVAL_NULL(return_value)
#define RETVAL_LONG(l) ZVAL_LONG(return_value, l)
#define RETVAL_INT(l) ZVAL_INT(return_value, l)
#define RETVAL_DOUBLE(d) ZVAL_DOUBLE(return_value, d)
#define RETVAL_STRING(s, duplicate) ZVAL_STRING(return_value, s, duplicate)
#define RETVAL_STRINGL(s, l, duplicate) ZVAL_STRINGL(return_value, s, l, duplicate)
@@ -629,7 +630,7 @@ END_EXTERN_C()
#define RETURN_RESOURCE(l) { RETVAL_RESOURCE(l); return; }
#define RETURN_BOOL(b) { RETVAL_BOOL(b); return; }
#define RETURN_NULL() { RETVAL_NULL(); return;}
#define RETURN_LONG(l) { RETVAL_LONG(l); return; }
#define RETURN_INT(l) { RETVAL_INT(l); return; }
#define RETURN_DOUBLE(d) { RETVAL_DOUBLE(d); return; }
#define RETURN_STRING(s, duplicate) { RETVAL_STRING(s, duplicate); return; }
#define RETURN_STRINGL(s, l, duplicate) { RETVAL_STRINGL(s, l, duplicate); return; }
@@ -668,11 +669,11 @@ END_EXTERN_C()
} \
}
#define SET_VAR_LONG(n, v) { \
#define SET_VAR_INT(n, v) { \
{ \
zval *var; \
ALLOC_ZVAL(var); \
ZVAL_LONG(var, v); \
ZVAL_INT(var, v); \
ZEND_SET_GLOBAL_VAR(n, var); \
} \
}
@@ -728,7 +729,7 @@ END_EXTERN_C()
#define ZEND_DEFINE_PROPERTY(class_ptr, name, value, mask) \
{ \
char *_name = (name); \
int namelen = strlen(_name); \
zend_size_t namelen = strlen(_name); \
zend_declare_property(class_ptr, _name, namelen, value, mask TSRMLS_CC); \
}
+29 -31
View File
@@ -433,7 +433,7 @@ struct _zend_mm_heap {
int overflow;
int internal;
#if ZEND_MM_CACHE
unsigned int cached;
size_t cached;
zend_mm_free_block *cache[ZEND_MM_NUM_BUCKETS];
#endif
zend_mm_free_block *free_buckets[ZEND_MM_NUM_BUCKETS*2];
@@ -488,16 +488,16 @@ static unsigned int _zend_mm_cookie = 0;
#define ZEND_MM_RESERVE_SIZE (8*1024)
#ifdef _WIN64
# define ZEND_MM_LONG_CONST(x) (x##i64)
# define ZEND_MM_INT_CONST(x) (x##i64)
#else
# define ZEND_MM_LONG_CONST(x) (x##L)
# define ZEND_MM_INT_CONST(x) (x##L)
#endif
#define ZEND_MM_TYPE_MASK ZEND_MM_LONG_CONST(0x3)
#define ZEND_MM_TYPE_MASK ZEND_MM_INT_CONST(0x3)
#define ZEND_MM_FREE_BLOCK ZEND_MM_LONG_CONST(0x0)
#define ZEND_MM_USED_BLOCK ZEND_MM_LONG_CONST(0x1)
#define ZEND_MM_GUARD_BLOCK ZEND_MM_LONG_CONST(0x3)
#define ZEND_MM_FREE_BLOCK ZEND_MM_INT_CONST(0x0)
#define ZEND_MM_USED_BLOCK ZEND_MM_INT_CONST(0x1)
#define ZEND_MM_GUARD_BLOCK ZEND_MM_INT_CONST(0x3)
#define ZEND_MM_BLOCK(b, type, size) do { \
size_t _size = (size); \
@@ -615,11 +615,11 @@ static unsigned int _zend_mm_cookie = 0;
# define END_MAGIC_SIZE sizeof(unsigned int)
# define ZEND_MM_SET_BLOCK_SIZE(block, __size) do { \
char *p; \
char *__p; \
((zend_mm_block*)(block))->debug.size = (__size); \
p = ZEND_MM_END_MAGIC_PTR(block); \
__p = ZEND_MM_END_MAGIC_PTR(block); \
((zend_mm_block*)(block))->debug.start_magic = _mem_block_start_magic; \
memcpy(p, &_mem_block_end_magic, END_MAGIC_SIZE); \
memcpy(__p, &_mem_block_end_magic, END_MAGIC_SIZE); \
} while (0)
static unsigned int _mem_block_start_magic = 0;
@@ -742,7 +742,7 @@ static inline void zend_mm_add_to_free_list(zend_mm_heap *heap, zend_mm_free_blo
*p = mm_block;
mm_block->parent = p;
mm_block->prev_free_block = mm_block->next_free_block = mm_block;
heap->large_free_bitmap |= (ZEND_MM_LONG_CONST(1) << index);
heap->large_free_bitmap |= (ZEND_MM_INT_CONST(1) << index);
} else {
size_t m;
@@ -775,7 +775,7 @@ static inline void zend_mm_add_to_free_list(zend_mm_heap *heap, zend_mm_free_blo
prev = ZEND_MM_SMALL_FREE_BUCKET(heap, index);
if (prev->prev_free_block == prev) {
heap->free_bitmap |= (ZEND_MM_LONG_CONST(1) << index);
heap->free_bitmap |= (ZEND_MM_INT_CONST(1) << index);
}
next = prev->next_free_block;
@@ -809,7 +809,7 @@ static inline void zend_mm_remove_from_free_list(zend_mm_heap *heap, zend_mm_fre
ZEND_MM_CHECK_TREE(mm_block);
*mm_block->parent = NULL;
if (mm_block->parent == &heap->large_free_buckets[index]) {
heap->large_free_bitmap &= ~(ZEND_MM_LONG_CONST(1) << index);
heap->large_free_bitmap &= ~(ZEND_MM_INT_CONST(1) << index);
}
} else {
while (*(cp = &(prev->child[prev->child[1] != NULL])) != NULL) {
@@ -847,7 +847,7 @@ subst_block:
size_t index = ZEND_MM_BUCKET_INDEX(ZEND_MM_FREE_BLOCK_SIZE(mm_block));
if (EXPECTED(heap->free_buckets[index*2] == heap->free_buckets[index*2+1])) {
heap->free_bitmap &= ~(ZEND_MM_LONG_CONST(1) << index);
heap->free_bitmap &= ~(ZEND_MM_INT_CONST(1) << index);
}
}
} else if (UNEXPECTED(mm_block->parent == ZEND_MM_REST_BLOCK)) {
@@ -1116,7 +1116,7 @@ ZEND_API zend_mm_heap *zend_mm_startup_ex(const zend_mm_mem_handlers *handlers,
heap->real_size = 0;
heap->overflow = 0;
heap->real_peak = 0;
heap->limit = ZEND_MM_LONG_CONST(1)<<(ZEND_MM_NUM_BUCKETS-2);
heap->limit = ZEND_MM_INT_CONST(1)<<(ZEND_MM_NUM_BUCKETS-2);
heap->size = 0;
heap->peak = 0;
heap->internal = internal;
@@ -1231,9 +1231,9 @@ ZEND_API zend_mm_heap *zend_mm_startup(void)
}
#if ZEND_DEBUG
static long zend_mm_find_leaks(zend_mm_segment *segment, zend_mm_block *b)
static zend_int_t zend_mm_find_leaks(zend_mm_segment *segment, zend_mm_block *b)
{
long leaks = 0;
zend_int_t leaks = 0;
zend_mm_block *p, *q;
p = ZEND_MM_NEXT_BLOCK(b);
@@ -1291,7 +1291,7 @@ static void zend_mm_check_leaks(zend_mm_heap *heap TSRMLS_DC)
}
if (!ZEND_MM_IS_FREE_BLOCK(p)) {
if (p->magic == MEM_BLOCK_VALID) {
long repeated;
zend_int_t repeated;
zend_leak_info leak;
ZEND_MM_SET_MAGIC(p, MEM_BLOCK_LEAK);
@@ -1745,7 +1745,7 @@ static void zend_mm_safe_error(zend_mm_heap *heap,
size_t limit,
#if ZEND_DEBUG
const char *filename,
uint lineno,
zend_uint_t lineno,
#endif
size_t size)
{
@@ -1791,7 +1791,7 @@ static void zend_mm_safe_error(zend_mm_heap *heap,
lineno,
#endif
size);
fprintf(stderr, " in %s on line %d\n", error_filename, error_lineno);
fprintf(stderr, " in %s on line " ZEND_UINT_FMT "\n", error_filename, error_lineno);
}
/* See http://support.microsoft.com/kb/190351 */
#ifdef PHP_WIN32
@@ -1831,7 +1831,7 @@ static zend_mm_free_block *zend_mm_search_large_block(zend_mm_heap *heap, size_t
best_size = ZEND_MM_FREE_BLOCK_SIZE(p);
best_fit = p;
}
if ((m & (ZEND_MM_LONG_CONST(1) << (ZEND_MM_NUM_BUCKETS-1))) == 0) {
if ((m & (ZEND_MM_INT_CONST(1) << (ZEND_MM_NUM_BUCKETS-1))) == 0) {
if (p->child[1]) {
rst = p->child[1];
}
@@ -1973,9 +1973,9 @@ static void *_zend_mm_alloc_int(zend_mm_heap *heap, size_t size ZEND_FILE_LINE_D
#endif
HANDLE_UNBLOCK_INTERRUPTIONS();
#if ZEND_DEBUG
zend_mm_safe_error(heap, "Allowed memory size of %ld bytes exhausted at %s:%d (tried to allocate %lu bytes)", heap->limit, __zend_filename, __zend_lineno, size);
zend_mm_safe_error(heap, "Allowed memory size of " ZEND_INT_FMT " bytes exhausted at %s:%d (tried to allocate " ZEND_UINT_FMT " bytes)", heap->limit, __zend_filename, __zend_lineno, size);
#else
zend_mm_safe_error(heap, "Allowed memory size of %ld bytes exhausted (tried to allocate %lu bytes)", heap->limit, size);
zend_mm_safe_error(heap, "Allowed memory size of " ZEND_INT_FMT " bytes exhausted (tried to allocate " ZEND_UINT_FMT " bytes)", heap->limit, size);
#endif
}
@@ -2286,9 +2286,9 @@ realloc_segment:
#endif
HANDLE_UNBLOCK_INTERRUPTIONS();
#if ZEND_DEBUG
zend_mm_safe_error(heap, "Allowed memory size of %ld bytes exhausted at %s:%d (tried to allocate %ld bytes)", heap->limit, __zend_filename, __zend_lineno, size);
zend_mm_safe_error(heap, "Allowed memory size of " ZEND_INT_FMT " bytes exhausted at %s:%d (tried to allocate " ZEND_UINT_FMT " bytes)", heap->limit, __zend_filename, __zend_lineno, size);
#else
zend_mm_safe_error(heap, "Allowed memory size of %ld bytes exhausted (tried to allocate %ld bytes)", heap->limit, size);
zend_mm_safe_error(heap, "Allowed memory size of " ZEND_INT_FMT " bytes exhausted (tried to allocate " ZEND_UINT_FMT " bytes)", heap->limit, size);
#endif
return NULL;
}
@@ -2619,7 +2619,7 @@ ZEND_API void *_ecalloc(size_t nmemb, size_t size ZEND_FILE_LINE_DC ZEND_FILE_LI
ZEND_API char *_estrdup(const char *s ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC)
{
int length;
zend_size_t length;
char *p;
#ifdef ZEND_SIGNALS
TSRMLS_FETCH();
@@ -2638,7 +2638,7 @@ ZEND_API char *_estrdup(const char *s ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC)
return p;
}
ZEND_API char *_estrndup(const char *s, uint length ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC)
ZEND_API char *_estrndup(const char *s, zend_size_t length ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC)
{
char *p;
#ifdef ZEND_SIGNALS
@@ -2659,7 +2659,7 @@ ZEND_API char *_estrndup(const char *s, uint length ZEND_FILE_LINE_DC ZEND_FILE_
}
ZEND_API char *zend_strndup(const char *s, uint length)
ZEND_API char *zend_strndup(const char *s, zend_size_t length)
{
char *p;
#ifdef ZEND_SIGNALS
@@ -2682,10 +2682,8 @@ ZEND_API char *zend_strndup(const char *s, uint length)
}
ZEND_API int zend_set_memory_limit(size_t memory_limit)
ZEND_API int zend_set_memory_limit(size_t memory_limit TSRMLS_DC)
{
TSRMLS_FETCH();
AG(mm_heap)->limit = (memory_limit >= AG(mm_heap)->block_size) ? memory_limit : AG(mm_heap)->block_size;
return SUCCESS;
+11 -10
View File
@@ -26,20 +26,21 @@
#include "../TSRM/TSRM.h"
#include "zend.h"
#include "zend_types.h"
#ifndef ZEND_MM_ALIGNMENT
# define ZEND_MM_ALIGNMENT 8
# define ZEND_MM_ALIGNMENT_LOG2 3
#elif ZEND_MM_ALIGNMENT < 4
# define ZEND_MM_ALIGNMENT Z_I(8)
# define ZEND_MM_ALIGNMENT_LOG2 Z_I(3)
#elif ZEND_MM_ALIGNMENT < Z_I(4)
# undef ZEND_MM_ALIGNMENT
# undef ZEND_MM_ALIGNMENT_LOG2
# define ZEND_MM_ALIGNMENT 4
# define ZEND_MM_ALIGNMENT_LOG2 2
# define ZEND_MM_ALIGNMENT Z_I(4)
# define ZEND_MM_ALIGNMENT_LOG2 Z_I(2)
#endif
#define ZEND_MM_ALIGNMENT_MASK ~(ZEND_MM_ALIGNMENT-1)
#define ZEND_MM_ALIGNMENT_MASK ~(ZEND_MM_ALIGNMENT-Z_I(1))
#define ZEND_MM_ALIGNED_SIZE(size) (((size) + ZEND_MM_ALIGNMENT - 1) & ZEND_MM_ALIGNMENT_MASK)
#define ZEND_MM_ALIGNED_SIZE(size) (((size) + ZEND_MM_ALIGNMENT - Z_I(1)) & ZEND_MM_ALIGNMENT_MASK)
typedef struct _zend_leak_info {
void *addr;
@@ -52,7 +53,7 @@ typedef struct _zend_leak_info {
BEGIN_EXTERN_C()
ZEND_API char *zend_strndup(const char *s, unsigned int length) ZEND_ATTRIBUTE_MALLOC;
ZEND_API char *zend_strndup(const char *s, zend_size_t length) ZEND_ATTRIBUTE_MALLOC;
ZEND_API void *_emalloc(size_t size ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC) ZEND_ATTRIBUTE_MALLOC ZEND_ATTRIBUTE_ALLOC_SIZE(1);
ZEND_API void *_safe_emalloc(size_t nmemb, size_t size, size_t offset ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC) ZEND_ATTRIBUTE_MALLOC;
@@ -63,7 +64,7 @@ ZEND_API void *_erealloc(void *ptr, size_t size, int allow_failure ZEND_FILE_LIN
ZEND_API void *_safe_erealloc(void *ptr, size_t nmemb, size_t size, size_t offset ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC);
ZEND_API void *_safe_realloc(void *ptr, size_t nmemb, size_t size, size_t offset);
ZEND_API char *_estrdup(const char *s ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC) ZEND_ATTRIBUTE_MALLOC;
ZEND_API char *_estrndup(const char *s, unsigned int length ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC) ZEND_ATTRIBUTE_MALLOC;
ZEND_API char *_estrndup(const char *s, zend_size_t length ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC) ZEND_ATTRIBUTE_MALLOC;
ZEND_API size_t _zend_mem_block_size(void *ptr TSRMLS_DC ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC);
/* Standard wrapper macros */
@@ -139,7 +140,7 @@ inline static void * __zend_realloc(void *p, size_t len)
#define safe_estrdup(ptr) ((ptr)?(estrdup(ptr)):STR_EMPTY_ALLOC())
#define safe_estrndup(ptr, len) ((ptr)?(estrndup((ptr), (len))):STR_EMPTY_ALLOC())
ZEND_API int zend_set_memory_limit(size_t memory_limit);
ZEND_API int zend_set_memory_limit(size_t memory_limit TSRMLS_DC);
ZEND_API void start_memory_manager(TSRMLS_D);
ZEND_API void shutdown_memory_manager(int silent, int full_shutdown TSRMLS_DC);
+85 -29
View File
@@ -63,6 +63,27 @@ ZEND_API zend_ast* zend_ast_create_ternary(uint kind, zend_ast *op0, zend_ast *o
return ast;
}
ZEND_API zend_ast* zend_ast_create_dynamic(uint kind)
{
zend_ast *ast = emalloc(sizeof(zend_ast) + sizeof(zend_ast*) * 3); /* use 4 children as deafult */
ast->kind = kind;
ast->children = 0;
return ast;
}
ZEND_API void zend_ast_dynamic_add(zend_ast **ast, zend_ast *op)
{
if ((*ast)->children >= 4 && (*ast)->children == ((*ast)->children & -(*ast)->children)) {
*ast = erealloc(*ast, sizeof(zend_ast) + sizeof(zend_ast*) * ((*ast)->children * 2 + 1));
}
(&(*ast)->u.child)[(*ast)->children++] = op;
}
ZEND_API void zend_ast_dynamic_shrink(zend_ast **ast)
{
*ast = erealloc(*ast, sizeof(zend_ast) + sizeof(zend_ast*) * ((*ast)->children - 1));
}
ZEND_API int zend_ast_is_ct_constant(zend_ast *ast)
{
int i;
@@ -107,6 +128,13 @@ ZEND_API void zend_ast_evaluate(zval *result, zend_ast *ast, zend_class_entry *s
zval_dtor(&op1);
zval_dtor(&op2);
break;
case ZEND_POW:
zend_ast_evaluate(&op1, (&ast->u.child)[0], scope TSRMLS_CC);
zend_ast_evaluate(&op2, (&ast->u.child)[1], scope TSRMLS_CC);
pow_function(result, &op1, &op2 TSRMLS_CC);
zval_dtor(&op1);
zval_dtor(&op2);
break;
case ZEND_DIV:
zend_ast_evaluate(&op1, (&ast->u.child)[0], scope TSRMLS_CC);
zend_ast_evaluate(&op2, (&ast->u.child)[1], scope TSRMLS_CC);
@@ -223,17 +251,26 @@ ZEND_API void zend_ast_evaluate(zval *result, zend_ast *ast, zend_class_entry *s
zval_dtor(&op2);
break;
case ZEND_CONST:
*result = *ast->u.val;
zval_copy_ctor(result);
if (IS_CONSTANT_TYPE(Z_TYPE_P(result))) {
zval_update_constant_ex(&result, (void *) 1, scope TSRMLS_CC);
/* class constants may be updated in-place */
if (scope) {
if (IS_CONSTANT_TYPE(Z_TYPE_P(ast->u.val))) {
zval_update_constant_ex(&ast->u.val, 1, scope TSRMLS_CC);
}
*result = *ast->u.val;
zval_copy_ctor(result);
} else {
*result = *ast->u.val;
zval_copy_ctor(result);
if (IS_CONSTANT_TYPE(Z_TYPE_P(result))) {
zval_update_constant_ex(&result, 1, scope TSRMLS_CC);
}
}
break;
case ZEND_BOOL_AND:
zend_ast_evaluate(&op1, (&ast->u.child)[0], scope TSRMLS_CC);
if (zend_is_true(&op1)) {
if (zend_is_true(&op1 TSRMLS_CC)) {
zend_ast_evaluate(&op2, (&ast->u.child)[1], scope TSRMLS_CC);
ZVAL_BOOL(result, zend_is_true(&op2));
ZVAL_BOOL(result, zend_is_true(&op2 TSRMLS_CC));
zval_dtor(&op2);
} else {
ZVAL_BOOL(result, 0);
@@ -242,18 +279,18 @@ ZEND_API void zend_ast_evaluate(zval *result, zend_ast *ast, zend_class_entry *s
break;
case ZEND_BOOL_OR:
zend_ast_evaluate(&op1, (&ast->u.child)[0], scope TSRMLS_CC);
if (zend_is_true(&op1)) {
if (zend_is_true(&op1 TSRMLS_CC)) {
ZVAL_BOOL(result, 1);
} else {
zend_ast_evaluate(&op2, (&ast->u.child)[1], scope TSRMLS_CC);
ZVAL_BOOL(result, zend_is_true(&op2));
ZVAL_BOOL(result, zend_is_true(&op2 TSRMLS_CC));
zval_dtor(&op2);
}
zval_dtor(&op1);
break;
case ZEND_SELECT:
zend_ast_evaluate(&op1, (&ast->u.child)[0], scope TSRMLS_CC);
if (zend_is_true(&op1)) {
if (zend_is_true(&op1 TSRMLS_CC)) {
if (!(&ast->u.child)[1]) {
*result = op1;
} else {
@@ -266,17 +303,45 @@ ZEND_API void zend_ast_evaluate(zval *result, zend_ast *ast, zend_class_entry *s
}
break;
case ZEND_UNARY_PLUS:
ZVAL_LONG(&op1, 0);
ZVAL_INT(&op1, 0);
zend_ast_evaluate(&op2, (&ast->u.child)[0], scope TSRMLS_CC);
add_function(result, &op1, &op2 TSRMLS_CC);
zval_dtor(&op2);
break;
case ZEND_UNARY_MINUS:
ZVAL_LONG(&op1, 0);
ZVAL_INT(&op1, 0);
zend_ast_evaluate(&op2, (&ast->u.child)[0], scope TSRMLS_CC);
sub_function(result, &op1, &op2 TSRMLS_CC);
zval_dtor(&op2);
break;
case ZEND_INIT_ARRAY:
INIT_PZVAL(result);
array_init(result);
{
int i;
zend_bool has_key;
for (i = 0; i < ast->children; i+=2) {
zval *expr;
MAKE_STD_ZVAL(expr);
if ((has_key = !!(&ast->u.child)[i])) {
zend_ast_evaluate(&op1, (&ast->u.child)[i], scope TSRMLS_CC);
}
zend_ast_evaluate(expr, (&ast->u.child)[i+1], scope TSRMLS_CC);
zend_do_add_static_array_element(result, has_key?&op1:NULL, expr);
}
}
break;
case ZEND_FETCH_DIM_R:
zend_ast_evaluate(&op1, (&ast->u.child)[0], scope TSRMLS_CC);
zend_ast_evaluate(&op2, (&ast->u.child)[1], scope TSRMLS_CC);
{
zval *tmp;
zend_fetch_dimension_by_zval(&tmp, &op1, &op2 TSRMLS_CC);
ZVAL_ZVAL(result, tmp, 1, 1);
}
zval_dtor(&op1);
zval_dtor(&op2);
break;
default:
zend_error(E_ERROR, "Unsupported constant expression");
}
@@ -290,26 +355,17 @@ ZEND_API zend_ast *zend_ast_copy(zend_ast *ast)
zend_ast *copy = zend_ast_create_constant(ast->u.val);
zval_copy_ctor(copy->u.val);
return copy;
} else {
switch (ast->children) {
case 1:
return zend_ast_create_unary(
ast->kind,
zend_ast_copy((&ast->u.child)[0]));
case 2:
return zend_ast_create_binary(
ast->kind,
zend_ast_copy((&ast->u.child)[0]),
zend_ast_copy((&ast->u.child)[1]));
case 3:
return zend_ast_create_ternary(
ast->kind,
zend_ast_copy((&ast->u.child)[0]),
zend_ast_copy((&ast->u.child)[1]),
zend_ast_copy((&ast->u.child)[2]));
} else if (ast->children) {
zend_ast *new = emalloc(sizeof(zend_ast) + sizeof(zend_ast*) * (ast->children - 1));
int i;
new->kind = ast->kind;
new->children = ast->children;
for (i = 0; i < ast->children; i++) {
(&new->u.child)[i] = zend_ast_copy((&ast->u.child)[i]);
}
return new;
}
return NULL;
return zend_ast_create_dynamic(ast->kind);
}
ZEND_API void zend_ast_destroy(zend_ast *ast)
+3
View File
@@ -50,6 +50,9 @@ ZEND_API zend_ast *zend_ast_create_constant(zval *zv);
ZEND_API zend_ast *zend_ast_create_unary(uint kind, zend_ast *op0);
ZEND_API zend_ast *zend_ast_create_binary(uint kind, zend_ast *op0, zend_ast *op1);
ZEND_API zend_ast *zend_ast_create_ternary(uint kind, zend_ast *op0, zend_ast *op1, zend_ast *op2);
ZEND_API zend_ast* zend_ast_create_dynamic(uint kind);
ZEND_API void zend_ast_dynamic_add(zend_ast **ast, zend_ast *op);
ZEND_API void zend_ast_dynamic_shrink(zend_ast **ast);
ZEND_API int zend_ast_is_ct_constant(zend_ast *ast);
+119 -119
View File
@@ -245,16 +245,16 @@ static const zend_function_entry builtin_functions[] = { /* {{{ */
ZEND_FE(func_num_args, arginfo_zend__void)
ZEND_FE(func_get_arg, arginfo_func_get_arg)
ZEND_FE(func_get_args, arginfo_zend__void)
ZEND_FE(strlen, arginfo_strlen)
ZEND_FE(strcmp, arginfo_strcmp)
ZEND_FE(strncmp, arginfo_strncmp)
ZEND_FE(strcasecmp, arginfo_strcmp)
ZEND_FE(strlen, arginfo_strlen)
ZEND_FE(strcmp, arginfo_strcmp)
ZEND_FE(strncmp, arginfo_strncmp)
ZEND_FE(strcasecmp, arginfo_strcmp)
ZEND_FE(strncasecmp, arginfo_strncmp)
ZEND_FE(each, arginfo_each)
ZEND_FE(each, arginfo_each)
ZEND_FE(error_reporting, arginfo_error_reporting)
ZEND_FE(define, arginfo_define)
ZEND_FE(defined, arginfo_defined)
ZEND_FE(get_class, arginfo_get_class)
ZEND_FE(define, arginfo_define)
ZEND_FE(defined, arginfo_defined)
ZEND_FE(get_class, arginfo_get_class)
ZEND_FE(get_called_class, arginfo_zend__void)
ZEND_FE(get_parent_class, arginfo_get_class)
ZEND_FE(method_exists, arginfo_method_exists)
@@ -274,13 +274,13 @@ static const zend_function_entry builtin_functions[] = { /* {{{ */
ZEND_FE(get_included_files, arginfo_zend__void)
ZEND_FALIAS(get_required_files, get_included_files, arginfo_zend__void)
ZEND_FE(is_subclass_of, arginfo_is_subclass_of)
ZEND_FE(is_a, arginfo_is_subclass_of)
ZEND_FE(is_a, arginfo_is_subclass_of)
ZEND_FE(get_class_vars, arginfo_get_class_vars)
ZEND_FE(get_object_vars, arginfo_get_object_vars)
ZEND_FE(get_class_methods, arginfo_get_class_methods)
ZEND_FE(trigger_error, arginfo_trigger_error)
ZEND_FALIAS(user_error, trigger_error, arginfo_trigger_error)
ZEND_FE(set_error_handler, arginfo_set_error_handler)
ZEND_FE(set_error_handler, arginfo_set_error_handler)
ZEND_FE(restore_error_handler, arginfo_zend__void)
ZEND_FE(set_exception_handler, arginfo_set_exception_handler)
ZEND_FE(restore_exception_handler, arginfo_zend__void)
@@ -288,14 +288,14 @@ static const zend_function_entry builtin_functions[] = { /* {{{ */
ZEND_FE(get_declared_traits, arginfo_zend__void)
ZEND_FE(get_declared_interfaces, arginfo_zend__void)
ZEND_FE(get_defined_functions, arginfo_zend__void)
ZEND_FE(get_defined_vars, arginfo_zend__void)
ZEND_FE(create_function, arginfo_create_function)
ZEND_FE(get_resource_type, arginfo_get_resource_type)
ZEND_FE(get_defined_vars, arginfo_zend__void)
ZEND_FE(create_function, arginfo_create_function)
ZEND_FE(get_resource_type, arginfo_get_resource_type)
ZEND_FE(get_loaded_extensions, arginfo_get_loaded_extensions)
ZEND_FE(extension_loaded, arginfo_extension_loaded)
ZEND_FE(extension_loaded, arginfo_extension_loaded)
ZEND_FE(get_extension_funcs, arginfo_extension_loaded)
ZEND_FE(get_defined_constants, arginfo_get_defined_constants)
ZEND_FE(debug_backtrace, arginfo_debug_backtrace)
ZEND_FE(debug_backtrace, arginfo_debug_backtrace)
ZEND_FE(debug_print_backtrace, arginfo_debug_print_backtrace)
#if ZEND_DEBUG
ZEND_FE(zend_test_func, NULL)
@@ -305,7 +305,7 @@ static const zend_function_entry builtin_functions[] = { /* {{{ */
#endif
ZEND_FE(gc_collect_cycles, arginfo_zend__void)
ZEND_FE(gc_enabled, arginfo_zend__void)
ZEND_FE(gc_enable, arginfo_zend__void)
ZEND_FE(gc_enable, arginfo_zend__void)
ZEND_FE(gc_disable, arginfo_zend__void)
ZEND_FE_END
};
@@ -358,7 +358,7 @@ ZEND_FUNCTION(zend_version)
Returns number of freed zvals */
ZEND_FUNCTION(gc_collect_cycles)
{
RETURN_LONG(gc_collect_cycles(TSRMLS_C));
RETURN_INT(gc_collect_cycles(TSRMLS_C));
}
/* }}} */
@@ -393,10 +393,10 @@ ZEND_FUNCTION(func_num_args)
zend_execute_data *ex = EG(current_execute_data)->prev_execute_data;
if (ex && ex->function_state.arguments) {
RETURN_LONG((long)(zend_uintptr_t)*(ex->function_state.arguments));
RETURN_INT((long)(zend_uintptr_t)*(ex->function_state.arguments));
} else {
zend_error(E_WARNING, "func_num_args(): Called from the global scope - no function context");
RETURN_LONG(-1);
RETURN_INT(-1);
}
}
/* }}} */
@@ -409,10 +409,10 @@ ZEND_FUNCTION(func_get_arg)
void **p;
int arg_count;
zval *arg;
long requested_offset;
zend_int_t requested_offset;
zend_execute_data *ex = EG(current_execute_data)->prev_execute_data;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "l", &requested_offset) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "i", &requested_offset) == FAILURE) {
return;
}
@@ -430,7 +430,7 @@ ZEND_FUNCTION(func_get_arg)
arg_count = (int)(zend_uintptr_t) *p; /* this is the amount of arguments passed to func_get_arg(); */
if (requested_offset >= arg_count) {
zend_error(E_WARNING, "func_get_arg(): Argument %ld not passed to function", requested_offset);
zend_error(E_WARNING, "func_get_arg(): Argument " ZEND_INT_FMT " not passed to function", requested_offset);
RETURN_FALSE;
}
@@ -481,13 +481,13 @@ ZEND_FUNCTION(func_get_args)
ZEND_FUNCTION(strlen)
{
char *s1;
int s1_len;
zend_size_t s1_len;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &s1, &s1_len) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "S", &s1, &s1_len) == FAILURE) {
return;
}
RETVAL_LONG(s1_len);
RETVAL_INT((zend_int_t) s1_len);
}
/* }}} */
@@ -497,13 +497,13 @@ ZEND_FUNCTION(strlen)
ZEND_FUNCTION(strcmp)
{
char *s1, *s2;
int s1_len, s2_len;
zend_size_t s1_len, s2_len;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ss", &s1, &s1_len, &s2, &s2_len) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "SS", &s1, &s1_len, &s2, &s2_len) == FAILURE) {
return;
}
RETURN_LONG(zend_binary_strcmp(s1, s1_len, s2, s2_len));
RETURN_INT(zend_binary_strcmp(s1, s1_len, s2, s2_len));
}
/* }}} */
@@ -513,10 +513,10 @@ ZEND_FUNCTION(strcmp)
ZEND_FUNCTION(strncmp)
{
char *s1, *s2;
int s1_len, s2_len;
long len;
zend_size_t s1_len, s2_len;
zend_int_t len;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ssl", &s1, &s1_len, &s2, &s2_len, &len) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "SSi", &s1, &s1_len, &s2, &s2_len, &len) == FAILURE) {
return;
}
@@ -525,7 +525,7 @@ ZEND_FUNCTION(strncmp)
RETURN_FALSE;
}
RETURN_LONG(zend_binary_strncmp(s1, s1_len, s2, s2_len, len));
RETURN_INT(zend_binary_strncmp(s1, s1_len, s2, s2_len, len));
}
/* }}} */
@@ -535,13 +535,13 @@ ZEND_FUNCTION(strncmp)
ZEND_FUNCTION(strcasecmp)
{
char *s1, *s2;
int s1_len, s2_len;
zend_size_t s1_len, s2_len;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ss", &s1, &s1_len, &s2, &s2_len) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "SS", &s1, &s1_len, &s2, &s2_len) == FAILURE) {
return;
}
RETURN_LONG(zend_binary_strcasecmp(s1, s1_len, s2, s2_len));
RETURN_INT(zend_binary_strcasecmp(s1, s1_len, s2, s2_len));
}
/* }}} */
@@ -551,10 +551,10 @@ ZEND_FUNCTION(strcasecmp)
ZEND_FUNCTION(strncasecmp)
{
char *s1, *s2;
int s1_len, s2_len;
long len;
zend_size_t s1_len, s2_len;
zend_int_t len;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ssl", &s1, &s1_len, &s2, &s2_len, &len) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "SSi", &s1, &s1_len, &s2, &s2_len, &len) == FAILURE) {
return;
}
@@ -563,7 +563,7 @@ ZEND_FUNCTION(strncasecmp)
RETURN_FALSE;
}
RETURN_LONG(zend_binary_strncasecmp(s1, s1_len, s2, s2_len, len));
RETURN_INT(zend_binary_strncasecmp(s1, s1_len, s2, s2_len, len));
}
/* }}} */
@@ -574,8 +574,8 @@ ZEND_FUNCTION(each)
{
zval *array, *entry, **entry_ptr, *tmp;
char *string_key;
uint string_key_len;
ulong num_key;
zend_size_t string_key_len;
zend_uint_t num_key;
zval **inserted_pointer;
HashTable *target_hash;
@@ -613,8 +613,8 @@ ZEND_FUNCTION(each)
case HASH_KEY_IS_STRING:
add_get_index_stringl(return_value, 0, string_key, string_key_len-1, (void **) &inserted_pointer, !IS_INTERNED(string_key));
break;
case HASH_KEY_IS_LONG:
add_get_index_long(return_value, 0, num_key, (void **) &inserted_pointer);
case HASH_KEY_IS_INT:
add_get_index_int(return_value, 0, num_key, (void **) &inserted_pointer);
break;
}
zend_hash_update(return_value->value.ht, "key", sizeof("key"), inserted_pointer, sizeof(zval *), NULL);
@@ -629,10 +629,10 @@ ZEND_FUNCTION(each)
ZEND_FUNCTION(error_reporting)
{
char *err;
int err_len;
zend_size_t err_len;
int old_error_reporting;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|s", &err, &err_len) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|S", &err, &err_len) == FAILURE) {
return;
}
@@ -641,7 +641,7 @@ ZEND_FUNCTION(error_reporting)
zend_alter_ini_entry("error_reporting", sizeof("error_reporting"), err, err_len, ZEND_INI_USER, ZEND_INI_STAGE_RUNTIME);
}
RETVAL_LONG(old_error_reporting);
RETVAL_INT(old_error_reporting);
}
/* }}} */
@@ -651,14 +651,14 @@ ZEND_FUNCTION(error_reporting)
ZEND_FUNCTION(define)
{
char *name;
int name_len;
zend_size_t name_len;
zval *val;
zval *val_free = NULL;
zend_bool non_cs = 0;
int case_sensitive = CONST_CS;
zend_constant c;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sz|b", &name, &name_len, &val, &non_cs) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "Sz|b", &name, &name_len, &val, &non_cs) == FAILURE) {
return;
}
@@ -674,7 +674,7 @@ ZEND_FUNCTION(define)
repeat:
switch (Z_TYPE_P(val)) {
case IS_LONG:
case IS_INT:
case IS_DOUBLE:
case IS_STRING:
case IS_BOOL:
@@ -729,10 +729,10 @@ repeat:
ZEND_FUNCTION(defined)
{
char *name;
int name_len;
zend_size_t name_len;
zval c;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &name, &name_len) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "S", &name, &name_len) == FAILURE) {
return;
}
@@ -752,7 +752,7 @@ ZEND_FUNCTION(get_class)
{
zval *obj = NULL;
const char *name = "";
zend_uint name_len = 0;
zend_size_t name_len = 0;
int dup;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|o!", &obj) == FAILURE) {
@@ -800,7 +800,7 @@ ZEND_FUNCTION(get_parent_class)
zval *arg;
zend_class_entry *ce = NULL;
const char *name;
zend_uint name_length;
zend_size_t name_length;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|z", &arg) == FAILURE) {
return;
@@ -825,7 +825,7 @@ ZEND_FUNCTION(get_parent_class)
} else if (Z_TYPE_P(arg) == IS_STRING) {
zend_class_entry **pce;
if (zend_lookup_class(Z_STRVAL_P(arg), Z_STRLEN_P(arg), &pce TSRMLS_CC) == SUCCESS) {
if (zend_lookup_class(Z_STRVAL_P(arg), Z_STRSIZE_P(arg), &pce TSRMLS_CC) == SUCCESS) {
ce = *pce;
}
}
@@ -843,13 +843,13 @@ static void is_a_impl(INTERNAL_FUNCTION_PARAMETERS, zend_bool only_subclass)
{
zval *obj;
char *class_name;
int class_name_len;
zend_size_t class_name_len;
zend_class_entry *instance_ce;
zend_class_entry **ce;
zend_bool allow_string = only_subclass;
zend_bool retval;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "zs|b", &obj, &class_name, &class_name_len, &allow_string) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "zS|b", &obj, &class_name, &class_name_len, &allow_string) == FAILURE) {
return;
}
/*
@@ -861,7 +861,7 @@ static void is_a_impl(INTERNAL_FUNCTION_PARAMETERS, zend_bool only_subclass)
if (allow_string && Z_TYPE_P(obj) == IS_STRING) {
zend_class_entry **the_ce;
if (zend_lookup_class(Z_STRVAL_P(obj), Z_STRLEN_P(obj), &the_ce TSRMLS_CC) == FAILURE) {
if (zend_lookup_class(Z_STRVAL_P(obj), Z_STRSIZE_P(obj), &the_ce TSRMLS_CC) == FAILURE) {
RETURN_FALSE;
}
instance_ce = *the_ce;
@@ -910,8 +910,8 @@ static void add_class_vars(zend_class_entry *ce, int statics, zval *return_value
zend_property_info *prop_info;
zval *prop, *prop_copy;
char *key;
uint key_len;
ulong num_index;
zend_size_t key_len;
zend_uint_t num_index;
zend_hash_internal_pointer_reset_ex(&ce->properties_info, &pos);
while (zend_hash_get_current_data_ex(&ce->properties_info, (void **) &prop_info, &pos) == SUCCESS) {
@@ -961,10 +961,10 @@ static void add_class_vars(zend_class_entry *ce, int statics, zval *return_value
ZEND_FUNCTION(get_class_vars)
{
char *class_name;
int class_name_len;
zend_size_t class_name_len;
zend_class_entry **pce;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &class_name, &class_name_len) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "S", &class_name, &class_name_len) == FAILURE) {
return;
}
@@ -990,8 +990,8 @@ ZEND_FUNCTION(get_object_vars)
HashPosition pos;
char *key;
const char *prop_name, *class_name;
uint key_len, prop_len;
ulong num_index;
zend_size_t key_len, prop_len;
zend_uint_t num_index;
zend_object *zobj;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "o", &obj) == FAILURE) {
@@ -1017,7 +1017,7 @@ ZEND_FUNCTION(get_object_vars)
while (zend_hash_get_current_data_ex(properties, (void **) &value, &pos) == SUCCESS) {
if (zend_hash_get_current_key_ex(properties, &key, &key_len, &num_index, 0, &pos) == HASH_KEY_IS_STRING) {
if (zend_check_property_access(zobj, key, key_len-1 TSRMLS_CC) == SUCCESS) {
zend_unmangle_property_name_ex(key, key_len - 1, &class_name, &prop_name, (int*) &prop_len);
zend_unmangle_property_name_ex(key, key_len - 1, &class_name, &prop_name, &prop_len);
/* Not separating references */
Z_ADDREF_PP(value);
if (IS_INTERNED(key) && prop_name != key) {
@@ -1035,7 +1035,7 @@ ZEND_FUNCTION(get_object_vars)
}
/* }}} */
static int same_name(const char *key, const char *name, zend_uint name_len)
static int same_name(const char *key, const char *name, zend_size_t name_len)
{
char *lcname = zend_str_tolower_dup(name, name_len);
int ret = memcmp(lcname, key, name_len) == 0;
@@ -1064,7 +1064,7 @@ ZEND_FUNCTION(get_class_methods)
}
ce = Z_OBJCE_P(klass);
} else if (Z_TYPE_P(klass) == IS_STRING) {
if (zend_lookup_class(Z_STRVAL_P(klass), Z_STRLEN_P(klass), &pce TSRMLS_CC) == SUCCESS) {
if (zend_lookup_class(Z_STRVAL_P(klass), Z_STRSIZE_P(klass), &pce TSRMLS_CC) == SUCCESS) {
ce = *pce;
}
}
@@ -1084,9 +1084,9 @@ ZEND_FUNCTION(get_class_methods)
|| ((mptr->common.fn_flags & ZEND_ACC_PRIVATE) &&
EG(scope) == mptr->common.scope)))) {
char *key;
uint key_len;
ulong num_index;
uint len = strlen(mptr->common.function_name);
zend_size_t key_len;
zend_uint_t num_index;
zend_size_t len = strlen(mptr->common.function_name);
/* Do not display old-style inherited constructors */
if (zend_hash_get_current_key_ex(&ce->function_table, &key, &key_len, &num_index, 0, &pos) != HASH_KEY_IS_STRING) {
@@ -1123,17 +1123,17 @@ ZEND_FUNCTION(method_exists)
{
zval *klass;
char *method_name;
int method_len;
zend_size_t method_len;
char *lcname;
zend_class_entry * ce, **pce;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "zs", &klass, &method_name, &method_len) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "zS", &klass, &method_name, &method_len) == FAILURE) {
return;
}
if (Z_TYPE_P(klass) == IS_OBJECT) {
ce = Z_OBJCE_P(klass);
} else if (Z_TYPE_P(klass) == IS_STRING) {
if (zend_lookup_class(Z_STRVAL_P(klass), Z_STRLEN_P(klass), &pce TSRMLS_CC) == FAILURE) {
if (zend_lookup_class(Z_STRVAL_P(klass), Z_STRSIZE_P(klass), &pce TSRMLS_CC) == FAILURE) {
RETURN_FALSE;
}
ce = *pce;
@@ -1180,13 +1180,13 @@ ZEND_FUNCTION(property_exists)
{
zval *object;
char *property;
int property_len;
zend_size_t property_len;
zend_class_entry *ce, **pce;
zend_property_info *property_info;
zval property_z;
ulong h;
zend_uint_t h;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "zs", &object, &property, &property_len) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "zS", &object, &property, &property_len) == FAILURE) {
return;
}
@@ -1195,7 +1195,7 @@ ZEND_FUNCTION(property_exists)
}
if (Z_TYPE_P(object) == IS_STRING) {
if (zend_lookup_class(Z_STRVAL_P(object), Z_STRLEN_P(object), &pce TSRMLS_CC) == FAILURE) {
if (zend_lookup_class(Z_STRVAL_P(object), Z_STRSIZE_P(object), &pce TSRMLS_CC) == FAILURE) {
RETURN_FALSE;
}
ce = *pce;
@@ -1230,18 +1230,18 @@ ZEND_FUNCTION(class_exists)
{
char *class_name, *lc_name;
zend_class_entry **ce;
int class_name_len;
zend_size_t class_name_len;
int found;
zend_bool autoload = 1;
ALLOCA_FLAG(use_heap)
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|b", &class_name, &class_name_len, &autoload) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "S|b", &class_name, &class_name_len, &autoload) == FAILURE) {
return;
}
if (!autoload) {
char *name;
int len;
zend_size_t len;
lc_name = do_alloca(class_name_len + 1, use_heap);
zend_str_tolower_copy(lc_name, class_name, class_name_len);
@@ -1273,18 +1273,18 @@ ZEND_FUNCTION(interface_exists)
{
char *iface_name, *lc_name;
zend_class_entry **ce;
int iface_name_len;
zend_size_t iface_name_len;
int found;
zend_bool autoload = 1;
ALLOCA_FLAG(use_heap)
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|b", &iface_name, &iface_name_len, &autoload) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "S|b", &iface_name, &iface_name_len, &autoload) == FAILURE) {
return;
}
if (!autoload) {
char *name;
int len;
zend_size_t len;
lc_name = do_alloca(iface_name_len + 1, use_heap);
zend_str_tolower_copy(lc_name, iface_name, iface_name_len);
@@ -1316,18 +1316,18 @@ ZEND_FUNCTION(trait_exists)
{
char *trait_name, *lc_name;
zend_class_entry **ce;
int trait_name_len;
zend_size_t trait_name_len;
int found;
zend_bool autoload = 1;
ALLOCA_FLAG(use_heap)
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|b", &trait_name, &trait_name_len, &autoload) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "S|b", &trait_name, &trait_name_len, &autoload) == FAILURE) {
return;
}
if (!autoload) {
char *name;
int len;
zend_size_t len;
lc_name = do_alloca(trait_name_len + 1, use_heap);
zend_str_tolower_copy(lc_name, trait_name, trait_name_len);
@@ -1359,12 +1359,12 @@ ZEND_FUNCTION(trait_exists)
ZEND_FUNCTION(function_exists)
{
char *name;
int name_len;
zend_size_t name_len;
zend_function *func;
char *lcname;
zend_bool retval;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &name, &name_len) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "S", &name, &name_len) == FAILURE) {
return;
}
@@ -1400,11 +1400,11 @@ ZEND_FUNCTION(class_alias)
{
char *class_name, *alias_name;
zend_class_entry **ce;
int class_name_len, alias_name_len;
zend_size_t class_name_len, alias_name_len;
int found;
zend_bool autoload = 1;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ss|b", &class_name, &class_name_len, &alias_name, &alias_name_len, &autoload) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "SS|b", &class_name, &class_name_len, &alias_name, &alias_name_len, &autoload) == FAILURE) {
return;
}
@@ -1434,9 +1434,9 @@ ZEND_FUNCTION(class_alias)
Cause an intentional memory leak, for testing/debugging purposes */
ZEND_FUNCTION(leak)
{
long leakbytes=3;
zend_int_t leakbytes=3;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|l", &leakbytes) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|i", &leakbytes) == FAILURE) {
return;
}
@@ -1483,7 +1483,7 @@ ZEND_FUNCTION(crash)
ZEND_FUNCTION(get_included_files)
{
char *entry;
uint entry_len;
zend_size_t entry_len;
if (zend_parse_parameters_none() == FAILURE) {
return;
@@ -1503,11 +1503,11 @@ ZEND_FUNCTION(get_included_files)
Generates a user-level error/warning/notice message */
ZEND_FUNCTION(trigger_error)
{
long error_type = E_USER_NOTICE;
zend_int_t error_type = E_USER_NOTICE;
char *message;
int message_len;
zend_size_t message_len;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|l", &message, &message_len, &error_type) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "S|i", &message, &message_len, &error_type) == FAILURE) {
return;
}
@@ -1535,9 +1535,9 @@ ZEND_FUNCTION(set_error_handler)
{
zval *error_handler;
char *error_handler_name = NULL;
long error_type = E_ALL;
zend_int_t error_type = E_ALL;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z|l", &error_handler, &error_type) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z|i", &error_handler, &error_type) == FAILURE) {
return;
}
@@ -1797,11 +1797,11 @@ ZEND_FUNCTION(get_defined_vars)
ZEND_FUNCTION(create_function)
{
char *eval_code, *function_name, *function_args, *function_code;
int eval_code_length, function_name_length, function_args_len, function_code_len;
zend_size_t eval_code_length, function_name_length, function_args_len, function_code_len;
int retval;
char *eval_name;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ss", &function_args, &function_args_len, &function_code, &function_code_len) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "SS", &function_args, &function_args_len, &function_code, &function_code_len) == FAILURE) {
return;
}
@@ -1841,11 +1841,11 @@ ZEND_FUNCTION(create_function)
new_function = *func;
function_add_ref(&new_function);
function_name = (char *) emalloc(sizeof("0lambda_")+MAX_LENGTH_OF_LONG);
function_name = (char *) emalloc(sizeof("0lambda_")+MAX_LENGTH_OF_ZEND_INT);
function_name[0] = '\0';
do {
function_name_length = 1 + snprintf(function_name + 1, sizeof("lambda_")+MAX_LENGTH_OF_LONG, "lambda_%d", ++EG(lambda_count));
function_name_length = 1 + snprintf(function_name + 1, sizeof("lambda_")+MAX_LENGTH_OF_ZEND_INT, "lambda_%d", ++EG(lambda_count));
} while (zend_hash_add(EG(function_table), function_name, function_name_length+1, &new_function, sizeof(zend_function), NULL)==FAILURE);
zend_hash_del(EG(function_table), LAMBDA_TEMP_FUNCNAME, sizeof(LAMBDA_TEMP_FUNCNAME));
RETURN_STRINGL(function_name, function_name_length, 0);
@@ -1869,7 +1869,7 @@ ZEND_FUNCTION(zend_test_func)
#ifdef ZTS
ZEND_FUNCTION(zend_thread_id)
{
RETURN_LONG((long)tsrm_thread_id());
RETURN_INT((long)tsrm_thread_id());
}
#endif
#endif
@@ -1885,7 +1885,7 @@ ZEND_FUNCTION(get_resource_type)
return;
}
resource_type = zend_rsrc_list_get_rsrc_type(Z_LVAL_P(z_resource_type) TSRMLS_CC);
resource_type = zend_rsrc_list_get_rsrc_type(Z_IVAL_P(z_resource_type) TSRMLS_CC);
if (resource_type) {
RETURN_STRING(resource_type, 1);
} else {
@@ -2070,7 +2070,7 @@ void debug_print_backtrace_args(zval *arg_array TSRMLS_DC)
ZEND_FUNCTION(debug_print_backtrace)
{
zend_execute_data *ptr, *skip;
int lineno, frameno = 0;
zend_size_t lineno, frameno = 0;
const char *function_name;
const char *filename;
const char *class_name = NULL;
@@ -2078,10 +2078,10 @@ ZEND_FUNCTION(debug_print_backtrace)
const char *include_filename = NULL;
zval *arg_array = NULL;
int indent = 0;
long options = 0;
long limit = 0;
zend_int_t options = 0;
zend_int_t limit = 0;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|ll", &options, &limit) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|ii", &options, &limit) == FAILURE) {
return;
}
@@ -2130,7 +2130,7 @@ ZEND_FUNCTION(debug_print_backtrace)
if (ptr->function_state.function->common.scope) {
class_name = ptr->function_state.function->common.scope->name;
} else {
zend_uint class_name_len;
zend_size_t class_name_len;
int dup;
dup = zend_get_object_classname(ptr->object, &class_name, &class_name_len TSRMLS_CC);
@@ -2238,7 +2238,7 @@ ZEND_FUNCTION(debug_print_backtrace)
ZEND_API void zend_fetch_debug_backtrace(zval *return_value, int skip_last, int options, int limit TSRMLS_DC)
{
zend_execute_data *ptr, *skip;
int lineno, frameno = 0;
zend_size_t lineno, frameno = 0;
const char *function_name;
const char *filename;
const char *class_name;
@@ -2279,7 +2279,7 @@ ZEND_API void zend_fetch_debug_backtrace(zval *return_value, int skip_last, int
filename = skip->op_array->filename;
lineno = skip->opline->lineno;
add_assoc_string_ex(stack_frame, "file", sizeof("file"), (char*)filename, 1);
add_assoc_long_ex(stack_frame, "line", sizeof("line"), lineno);
add_assoc_int_ex(stack_frame, "line", sizeof("line"), lineno);
/* try to fetch args only if an FCALL was just made - elsewise we're in the middle of a function
* and debug_baktrace() might have been called by the error_handler. in this case we don't
@@ -2296,7 +2296,7 @@ ZEND_API void zend_fetch_debug_backtrace(zval *return_value, int skip_last, int
}
if (prev->op_array) {
add_assoc_string_ex(stack_frame, "file", sizeof("file"), (char*)prev->op_array->filename, 1);
add_assoc_long_ex(stack_frame, "line", sizeof("line"), prev->opline->lineno);
add_assoc_int_ex(stack_frame, "line", sizeof("line"), prev->opline->lineno);
break;
}
prev = prev->prev_execute_data;
@@ -2320,7 +2320,7 @@ ZEND_API void zend_fetch_debug_backtrace(zval *return_value, int skip_last, int
if (ptr->function_state.function->common.scope) {
add_assoc_string_ex(stack_frame, "class", sizeof("class"), (char*)ptr->function_state.function->common.scope->name, 1);
} else {
zend_uint class_name_len;
zend_size_t class_name_len;
int dup;
dup = zend_get_object_classname(ptr->object, &class_name, &class_name_len TSRMLS_CC);
@@ -2409,10 +2409,10 @@ ZEND_API void zend_fetch_debug_backtrace(zval *return_value, int skip_last, int
Return backtrace as array */
ZEND_FUNCTION(debug_backtrace)
{
long options = DEBUG_BACKTRACE_PROVIDE_OBJECT;
long limit = 0;
zend_int_t options = DEBUG_BACKTRACE_PROVIDE_OBJECT;
zend_int_t limit = 0;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|ll", &options, &limit) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|ii", &options, &limit) == FAILURE) {
return;
}
@@ -2425,10 +2425,10 @@ ZEND_FUNCTION(debug_backtrace)
ZEND_FUNCTION(extension_loaded)
{
char *extension_name;
int extension_name_len;
zend_size_t extension_name_len;
char *lcname;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &extension_name, &extension_name_len) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "S", &extension_name, &extension_name_len) == FAILURE) {
return;
}
@@ -2448,11 +2448,11 @@ ZEND_FUNCTION(extension_loaded)
ZEND_FUNCTION(get_extension_funcs)
{
char *extension_name, *lcname;
int extension_name_len, array;
zend_size_t extension_name_len, array;
zend_module_entry *module;
HashPosition iterator;
zend_function *zif;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &extension_name, &extension_name_len) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "S", &extension_name, &extension_name_len) == FAILURE) {
return;
}
if (strncasecmp(extension_name, "zend", sizeof("zend"))) {
+7 -9
View File
@@ -95,19 +95,19 @@ ZEND_METHOD(Closure, bind)
ce = NULL;
} else {
char *class_name;
int class_name_len;
zend_size_t class_name_len;
zval tmp_zval;
INIT_ZVAL(tmp_zval);
if (Z_TYPE_P(scope_arg) == IS_STRING) {
class_name = Z_STRVAL_P(scope_arg);
class_name_len = Z_STRLEN_P(scope_arg);
class_name_len = Z_STRSIZE_P(scope_arg);
} else {
tmp_zval = *scope_arg;
zval_copy_ctor(&tmp_zval);
convert_to_string(&tmp_zval);
class_name = Z_STRVAL(tmp_zval);
class_name_len = Z_STRLEN(tmp_zval);
class_name_len = Z_STRSIZE(tmp_zval);
}
if ((class_name_len == sizeof("static") - 1) &&
@@ -174,7 +174,7 @@ ZEND_API zval* zend_get_closure_this_ptr(zval *obj TSRMLS_DC) /* {{{ */
}
/* }}} */
static zend_function *zend_closure_get_method(zval **object_ptr, char *method_name, int method_len, const zend_literal *key TSRMLS_DC) /* {{{ */
static zend_function *zend_closure_get_method(zval **object_ptr, char *method_name, zend_size_t method_len, const zend_literal *key TSRMLS_DC) /* {{{ */
{
char *lc_name;
ALLOCA_FLAG(use_heap)
@@ -338,14 +338,14 @@ static HashTable *zend_closure_get_debug_info(zval *object, int *is_temp TSRMLS_
}
if (arg_info) {
zend_uint i, required = closure->func.common.required_num_args;
zend_size_t i, required = closure->func.common.required_num_args;
MAKE_STD_ZVAL(val);
array_init(val);
for (i = 0; i < closure->func.common.num_args; i++) {
char *name, *info;
int name_len, info_len;
zend_size_t name_len, info_len;
if (arg_info->name) {
name_len = zend_spprintf(&name, 0, "%s$%s",
arg_info->pass_by_reference ? "&" : "",
@@ -480,6 +480,7 @@ ZEND_API void zend_create_closure(zval *res, zend_function *func, zend_class_ent
}
}
closure->this_ptr = NULL;
/* Invariants:
* If the closure is unscoped, it has no bound object.
* The the closure is scoped, it's either static or it's bound */
@@ -491,10 +492,7 @@ ZEND_API void zend_create_closure(zval *res, zend_function *func, zend_class_ent
Z_ADDREF_P(this_ptr);
} else {
closure->func.common.fn_flags |= ZEND_ACC_STATIC;
closure->this_ptr = NULL;
}
} else {
closure->this_ptr = NULL;
}
}
/* }}} */
+370 -373
View File
File diff suppressed because it is too large. Load diff
+54 -41
View File
@@ -40,7 +40,7 @@
#define INC_BPC(op_array) if (op_array->fn_flags & ZEND_ACC_INTERACTIVE) { (CG(context).backpatch_count++); }
#define DEC_BPC(op_array) if (op_array->fn_flags & ZEND_ACC_INTERACTIVE) { (CG(context).backpatch_count--); }
#define HANDLE_INTERACTIVE() if (CG(active_op_array)->fn_flags & ZEND_ACC_INTERACTIVE) { execute_new_code(TSRMLS_C); }
#define DO_TICKS() if (Z_LVAL(CG(declarables).ticks)) { zend_do_ticks(TSRMLS_C); }
#define DO_TICKS() if (Z_IVAL(CG(declarables).ticks)) { zend_do_ticks(TSRMLS_C); }
#define RESET_DOC_COMMENT() \
{ \
@@ -68,7 +68,7 @@ typedef struct _zend_compiler_context {
typedef struct _zend_literal {
zval constant;
zend_ulong hash_value;
zend_uint_t hash_value;
zend_uint cache_slot;
} zend_literal;
@@ -78,8 +78,8 @@ typedef struct _zend_literal {
typedef union _znode_op {
zend_uint constant;
zend_uint var;
zend_uint num;
zend_ulong hash;
zend_size_t num;
zend_uint_t hash;
zend_uint opline_num; /* Needs to be signed */
zend_op *jmp_addr;
zval *zv;
@@ -113,8 +113,8 @@ struct _zend_op {
znode_op op1;
znode_op op2;
znode_op result;
ulong extended_value;
uint lineno;
zend_uint_t extended_value;
zend_size_t lineno;
zend_uchar opcode;
zend_uchar op1_type;
zend_uchar op2_type;
@@ -141,8 +141,12 @@ typedef struct _zend_try_catch_element {
zend_uint finally_end;
} zend_try_catch_element;
#if SIZEOF_LONG == 8
#define THIS_HASHVAL 210728972157UL
#if SIZEOF_ZEND_INT == 8
# ifdef _WIN32
# define THIS_HASHVAL 210728972157Ui64
# else
# define THIS_HASHVAL 210728972157ULL
# endif
#else
#define THIS_HASHVAL 275574653UL
#endif
@@ -223,20 +227,20 @@ char *zend_visibility_string(zend_uint fn_flags);
typedef struct _zend_property_info {
zend_uint flags;
const char *name;
int name_length;
ulong h;
zend_size_t name_length;
zend_uint_t h;
int offset;
const char *doc_comment;
int doc_comment_len;
zend_size_t doc_comment_len;
zend_class_entry *ce;
} zend_property_info;
typedef struct _zend_arg_info {
const char *name;
zend_uint name_len;
zend_size_t name_len;
const char *class_name;
zend_uint class_name_len;
zend_size_t class_name_len;
zend_uchar type_hint;
zend_uchar pass_by_reference;
zend_bool allow_null;
@@ -249,9 +253,9 @@ typedef struct _zend_arg_info {
*/
typedef struct _zend_internal_function_info {
const char *_name;
zend_uint _name_len;
zend_size_t _name_len;
const char *_class_name;
zend_uint required_num_args;
zend_size_t required_num_args;
zend_uchar _type_hint;
zend_bool return_reference;
zend_bool _allow_null;
@@ -260,8 +264,8 @@ typedef struct _zend_internal_function_info {
typedef struct _zend_compiled_variable {
const char *name;
int name_len;
ulong hash_value;
zend_size_t name_len;
zend_uint_t hash_value;
} zend_compiled_variable;
struct _zend_op_array {
@@ -271,8 +275,8 @@ struct _zend_op_array {
zend_class_entry *scope;
zend_uint fn_flags;
union _zend_function *prototype;
zend_uint num_args;
zend_uint required_num_args;
zend_size_t num_args;
zend_size_t required_num_args;
zend_arg_info *arg_info;
/* END of common elements */
@@ -302,10 +306,10 @@ struct _zend_op_array {
zend_uint this_var;
const char *filename;
zend_uint line_start;
zend_uint line_end;
zend_size_t line_start;
zend_size_t line_end;
const char *doc_comment;
zend_uint doc_comment_len;
zend_size_t doc_comment_len;
zend_uint early_binding; /* the linked list of delayed declarations */
zend_literal *literals;
@@ -328,8 +332,8 @@ typedef struct _zend_internal_function {
zend_class_entry *scope;
zend_uint fn_flags;
union _zend_function *prototype;
zend_uint num_args;
zend_uint required_num_args;
zend_size_t num_args;
zend_size_t required_num_args;
zend_arg_info *arg_info;
/* END of common elements */
@@ -348,8 +352,8 @@ typedef union _zend_function {
zend_class_entry *scope;
zend_uint fn_flags;
union _zend_function *prototype;
zend_uint num_args;
zend_uint required_num_args;
zend_size_t num_args;
zend_size_t required_num_args;
zend_arg_info *arg_info;
} common;
@@ -363,6 +367,11 @@ typedef struct _zend_function_state {
void **arguments;
} zend_function_state;
typedef struct _zend_function_call_entry {
zend_function *fbc;
zend_uint arg_num;
zend_bool uses_argument_unpacking;
} zend_function_call_entry;
typedef struct _zend_switch_entry {
znode cond;
@@ -442,14 +451,14 @@ void shutdown_scanner(TSRMLS_D);
ZEND_API char *zend_set_compiled_filename(const char *new_compiled_filename TSRMLS_DC);
ZEND_API void zend_restore_compiled_filename(char *original_compiled_filename TSRMLS_DC);
ZEND_API char *zend_get_compiled_filename(TSRMLS_D);
ZEND_API int zend_get_compiled_lineno(TSRMLS_D);
ZEND_API zend_uint_t zend_get_compiled_lineno(TSRMLS_D);
ZEND_API size_t zend_get_scanned_file_offset(TSRMLS_D);
void zend_resolve_non_class_name(znode *element_name, zend_bool *check_namespace, zend_bool case_sensitive, HashTable *current_import_sub TSRMLS_DC);
void zend_resolve_function_name(znode *element_name, zend_bool *check_namespace TSRMLS_DC);
void zend_resolve_const_name(znode *element_name, zend_bool *check_namespace TSRMLS_DC);
void zend_resolve_class_name(znode *class_name TSRMLS_DC);
ZEND_API const char* zend_get_compiled_variable_name(const zend_op_array *op_array, zend_uint var, int* name_len);
ZEND_API const char* zend_get_compiled_variable_name(const zend_op_array *op_array, zend_uint var, zend_size_t* name_len);
#ifdef ZTS
const char *zend_get_zendtext(TSRMLS_D);
@@ -518,7 +527,7 @@ void zend_do_begin_dynamic_function_call(znode *function_name, int prefix_len TS
void zend_do_fetch_class(znode *result, znode *class_name TSRMLS_DC);
void zend_do_build_full_name(znode *result, znode *prefix, znode *name, int is_class_member TSRMLS_DC);
int zend_do_begin_class_member_function_call(znode *class_name, znode *method_name TSRMLS_DC);
void zend_do_end_function_call(znode *function_name, znode *result, const znode *argument_list, int is_method, int is_dynamic_fcall TSRMLS_DC);
void zend_do_end_function_call(znode *function_name, znode *result, int is_method, int is_dynamic_fcall TSRMLS_DC);
void zend_do_return(znode *expr, int do_end_vparse TSRMLS_DC);
void zend_do_yield(znode *result, znode *value, const znode *key, zend_bool is_variable TSRMLS_DC);
void zend_do_handle_exception(TSRMLS_D);
@@ -554,8 +563,8 @@ ZEND_API void zend_do_inheritance(zend_class_entry *ce, zend_class_entry *parent
void zend_do_early_binding(TSRMLS_D);
ZEND_API void zend_do_delayed_early_binding(const zend_op_array *op_array TSRMLS_DC);
void zend_do_pass_param(znode *param, zend_uchar op, int offset TSRMLS_DC);
void zend_do_unpack_params(znode *params, int offset TSRMLS_DC);
void zend_do_pass_param(znode *param, zend_uchar op TSRMLS_DC);
void zend_do_unpack_params(znode *params TSRMLS_DC);
void zend_do_boolean_or_begin(znode *expr1, znode *op_token TSRMLS_DC);
@@ -585,7 +594,7 @@ void zend_do_pop_object(znode *object TSRMLS_DC);
void zend_do_begin_new_object(znode *new_token, znode *class_type TSRMLS_DC);
void zend_do_end_new_object(znode *result, const znode *new_token, const znode *argument_list TSRMLS_DC);
void zend_do_end_new_object(znode *result, const znode *new_token TSRMLS_DC);
void zend_do_fetch_constant(znode *result, znode *constant_container, znode *constant_name, int mode, zend_bool check_namespace TSRMLS_DC);
@@ -593,7 +602,7 @@ void zend_do_shell_exec(znode *result, const znode *cmd TSRMLS_DC);
void zend_do_init_array(znode *result, const znode *expr, const znode *offset, zend_bool is_ref TSRMLS_DC);
void zend_do_add_array_element(znode *result, const znode *expr, const znode *offset, zend_bool is_ref TSRMLS_DC);
void zend_do_add_static_array_element(znode *result, znode *offset, const znode *expr);
void zend_do_add_static_array_element(zval *result, zval *offset, const zval *expr);
void zend_do_list_init(TSRMLS_D);
void zend_do_list_end(znode *result, znode *expr TSRMLS_DC);
void zend_do_add_list_element(const znode *element TSRMLS_DC);
@@ -687,10 +696,10 @@ ZEND_API void zend_function_dtor(zend_function *function);
ZEND_API void destroy_zend_class(zend_class_entry **pce);
void zend_class_add_ref(zend_class_entry **ce);
ZEND_API void zend_mangle_property_name(char **dest, int *dest_length, const char *src1, int src1_length, const char *src2, int src2_length, int internal);
ZEND_API void zend_mangle_property_name(char **dest, zend_size_t *dest_length, const char *src1, zend_size_t src1_length, const char *src2, zend_size_t src2_length, int internal);
#define zend_unmangle_property_name(mangled_property, mangled_property_len, class_name, prop_name) \
zend_unmangle_property_name_ex(mangled_property, mangled_property_len, class_name, prop_name, NULL)
ZEND_API int zend_unmangle_property_name_ex(const char *mangled_property, int mangled_property_len, const char **class_name, const char **prop_name, int *prop_len);
ZEND_API int zend_unmangle_property_name_ex(const char *mangled_property, zend_size_t mangled_property_len, const char **class_name, const char **prop_name, zend_size_t *prop_len);
#define ZEND_FUNCTION_DTOR (void (*)(void *)) zend_function_dtor
#define ZEND_CLASS_DTOR (void (*)(void *)) destroy_zend_class
@@ -708,21 +717,21 @@ void zend_do_mark_last_catch(const znode *first_catch, const znode *last_additio
ZEND_API zend_bool zend_is_compiling(TSRMLS_D);
ZEND_API char *zend_make_compiled_string_description(const char *name TSRMLS_DC);
ZEND_API void zend_initialize_class_data(zend_class_entry *ce, zend_bool nullify_handlers TSRMLS_DC);
int zend_get_class_fetch_type(const char *class_name, uint class_name_len);
int zend_get_class_fetch_type(const char *class_name, zend_size_t class_name_len);
typedef zend_bool (*zend_auto_global_callback)(const char *name, uint name_len TSRMLS_DC);
typedef zend_bool (*zend_auto_global_callback)(const char *name, zend_size_t name_len TSRMLS_DC);
typedef struct _zend_auto_global {
const char *name;
uint name_len;
zend_size_t name_len;
zend_auto_global_callback auto_global_callback;
zend_bool jit;
zend_bool armed;
} zend_auto_global;
ZEND_API int zend_register_auto_global(const char *name, uint name_len, zend_bool jit, zend_auto_global_callback auto_global_callback TSRMLS_DC);
ZEND_API int zend_register_auto_global(const char *name, zend_size_t name_len, zend_bool jit, zend_auto_global_callback auto_global_callback TSRMLS_DC);
ZEND_API void zend_activate_auto_globals(TSRMLS_D);
ZEND_API zend_bool zend_is_auto_global(const char *name, uint name_len TSRMLS_DC);
ZEND_API zend_bool zend_is_auto_global_quick(const char *name, uint name_len, ulong hashval TSRMLS_DC);
ZEND_API zend_bool zend_is_auto_global(const char *name, zend_size_t name_len TSRMLS_DC);
ZEND_API zend_bool zend_is_auto_global_quick(const char *name, zend_size_t name_len, zend_uint_t hashval TSRMLS_DC);
ZEND_API size_t zend_dirname(char *path, size_t len);
int zendlex(znode *zendlval TSRMLS_DC);
@@ -859,6 +868,9 @@ int zend_add_literal(zend_op_array *op_array, const zval *zv TSRMLS_DC);
#define ZEND_FAST_RET_TO_CATCH 1
#define ZEND_FAST_RET_TO_FINALLY 2
#define ZEND_FAST_CALL_FROM_CATCH 1
#define ZEND_FAST_CALL_FROM_FINALLY 2
END_EXTERN_C()
#define ZEND_CLONE_FUNC_NAME "__clone"
@@ -873,6 +885,7 @@ END_EXTERN_C()
#define ZEND_TOSTRING_FUNC_NAME "__tostring"
#define ZEND_AUTOLOAD_FUNC_NAME "__autoload"
#define ZEND_INVOKE_FUNC_NAME "__invoke"
#define ZEND_DEBUGINFO_FUNC_NAME "__debuginfo"
/* The following constants may be combined in CG(compiler_options)
* to change the default compiler behavior */
+46 -46
View File
@@ -95,26 +95,26 @@ int zend_startup_constants(TSRMLS_D)
void zend_register_standard_constants(TSRMLS_D)
{
REGISTER_MAIN_LONG_CONSTANT("E_ERROR", E_ERROR, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_RECOVERABLE_ERROR", E_RECOVERABLE_ERROR, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_WARNING", E_WARNING, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_PARSE", E_PARSE, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_NOTICE", E_NOTICE, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_STRICT", E_STRICT, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_DEPRECATED", E_DEPRECATED, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_CORE_ERROR", E_CORE_ERROR, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_CORE_WARNING", E_CORE_WARNING, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_COMPILE_ERROR", E_COMPILE_ERROR, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_COMPILE_WARNING", E_COMPILE_WARNING, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_USER_ERROR", E_USER_ERROR, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_USER_WARNING", E_USER_WARNING, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_USER_NOTICE", E_USER_NOTICE, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_USER_DEPRECATED", E_USER_DEPRECATED, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("E_ERROR", E_ERROR, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("E_RECOVERABLE_ERROR", E_RECOVERABLE_ERROR, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("E_WARNING", E_WARNING, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("E_PARSE", E_PARSE, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("E_NOTICE", E_NOTICE, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("E_STRICT", E_STRICT, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("E_DEPRECATED", E_DEPRECATED, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("E_CORE_ERROR", E_CORE_ERROR, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("E_CORE_WARNING", E_CORE_WARNING, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("E_COMPILE_ERROR", E_COMPILE_ERROR, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("E_COMPILE_WARNING", E_COMPILE_WARNING, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("E_USER_ERROR", E_USER_ERROR, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("E_USER_WARNING", E_USER_WARNING, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("E_USER_NOTICE", E_USER_NOTICE, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("E_USER_DEPRECATED", E_USER_DEPRECATED, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_ALL", E_ALL, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("E_ALL", E_ALL, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("DEBUG_BACKTRACE_PROVIDE_OBJECT", DEBUG_BACKTRACE_PROVIDE_OBJECT, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("DEBUG_BACKTRACE_IGNORE_ARGS", DEBUG_BACKTRACE_IGNORE_ARGS, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("DEBUG_BACKTRACE_PROVIDE_OBJECT", DEBUG_BACKTRACE_PROVIDE_OBJECT, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_INT_CONSTANT("DEBUG_BACKTRACE_IGNORE_ARGS", DEBUG_BACKTRACE_IGNORE_ARGS, CONST_PERSISTENT | CONST_CS);
/* true/false constants */
{
REGISTER_MAIN_BOOL_CONSTANT("TRUE", 1, CONST_PERSISTENT | CONST_CT_SUBST);
@@ -143,7 +143,7 @@ void clean_non_persistent_constants(TSRMLS_D)
}
}
ZEND_API void zend_register_null_constant(const char *name, uint name_len, int flags, int module_number TSRMLS_DC)
ZEND_API void zend_register_null_constant(const char *name, zend_size_t name_len, int flags, int module_number TSRMLS_DC)
{
zend_constant c;
@@ -155,7 +155,7 @@ ZEND_API void zend_register_null_constant(const char *name, uint name_len, int f
zend_register_constant(&c TSRMLS_CC);
}
ZEND_API void zend_register_bool_constant(const char *name, uint name_len, zend_bool bval, int flags, int module_number TSRMLS_DC)
ZEND_API void zend_register_bool_constant(const char *name, zend_size_t name_len, zend_bool bval, int flags, int module_number TSRMLS_DC)
{
zend_constant c;
@@ -167,11 +167,11 @@ ZEND_API void zend_register_bool_constant(const char *name, uint name_len, zend_
zend_register_constant(&c TSRMLS_CC);
}
ZEND_API void zend_register_long_constant(const char *name, uint name_len, long lval, int flags, int module_number TSRMLS_DC)
ZEND_API void zend_register_int_constant(const char *name, zend_size_t name_len, zend_int_t lval, int flags, int module_number TSRMLS_DC)
{
zend_constant c;
ZVAL_LONG(&c.value, lval);
ZVAL_INT(&c.value, lval);
c.flags = flags;
c.name = zend_strndup(name, name_len-1);
c.name_len = name_len;
@@ -180,7 +180,7 @@ ZEND_API void zend_register_long_constant(const char *name, uint name_len, long
}
ZEND_API void zend_register_double_constant(const char *name, uint name_len, double dval, int flags, int module_number TSRMLS_DC)
ZEND_API void zend_register_double_constant(const char *name, zend_size_t name_len, double dval, int flags, int module_number TSRMLS_DC)
{
zend_constant c;
@@ -193,7 +193,7 @@ ZEND_API void zend_register_double_constant(const char *name, uint name_len, dou
}
ZEND_API void zend_register_stringl_constant(const char *name, uint name_len, char *strval, uint strlen, int flags, int module_number TSRMLS_DC)
ZEND_API void zend_register_stringl_constant(const char *name, zend_size_t name_len, char *strval, zend_size_t strlen, int flags, int module_number TSRMLS_DC)
{
zend_constant c;
@@ -206,12 +206,12 @@ ZEND_API void zend_register_stringl_constant(const char *name, uint name_len, ch
}
ZEND_API void zend_register_string_constant(const char *name, uint name_len, char *strval, int flags, int module_number TSRMLS_DC)
ZEND_API void zend_register_string_constant(const char *name, zend_size_t name_len, char *strval, int flags, int module_number TSRMLS_DC)
{
zend_register_stringl_constant(name, name_len, strval, strlen(strval), flags, module_number TSRMLS_CC);
}
static int zend_get_special_constant(const char *name, uint name_len, zend_constant **c TSRMLS_DC)
static int zend_get_special_constant(const char *name, zend_size_t name_len, zend_constant **c TSRMLS_DC)
{
int ret;
static char haltoff[] = "__COMPILER_HALT_OFFSET__";
@@ -224,7 +224,7 @@ static int zend_get_special_constant(const char *name, uint name_len, zend_const
/* Returned constants may be cached, so they have to be stored */
if (EG(scope) && EG(scope)->name) {
int const_name_len;
zend_size_t const_name_len;
char *const_name;
ALLOCA_FLAG(use_heap)
@@ -236,7 +236,7 @@ static int zend_get_special_constant(const char *name, uint name_len, zend_const
zend_hash_add(EG(zend_constants), const_name, const_name_len, (void*)&tmp, sizeof(zend_constant), (void**)c);
memset(*c, 0, sizeof(zend_constant));
Z_STRVAL((**c).value) = estrndup(EG(scope)->name, EG(scope)->name_length);
Z_STRLEN((**c).value) = EG(scope)->name_length;
Z_STRSIZE((**c).value) = EG(scope)->name_length;
Z_TYPE((**c).value) = IS_STRING;
}
free_alloca(const_name, use_heap);
@@ -245,7 +245,7 @@ static int zend_get_special_constant(const char *name, uint name_len, zend_const
zend_hash_add(EG(zend_constants), "\0__CLASS__", sizeof("\0__CLASS__"), (void*)&tmp, sizeof(zend_constant), (void**)c);
memset(*c, 0, sizeof(zend_constant));
Z_STRVAL((**c).value) = estrndup("", 0);
Z_STRLEN((**c).value) = 0;
Z_STRSIZE((**c).value) = 0;
Z_TYPE((**c).value) = IS_STRING;
}
}
@@ -254,7 +254,7 @@ static int zend_get_special_constant(const char *name, uint name_len, zend_const
!memcmp(name, "__COMPILER_HALT_OFFSET__", sizeof("__COMPILER_HALT_OFFSET__")-1)) {
const char *cfilename;
char *haltname;
int len, clen;
zend_size_t len, clen;
cfilename = zend_get_executed_filename(TSRMLS_C);
clen = strlen(cfilename);
@@ -270,7 +270,7 @@ static int zend_get_special_constant(const char *name, uint name_len, zend_const
}
ZEND_API int zend_get_constant(const char *name, uint name_len, zval *result TSRMLS_DC)
ZEND_API int zend_get_constant(const char *name, zend_size_t name_len, zval *result TSRMLS_DC)
{
zend_constant *c;
int retval = 1;
@@ -299,7 +299,7 @@ ZEND_API int zend_get_constant(const char *name, uint name_len, zval *result TSR
return retval;
}
ZEND_API int zend_get_constant_ex(const char *name, uint name_len, zval *result, zend_class_entry *scope, ulong flags TSRMLS_DC)
ZEND_API int zend_get_constant_ex(const char *name, zend_size_t name_len, zval *result, zend_class_entry *scope, zend_uint_t flags TSRMLS_DC)
{
zend_constant *c;
int retval = 1;
@@ -317,8 +317,8 @@ ZEND_API int zend_get_constant_ex(const char *name, uint name_len, zval *result,
if ((colon = zend_memrchr(name, ':', name_len)) &&
colon > name && (*(colon - 1) == ':')) {
int class_name_len = colon - name - 1;
int const_name_len = name_len - class_name_len - 2;
zend_size_t class_name_len = colon - name - 1;
zend_size_t const_name_len = name_len - class_name_len - 2;
const char *constant_name = colon + 1;
char *lcname;
@@ -380,8 +380,8 @@ ZEND_API int zend_get_constant_ex(const char *name, uint name_len, zval *result,
/* non-class constant */
if ((colon = zend_memrchr(name, '\\', name_len)) != NULL) {
/* compound constant name */
int prefix_len = colon - name;
int const_name_len = name_len - prefix_len - 1;
zend_size_t prefix_len = colon - name;
zend_size_t const_name_len = name_len - prefix_len - 1;
const char *constant_name = colon + 1;
char *lcname;
int found_const = 0;
@@ -408,7 +408,7 @@ ZEND_API int zend_get_constant_ex(const char *name, uint name_len, zval *result,
efree(lcname);
if(found_const) {
*result = c->value;
zval_update_constant_ex(&result, (void*)1, NULL TSRMLS_CC);
zval_update_constant_ex(&result, 1, NULL TSRMLS_CC);
zval_copy_ctor(result);
Z_SET_REFCOUNT_P(result, 1);
Z_UNSET_ISREF_P(result);
@@ -423,7 +423,7 @@ ZEND_API int zend_get_constant_ex(const char *name, uint name_len, zval *result,
retval = 0;
finish:
if (retval) {
zval_update_constant_ex(ret_constant, (void*)1, ce TSRMLS_CC);
zval_update_constant_ex(ret_constant, 1, ce TSRMLS_CC);
*result = **ret_constant;
zval_copy_ctor(result);
INIT_PZVAL(result);
@@ -435,30 +435,30 @@ finish:
return zend_get_constant(name, name_len, result TSRMLS_CC);
}
zend_constant *zend_quick_get_constant(const zend_literal *key, ulong flags TSRMLS_DC)
zend_constant *zend_quick_get_constant(const zend_literal *key, zend_uint_t flags TSRMLS_DC)
{
zend_constant *c;
if (zend_hash_quick_find(EG(zend_constants), Z_STRVAL(key->constant), Z_STRLEN(key->constant) + 1, key->hash_value, (void **) &c) == FAILURE) {
if (zend_hash_quick_find(EG(zend_constants), Z_STRVAL(key->constant), Z_STRSIZE(key->constant) + 1, key->hash_value, (void **) &c) == FAILURE) {
key++;
if (zend_hash_quick_find(EG(zend_constants), Z_STRVAL(key->constant), Z_STRLEN(key->constant) + 1, key->hash_value, (void **) &c) == FAILURE ||
if (zend_hash_quick_find(EG(zend_constants), Z_STRVAL(key->constant), Z_STRSIZE(key->constant) + 1, key->hash_value, (void **) &c) == FAILURE ||
(c->flags & CONST_CS) != 0) {
if ((flags & (IS_CONSTANT_IN_NAMESPACE|IS_CONSTANT_UNQUALIFIED)) == (IS_CONSTANT_IN_NAMESPACE|IS_CONSTANT_UNQUALIFIED)) {
key++;
if (zend_hash_quick_find(EG(zend_constants), Z_STRVAL(key->constant), Z_STRLEN(key->constant) + 1, key->hash_value, (void **) &c) == FAILURE) {
if (zend_hash_quick_find(EG(zend_constants), Z_STRVAL(key->constant), Z_STRSIZE(key->constant) + 1, key->hash_value, (void **) &c) == FAILURE) {
key++;
if (zend_hash_quick_find(EG(zend_constants), Z_STRVAL(key->constant), Z_STRLEN(key->constant) + 1, key->hash_value, (void **) &c) == FAILURE ||
if (zend_hash_quick_find(EG(zend_constants), Z_STRVAL(key->constant), Z_STRSIZE(key->constant) + 1, key->hash_value, (void **) &c) == FAILURE ||
(c->flags & CONST_CS) != 0) {
key--;
if (!zend_get_special_constant(Z_STRVAL(key->constant), Z_STRLEN(key->constant), &c TSRMLS_CC)) {
if (!zend_get_special_constant(Z_STRVAL(key->constant), Z_STRSIZE(key->constant), &c TSRMLS_CC)) {
return NULL;
}
}
}
} else {
key--;
if (!zend_get_special_constant(Z_STRVAL(key->constant), Z_STRLEN(key->constant), &c TSRMLS_CC)) {
if (!zend_get_special_constant(Z_STRVAL(key->constant), Z_STRSIZE(key->constant), &c TSRMLS_CC)) {
return NULL;
}
}
@@ -472,7 +472,7 @@ ZEND_API int zend_register_constant(zend_constant *c TSRMLS_DC)
char *lowercase_name = NULL;
char *name;
int ret = SUCCESS;
ulong chash;
zend_uint_t chash;
#if 0
printf("Registering constant for module %d\n", c->module_number);
+13 -13
View File
@@ -34,27 +34,27 @@ typedef struct _zend_constant {
zval value;
int flags;
char *name;
uint name_len;
zend_size_t name_len;
int module_number;
} zend_constant;
#define REGISTER_NULL_CONSTANT(name, flags) zend_register_null_constant((name), sizeof(name), (flags), module_number TSRMLS_CC)
#define REGISTER_BOOL_CONSTANT(name, bval, flags) zend_register_bool_constant((name), sizeof(name), (bval), (flags), module_number TSRMLS_CC)
#define REGISTER_LONG_CONSTANT(name, lval, flags) zend_register_long_constant((name), sizeof(name), (lval), (flags), module_number TSRMLS_CC)
#define REGISTER_INT_CONSTANT(name, lval, flags) zend_register_int_constant((name), sizeof(name), (lval), (flags), module_number TSRMLS_CC)
#define REGISTER_DOUBLE_CONSTANT(name, dval, flags) zend_register_double_constant((name), sizeof(name), (dval), (flags), module_number TSRMLS_CC)
#define REGISTER_STRING_CONSTANT(name, str, flags) zend_register_string_constant((name), sizeof(name), (str), (flags), module_number TSRMLS_CC)
#define REGISTER_STRINGL_CONSTANT(name, str, len, flags) zend_register_stringl_constant((name), sizeof(name), (str), (len), (flags), module_number TSRMLS_CC)
#define REGISTER_NS_NULL_CONSTANT(ns, name, flags) zend_register_null_constant(ZEND_NS_NAME(ns, name), sizeof(ZEND_NS_NAME(ns, name)), (flags), module_number TSRMLS_CC)
#define REGISTER_NS_BOOL_CONSTANT(ns, name, bval, flags) zend_register_bool_constant(ZEND_NS_NAME(ns, name), sizeof(ZEND_NS_NAME(ns, name)), (bval), (flags), module_number TSRMLS_CC)
#define REGISTER_NS_LONG_CONSTANT(ns, name, lval, flags) zend_register_long_constant(ZEND_NS_NAME(ns, name), sizeof(ZEND_NS_NAME(ns, name)), (lval), (flags), module_number TSRMLS_CC)
#define REGISTER_NS_INT_CONSTANT(ns, name, lval, flags) zend_register_int_constant(ZEND_NS_NAME(ns, name), sizeof(ZEND_NS_NAME(ns, name)), (lval), (flags), module_number TSRMLS_CC)
#define REGISTER_NS_DOUBLE_CONSTANT(ns, name, dval, flags) zend_register_double_constant(ZEND_NS_NAME(ns, name), sizeof(ZEND_NS_NAME(ns, name)), (dval), (flags), module_number TSRMLS_CC)
#define REGISTER_NS_STRING_CONSTANT(ns, name, str, flags) zend_register_string_constant(ZEND_NS_NAME(ns, name), sizeof(ZEND_NS_NAME(ns, name)), (str), (flags), module_number TSRMLS_CC)
#define REGISTER_NS_STRINGL_CONSTANT(ns, name, str, len, flags) zend_register_stringl_constant(ZEND_NS_NAME(ns, name), sizeof(ZEND_NS_NAME(ns, name)), (str), (len), (flags), module_number TSRMLS_CC)
#define REGISTER_MAIN_NULL_CONSTANT(name, flags) zend_register_null_constant((name), sizeof(name), (flags), 0 TSRMLS_CC)
#define REGISTER_MAIN_BOOL_CONSTANT(name, bval, flags) zend_register_bool_constant((name), sizeof(name), (bval), (flags), 0 TSRMLS_CC)
#define REGISTER_MAIN_LONG_CONSTANT(name, lval, flags) zend_register_long_constant((name), sizeof(name), (lval), (flags), 0 TSRMLS_CC)
#define REGISTER_MAIN_INT_CONSTANT(name, lval, flags) zend_register_int_constant((name), sizeof(name), (lval), (flags), 0 TSRMLS_CC)
#define REGISTER_MAIN_DOUBLE_CONSTANT(name, dval, flags) zend_register_double_constant((name), sizeof(name), (dval), (flags), 0 TSRMLS_CC)
#define REGISTER_MAIN_STRING_CONSTANT(name, str, flags) zend_register_string_constant((name), sizeof(name), (str), (flags), 0 TSRMLS_CC)
#define REGISTER_MAIN_STRINGL_CONSTANT(name, str, len, flags) zend_register_stringl_constant((name), sizeof(name), (str), (len), (flags), 0 TSRMLS_CC)
@@ -66,18 +66,18 @@ int zend_startup_constants(TSRMLS_D);
int zend_shutdown_constants(TSRMLS_D);
void zend_register_standard_constants(TSRMLS_D);
void clean_non_persistent_constants(TSRMLS_D);
ZEND_API int zend_get_constant(const char *name, uint name_len, zval *result TSRMLS_DC);
ZEND_API int zend_get_constant_ex(const char *name, uint name_len, zval *result, zend_class_entry *scope, ulong flags TSRMLS_DC);
ZEND_API void zend_register_bool_constant(const char *name, uint name_len, zend_bool bval, int flags, int module_number TSRMLS_DC);
ZEND_API void zend_register_null_constant(const char *name, uint name_len, int flags, int module_number TSRMLS_DC);
ZEND_API void zend_register_long_constant(const char *name, uint name_len, long lval, int flags, int module_number TSRMLS_DC);
ZEND_API void zend_register_double_constant(const char *name, uint name_len, double dval, int flags, int module_number TSRMLS_DC);
ZEND_API void zend_register_string_constant(const char *name, uint name_len, char *strval, int flags, int module_number TSRMLS_DC);
ZEND_API void zend_register_stringl_constant(const char *name, uint name_len, char *strval, uint strlen, int flags, int module_number TSRMLS_DC);
ZEND_API int zend_get_constant(const char *name, zend_size_t name_len, zval *result TSRMLS_DC);
ZEND_API int zend_get_constant_ex(const char *name, zend_size_t name_len, zval *result, zend_class_entry *scope, zend_uint_t flags TSRMLS_DC);
ZEND_API void zend_register_int_constant(const char *name, zend_size_t name_len, zend_int_t lval, int flags, int module_number TSRMLS_DC);
ZEND_API void zend_register_double_constant(const char *name, zend_size_t name_len, double dval, int flags, int module_number TSRMLS_DC);
ZEND_API void zend_register_string_constant(const char *name, zend_size_t name_len, char *strval, int flags, int module_number TSRMLS_DC);
ZEND_API void zend_register_stringl_constant(const char *name, zend_size_t name_len, char *strval, zend_size_t strlen, int flags, int module_number TSRMLS_DC);
ZEND_API void zend_register_bool_constant(const char *name, zend_size_t name_len, zend_bool bval, int flags, int module_number TSRMLS_DC);
ZEND_API void zend_register_null_constant(const char *name, zend_size_t name_len, int flags, int module_number TSRMLS_DC);
ZEND_API int zend_register_constant(zend_constant *c TSRMLS_DC);
void zend_copy_constants(HashTable *target, HashTable *sourc);
void copy_zend_constant(zend_constant *c);
zend_constant *zend_quick_get_constant(const zend_literal *key, ulong flags TSRMLS_DC);
zend_constant *zend_quick_get_constant(const zend_literal *key, zend_uint_t flags TSRMLS_DC);
END_EXTERN_C()
#define ZEND_CONSTANT_DTOR (void (*)(void *)) free_zend_constant
+125 -68
View File
@@ -86,7 +86,7 @@ void zend_throw_exception_internal(zval *exception TSRMLS_DC) /* {{{ */
#ifdef HAVE_DTRACE
if (DTRACE_EXCEPTION_THROWN_ENABLED()) {
const char *classname;
zend_uint name_len;
zend_size_t name_len;
if (exception != NULL) {
zend_get_object_classname(exception, &classname, &name_len TSRMLS_CC);
@@ -161,7 +161,7 @@ static zend_object_value zend_default_exception_new_ex(zend_class_entry *class_t
zend_fetch_debug_backtrace(trace, skip_top_traces, 0, 0 TSRMLS_CC);
zend_update_property_string(default_exception_ce, &obj, "file", sizeof("file")-1, zend_get_executed_filename(TSRMLS_C) TSRMLS_CC);
zend_update_property_long(default_exception_ce, &obj, "line", sizeof("line")-1, zend_get_executed_lineno(TSRMLS_C) TSRMLS_CC);
zend_update_property_int(default_exception_ce, &obj, "line", sizeof("line")-1, zend_get_executed_lineno(TSRMLS_C) TSRMLS_CC);
zend_update_property(default_exception_ce, &obj, "trace", sizeof("trace")-1, trace TSRMLS_CC);
return Z_OBJVAL(obj);
@@ -194,11 +194,12 @@ ZEND_METHOD(exception, __clone)
ZEND_METHOD(exception, __construct)
{
char *message = NULL;
long code = 0;
zend_int_t code = 0;
zval *object, *previous = NULL;
int argc = ZEND_NUM_ARGS(), message_len;
int argc = ZEND_NUM_ARGS();
zend_size_t message_len;
if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, argc TSRMLS_CC, "|slO!", &message, &message_len, &code, &previous, default_exception_ce) == FAILURE) {
if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, argc TSRMLS_CC, "|SiO!", &message, &message_len, &code, &previous, default_exception_ce) == FAILURE) {
zend_error(E_ERROR, "Wrong parameters for Exception([string $exception [, long $code [, Exception $previous = NULL]]])");
}
@@ -209,7 +210,7 @@ ZEND_METHOD(exception, __construct)
}
if (code) {
zend_update_property_long(default_exception_ce, object, "code", sizeof("code")-1, code TSRMLS_CC);
zend_update_property_int(default_exception_ce, object, "code", sizeof("code")-1, code TSRMLS_CC);
}
if (previous) {
@@ -223,11 +224,12 @@ ZEND_METHOD(exception, __construct)
ZEND_METHOD(error_exception, __construct)
{
char *message = NULL, *filename = NULL;
long code = 0, severity = E_ERROR, lineno;
zend_int_t code = 0, severity = E_ERROR, lineno;
zval *object, *previous = NULL;
int argc = ZEND_NUM_ARGS(), message_len, filename_len;
int argc = ZEND_NUM_ARGS();
zend_size_t message_len, filename_len;
if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, argc TSRMLS_CC, "|sllslO!", &message, &message_len, &code, &severity, &filename, &filename_len, &lineno, &previous, default_exception_ce) == FAILURE) {
if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, argc TSRMLS_CC, "|SiiSiO!", &message, &message_len, &code, &severity, &filename, &filename_len, &lineno, &previous, default_exception_ce) == FAILURE) {
zend_error(E_ERROR, "Wrong parameters for ErrorException([string $exception [, long $code, [ long $severity, [ string $filename, [ long $lineno [, Exception $previous = NULL]]]]]])");
}
@@ -238,21 +240,21 @@ ZEND_METHOD(error_exception, __construct)
}
if (code) {
zend_update_property_long(default_exception_ce, object, "code", sizeof("code")-1, code TSRMLS_CC);
zend_update_property_int(default_exception_ce, object, "code", sizeof("code")-1, code TSRMLS_CC);
}
if (previous) {
zend_update_property(default_exception_ce, object, "previous", sizeof("previous")-1, previous TSRMLS_CC);
}
zend_update_property_long(default_exception_ce, object, "severity", sizeof("severity")-1, severity TSRMLS_CC);
zend_update_property_int(default_exception_ce, object, "severity", sizeof("severity")-1, severity TSRMLS_CC);
if (argc >= 4) {
zend_update_property_string(default_exception_ce, object, "file", sizeof("file")-1, filename TSRMLS_CC);
if (argc < 5) {
lineno = 0; /* invalidate lineno */
}
zend_update_property_long(default_exception_ce, object, "line", sizeof("line")-1, lineno TSRMLS_CC);
zend_update_property_int(default_exception_ce, object, "line", sizeof("line")-1, lineno TSRMLS_CC);
}
}
/* }}} */
@@ -262,7 +264,7 @@ ZEND_METHOD(error_exception, __construct)
return; \
}
static void _default_exception_get_entry(zval *object, char *name, int name_len, zval *return_value TSRMLS_DC) /* {{{ */
static void _default_exception_get_entry(zval *object, char *name, zend_size_t name_len, zval *return_value TSRMLS_DC) /* {{{ */
{
zval *value;
@@ -341,7 +343,7 @@ ZEND_METHOD(error_exception, getSeverity)
#define TRACE_APPEND_STRL(val, vallen) \
{ \
int l = vallen; \
zend_size_t l = vallen; \
*str = (char*)erealloc(*str, *len + l + 1); \
memcpy((*str) + *len, val, l); \
*len += l; \
@@ -356,22 +358,27 @@ ZEND_METHOD(error_exception, getSeverity)
zend_error(E_WARNING, "Value for %s is no string", key); \
TRACE_APPEND_STR("[unknown]"); \
} else { \
TRACE_APPEND_STRL(Z_STRVAL_PP(tmp), Z_STRLEN_PP(tmp)); \
TRACE_APPEND_STRL(Z_STRVAL_PP(tmp), Z_STRSIZE_PP(tmp)); \
} \
}
#define TRACE_ARG_APPEND(vallen) \
*str = (char*)erealloc(*str, *len + 1 + vallen); \
memmove((*str) + *len - l_added + 1 + vallen, (*str) + *len - l_added + 1, l_added);
/* }}} */
static int _build_trace_args(zval **arg TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */
{
char **str;
int *len;
zend_size_t *len;
str = va_arg(args, char**);
len = va_arg(args, int*);
len = va_arg(args, zend_size_t*);
/* the trivial way would be to do:
* conver_to_string_ex(arg);
* convert_to_string_ex(arg);
* append it and kill the now tmp arg.
* but that could cause some E_NOTICE and also damn long lines.
*/
@@ -381,27 +388,77 @@ static int _build_trace_args(zval **arg TSRMLS_DC, int num_args, va_list args, z
TRACE_APPEND_STR("NULL, ");
break;
case IS_STRING: {
int l_added;
zend_size_t l_added;
TRACE_APPEND_CHR('\'');
if (Z_STRLEN_PP(arg) > 15) {
if (Z_STRSIZE_PP(arg) > 15) {
TRACE_APPEND_STRL(Z_STRVAL_PP(arg), 15);
TRACE_APPEND_STR("...', ");
l_added = 15 + 6 + 1; /* +1 because of while (--l_added) */
} else {
l_added = Z_STRLEN_PP(arg);
l_added = Z_STRSIZE_PP(arg);
TRACE_APPEND_STRL(Z_STRVAL_PP(arg), l_added);
TRACE_APPEND_STR("', ");
l_added += 3 + 1;
}
while (--l_added) {
if ((*str)[*len - l_added] < 32) {
(*str)[*len - l_added] = '?';
unsigned char chr = (*str)[*len - l_added];
if (chr < 32 || chr == '\\' || chr > 126) {
(*str)[*len - l_added] = '\\';
switch (chr) {
case '\n':
TRACE_ARG_APPEND(1);
(*str)[++(*len) - l_added] = 'n';
break;
case '\r':
TRACE_ARG_APPEND(1);
(*str)[++(*len) - l_added] = 'r';
break;
case '\t':
TRACE_ARG_APPEND(1);
(*str)[++(*len) - l_added] = 't';
break;
case '\f':
TRACE_ARG_APPEND(1);
(*str)[++(*len) - l_added] = 'f';
break;
case '\v':
TRACE_ARG_APPEND(1);
(*str)[++(*len) - l_added] = 'v';
break;
#ifndef PHP_WIN32
case '\e':
#else
case VK_ESCAPE:
#endif
TRACE_ARG_APPEND(1);
(*str)[++(*len) - l_added] = 'e';
break;
case '\\':
TRACE_ARG_APPEND(1);
(*str)[++(*len) - l_added] = '\\';
break;
default:
TRACE_ARG_APPEND(3);
(*str)[*len - l_added + 1] = 'x';
if ((chr >> 4) < 10) {
(*str)[*len - l_added + 2] = (chr >> 4) + '0';
} else {
(*str)[*len - l_added + 2] = (chr >> 4) + 'A' - 10;
}
if (chr % 16 < 10) {
(*str)[*len - l_added + 3] = chr % 16 + '0';
} else {
(*str)[*len - l_added + 3] = chr % 16 + 'A' - 10;
}
*len += 3;
}
}
}
break;
}
case IS_BOOL:
if (Z_LVAL_PP(arg)) {
if (Z_IVAL_PP(arg)) {
TRACE_APPEND_STR("true, ");
} else {
TRACE_APPEND_STR("false, ");
@@ -410,10 +467,10 @@ static int _build_trace_args(zval **arg TSRMLS_DC, int num_args, va_list args, z
case IS_RESOURCE:
TRACE_APPEND_STR("Resource id #");
/* break; */
case IS_LONG: {
long lval = Z_LVAL_PP(arg);
char s_tmp[MAX_LENGTH_OF_LONG + 1];
int l_tmp = zend_sprintf(s_tmp, "%ld", lval); /* SAFE */
case IS_INT: {
zend_int_t lval = Z_IVAL_PP(arg);
char s_tmp[MAX_LENGTH_OF_ZEND_INT + 1];
zend_size_t l_tmp = zend_sprintf(s_tmp, ZEND_INT_FMT, lval); /* SAFE */
TRACE_APPEND_STRL(s_tmp, l_tmp);
TRACE_APPEND_STR(", ");
break;
@@ -421,7 +478,7 @@ static int _build_trace_args(zval **arg TSRMLS_DC, int num_args, va_list args, z
case IS_DOUBLE: {
double dval = Z_DVAL_PP(arg);
char *s_tmp;
int l_tmp;
zend_size_t l_tmp;
s_tmp = emalloc(MAX_LENGTH_OF_DOUBLE + EG(precision) + 1);
l_tmp = zend_sprintf(s_tmp, "%.*G", (int) EG(precision), dval); /* SAFE */
@@ -436,7 +493,7 @@ static int _build_trace_args(zval **arg TSRMLS_DC, int num_args, va_list args, z
break;
case IS_OBJECT: {
const char *class_name;
zend_uint class_name_len;
zend_size_t class_name_len;
int dup;
TRACE_APPEND_STR("Object(");
@@ -461,8 +518,8 @@ static int _build_trace_args(zval **arg TSRMLS_DC, int num_args, va_list args, z
static int _build_trace_string(zval **frame TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */
{
char *s_tmp, **str;
int *len, *num;
long line;
zend_size_t *len, *num;
zend_int_t line;
HashTable *ht = Z_ARRVAL_PP(frame);
zval **file, **tmp;
@@ -472,11 +529,11 @@ static int _build_trace_string(zval **frame TSRMLS_DC, int num_args, va_list arg
}
str = va_arg(args, char**);
len = va_arg(args, int*);
num = va_arg(args, int*);
len = va_arg(args, zend_size_t*);
num = va_arg(args, zend_size_t*);
s_tmp = emalloc(1 + MAX_LENGTH_OF_LONG + 1 + 1);
sprintf(s_tmp, "#%d ", (*num)++);
s_tmp = emalloc(1 + MAX_LENGTH_OF_ZEND_INT + 1 + 1);
sprintf(s_tmp, "#" ZEND_INT_FMT " ", (*num)++);
TRACE_APPEND_STRL(s_tmp, strlen(s_tmp));
efree(s_tmp);
if (zend_hash_find(ht, "file", sizeof("file"), (void**)&file) == SUCCESS) {
@@ -485,8 +542,8 @@ static int _build_trace_string(zval **frame TSRMLS_DC, int num_args, va_list arg
TRACE_APPEND_STR("[unknown function]");
} else{
if (zend_hash_find(ht, "line", sizeof("line"), (void**)&tmp) == SUCCESS) {
if (Z_TYPE_PP(tmp) == IS_LONG) {
line = Z_LVAL_PP(tmp);
if (Z_TYPE_PP(tmp) == IS_INT) {
line = Z_IVAL_PP(tmp);
} else {
zend_error(E_WARNING, "Line is no long");
line = 0;
@@ -494,8 +551,8 @@ static int _build_trace_string(zval **frame TSRMLS_DC, int num_args, va_list arg
} else {
line = 0;
}
s_tmp = emalloc(Z_STRLEN_PP(file) + MAX_LENGTH_OF_LONG + 4 + 1);
sprintf(s_tmp, "%s(%ld): ", Z_STRVAL_PP(file), line);
s_tmp = emalloc(Z_STRSIZE_PP(file) + MAX_LENGTH_OF_ZEND_INT + 4 + 1);
sprintf(s_tmp, "%s(" ZEND_INT_FMT "): ", Z_STRVAL_PP(file), line);
TRACE_APPEND_STRL(s_tmp, strlen(s_tmp));
efree(s_tmp);
}
@@ -508,7 +565,7 @@ static int _build_trace_string(zval **frame TSRMLS_DC, int num_args, va_list arg
TRACE_APPEND_CHR('(');
if (zend_hash_find(ht, "args", sizeof("args"), (void**)&tmp) == SUCCESS) {
if (Z_TYPE_PP(tmp) == IS_ARRAY) {
int last_len = *len;
zend_size_t last_len = *len;
zend_hash_apply_with_arguments(Z_ARRVAL_PP(tmp) TSRMLS_CC, (apply_func_args_t)_build_trace_args, 2, str, len);
if (last_len != *len) {
*len -= 2; /* remove last ', ' */
@@ -528,7 +585,7 @@ ZEND_METHOD(exception, getTraceAsString)
{
zval *trace;
char *res, **str, *s_tmp;
int res_len = 0, *len = &res_len, num = 0;
zend_size_t res_len = 0, *len = &res_len, num = 0;
DEFAULT_0_PARAMS;
@@ -538,8 +595,8 @@ ZEND_METHOD(exception, getTraceAsString)
trace = zend_read_property(default_exception_ce, getThis(), "trace", sizeof("trace")-1, 1 TSRMLS_CC);
zend_hash_apply_with_arguments(Z_ARRVAL_P(trace) TSRMLS_CC, (apply_func_args_t)_build_trace_string, 3, str, len, &num);
s_tmp = emalloc(1 + MAX_LENGTH_OF_LONG + 7 + 1);
sprintf(s_tmp, "#%d {main}", num);
s_tmp = emalloc(1 + MAX_LENGTH_OF_ZEND_INT + 7 + 1);
sprintf(s_tmp, "#" ZEND_INT_FMT " {main}", num);
TRACE_APPEND_STRL(s_tmp, strlen(s_tmp));
efree(s_tmp);
@@ -560,10 +617,10 @@ ZEND_METHOD(exception, getPrevious)
RETURN_ZVAL(previous, 1, 0);
}
int zend_spprintf(char **message, int max_len, const char *format, ...) /* {{{ */
zend_size_t zend_spprintf(char **message, zend_size_t max_len, const char *format, ...) /* {{{ */
{
va_list arg;
int len;
zend_size_t len;
va_start(arg, format);
len = zend_vspprintf(message, max_len, format, arg);
@@ -578,7 +635,7 @@ ZEND_METHOD(exception, __toString)
{
zval message, file, line, *trace, *exception;
char *str, *prev_str;
int len = 0;
zend_size_t len = 0;
zend_fcall_info fci;
zval fname;
@@ -597,7 +654,7 @@ ZEND_METHOD(exception, __toString)
convert_to_string(&message);
convert_to_string(&file);
convert_to_long(&line);
convert_to_int(&line);
fci.size = sizeof(fci);
fci.function_table = &Z_OBJCE_P(exception)->function_table;
@@ -616,15 +673,15 @@ ZEND_METHOD(exception, __toString)
trace = NULL;
}
if (Z_STRLEN(message) > 0) {
len = zend_spprintf(&str, 0, "exception '%s' with message '%s' in %s:%ld\nStack trace:\n%s%s%s",
Z_OBJCE_P(exception)->name, Z_STRVAL(message), Z_STRVAL(file), Z_LVAL(line),
(trace && Z_STRLEN_P(trace)) ? Z_STRVAL_P(trace) : "#0 {main}\n",
if (Z_STRSIZE(message) > 0) {
len = zend_spprintf(&str, 0, "exception '%s' with message '%s' in %s:" ZEND_INT_FMT "\nStack trace:\n%s%s%s",
Z_OBJCE_P(exception)->name, Z_STRVAL(message), Z_STRVAL(file), Z_IVAL(line),
(trace && Z_STRSIZE_P(trace)) ? Z_STRVAL_P(trace) : "#0 {main}\n",
len ? "\n\nNext " : "", prev_str);
} else {
len = zend_spprintf(&str, 0, "exception '%s' in %s:%ld\nStack trace:\n%s%s%s",
Z_OBJCE_P(exception)->name, Z_STRVAL(file), Z_LVAL(line),
(trace && Z_STRLEN_P(trace)) ? Z_STRVAL_P(trace) : "#0 {main}\n",
len = zend_spprintf(&str, 0, "exception '%s' in %s:" ZEND_INT_FMT "\nStack trace:\n%s%s%s",
Z_OBJCE_P(exception)->name, Z_STRVAL(file), Z_IVAL(line),
(trace && Z_STRSIZE_P(trace)) ? Z_STRVAL_P(trace) : "#0 {main}\n",
len ? "\n\nNext " : "", prev_str);
}
efree(prev_str);
@@ -707,7 +764,7 @@ void zend_register_default_exception(TSRMLS_D) /* {{{ */
zend_declare_property_string(default_exception_ce, "message", sizeof("message")-1, "", ZEND_ACC_PROTECTED TSRMLS_CC);
zend_declare_property_string(default_exception_ce, "string", sizeof("string")-1, "", ZEND_ACC_PRIVATE TSRMLS_CC);
zend_declare_property_long(default_exception_ce, "code", sizeof("code")-1, 0, ZEND_ACC_PROTECTED TSRMLS_CC);
zend_declare_property_int(default_exception_ce, "code", sizeof("code")-1, 0, ZEND_ACC_PROTECTED TSRMLS_CC);
zend_declare_property_null(default_exception_ce, "file", sizeof("file")-1, ZEND_ACC_PROTECTED TSRMLS_CC);
zend_declare_property_null(default_exception_ce, "line", sizeof("line")-1, ZEND_ACC_PROTECTED TSRMLS_CC);
zend_declare_property_null(default_exception_ce, "trace", sizeof("trace")-1, ZEND_ACC_PRIVATE TSRMLS_CC);
@@ -716,7 +773,7 @@ void zend_register_default_exception(TSRMLS_D) /* {{{ */
INIT_CLASS_ENTRY(ce, "ErrorException", error_exception_functions);
error_exception_ce = zend_register_internal_class_ex(&ce, default_exception_ce, NULL TSRMLS_CC);
error_exception_ce->create_object = zend_error_exception_new;
zend_declare_property_long(error_exception_ce, "severity", sizeof("severity")-1, E_ERROR, ZEND_ACC_PROTECTED TSRMLS_CC);
zend_declare_property_int(error_exception_ce, "severity", sizeof("severity")-1, E_ERROR, ZEND_ACC_PROTECTED TSRMLS_CC);
}
/* }}} */
@@ -732,7 +789,7 @@ ZEND_API zend_class_entry *zend_get_error_exception(TSRMLS_D) /* {{{ */
}
/* }}} */
ZEND_API zval * zend_throw_exception(zend_class_entry *exception_ce, const char *message, long code TSRMLS_DC) /* {{{ */
ZEND_API zval * zend_throw_exception(zend_class_entry *exception_ce, const char *message, zend_int_t code TSRMLS_DC) /* {{{ */
{
zval *ex;
@@ -752,7 +809,7 @@ ZEND_API zval * zend_throw_exception(zend_class_entry *exception_ce, const char
zend_update_property_string(default_exception_ce, ex, "message", sizeof("message")-1, message TSRMLS_CC);
}
if (code) {
zend_update_property_long(default_exception_ce, ex, "code", sizeof("code")-1, code TSRMLS_CC);
zend_update_property_int(default_exception_ce, ex, "code", sizeof("code")-1, code TSRMLS_CC);
}
zend_throw_exception_internal(ex TSRMLS_CC);
@@ -760,7 +817,7 @@ ZEND_API zval * zend_throw_exception(zend_class_entry *exception_ce, const char
}
/* }}} */
ZEND_API zval * zend_throw_exception_ex(zend_class_entry *exception_ce, long code TSRMLS_DC, const char *format, ...) /* {{{ */
ZEND_API zval * zend_throw_exception_ex(zend_class_entry *exception_ce, zend_int_t code TSRMLS_DC, const char *format, ...) /* {{{ */
{
va_list arg;
char *message;
@@ -775,15 +832,15 @@ ZEND_API zval * zend_throw_exception_ex(zend_class_entry *exception_ce, long cod
}
/* }}} */
ZEND_API zval * zend_throw_error_exception(zend_class_entry *exception_ce, const char *message, long code, int severity TSRMLS_DC) /* {{{ */
ZEND_API zval * zend_throw_error_exception(zend_class_entry *exception_ce, const char *message, zend_int_t code, int severity TSRMLS_DC) /* {{{ */
{
zval *ex = zend_throw_exception(exception_ce, message, code TSRMLS_CC);
zend_update_property_long(default_exception_ce, ex, "severity", sizeof("severity")-1, severity TSRMLS_CC);
zend_update_property_int(default_exception_ce, ex, "severity", sizeof("severity")-1, severity TSRMLS_CC);
return ex;
}
/* }}} */
static void zend_error_va(int type, const char *file, uint lineno, const char *format, ...) /* {{{ */
static void zend_error_va(int type, const char *file, zend_size_t lineno, const char *format, ...) /* {{{ */
{
va_list args;
@@ -819,13 +876,13 @@ ZEND_API void zend_exception_error(zval *exception, int severity TSRMLS_DC) /* {
line = zend_read_property(default_exception_ce, EG(exception), "line", sizeof("line")-1, 1 TSRMLS_CC);
convert_to_string(file);
file = (Z_STRLEN_P(file) > 0) ? file : NULL;
line = (Z_TYPE_P(line) == IS_LONG) ? line : NULL;
file = (Z_STRSIZE_P(file) > 0) ? file : NULL;
line = (Z_TYPE_P(line) == IS_INT) ? line : NULL;
} else {
file = NULL;
line = NULL;
}
zend_error_va(E_WARNING, file ? Z_STRVAL_P(file) : NULL, line ? Z_LVAL_P(line) : 0, "Uncaught %s in exception handling during call to %s::__tostring()", Z_OBJCE_P(EG(exception))->name, ce_exception->name);
zend_error_va(E_WARNING, file ? Z_STRVAL_P(file) : NULL, line ? Z_IVAL_P(line) : 0, "Uncaught %s in exception handling during call to %s::__tostring()", Z_OBJCE_P(EG(exception))->name, ce_exception->name);
}
str = zend_read_property(default_exception_ce, exception, "string", sizeof("string")-1, 1 TSRMLS_CC);
@@ -834,9 +891,9 @@ ZEND_API void zend_exception_error(zval *exception, int severity TSRMLS_DC) /* {
convert_to_string(str);
convert_to_string(file);
convert_to_long(line);
convert_to_int(line);
zend_error_va(severity, (Z_STRLEN_P(file) > 0) ? Z_STRVAL_P(file) : NULL, Z_LVAL_P(line), "Uncaught %s\n thrown", Z_STRVAL_P(str));
zend_error_va(severity, (Z_STRSIZE_P(file) > 0) ? Z_STRVAL_P(file) : NULL, Z_IVAL_P(line), "Uncaught %s\n thrown", Z_STRVAL_P(str));
} else {
zend_error(severity, "Uncaught exception '%s'", ce_exception->name);
}
+4 -4
View File
@@ -40,12 +40,12 @@ ZEND_API void zend_register_default_classes(TSRMLS_D);
/* exception_ce NULL or zend_exception_get_default() or a derived class
* message NULL or the message of the exception */
ZEND_API zval * zend_throw_exception(zend_class_entry *exception_ce, const char *message, long code TSRMLS_DC);
ZEND_API zval * zend_throw_exception_ex(zend_class_entry *exception_ce, long code TSRMLS_DC, const char *format, ...);
ZEND_API zval * zend_throw_exception(zend_class_entry *exception_ce, const char *message, zend_int_t code TSRMLS_DC);
ZEND_API zval * zend_throw_exception_ex(zend_class_entry *exception_ce, zend_int_t code TSRMLS_DC, const char *format, ...);
ZEND_API void zend_throw_exception_object(zval *exception TSRMLS_DC);
ZEND_API void zend_clear_exception(TSRMLS_D);
ZEND_API zval * zend_throw_error_exception(zend_class_entry *exception_ce, const char *message, long code, int severity TSRMLS_DC);
ZEND_API zval * zend_throw_error_exception(zend_class_entry *exception_ce, const char *message, zend_int_t code, int severity TSRMLS_DC);
extern ZEND_API void (*zend_throw_exception_hook)(zval *ex TSRMLS_DC);
@@ -53,7 +53,7 @@ extern ZEND_API void (*zend_throw_exception_hook)(zval *ex TSRMLS_DC);
ZEND_API void zend_exception_error(zval *exception, int severity TSRMLS_DC);
/* do not export, in php it's available thru spprintf directly */
int zend_spprintf(char **message, int max_len, const char *format, ...);
zend_size_t zend_spprintf(char **message, zend_size_t max_len, const char *format, ...);
END_EXTERN_C()
+72 -45
View File
@@ -563,8 +563,8 @@ static void zend_assign_to_variable_reference(zval **variable_ptr_ptr, zval **va
static inline void make_real_object(zval **object_ptr TSRMLS_DC)
{
if (Z_TYPE_PP(object_ptr) == IS_NULL
|| (Z_TYPE_PP(object_ptr) == IS_BOOL && Z_LVAL_PP(object_ptr) == 0)
|| (Z_TYPE_PP(object_ptr) == IS_STRING && Z_STRLEN_PP(object_ptr) == 0)
|| (Z_TYPE_PP(object_ptr) == IS_BOOL && Z_IVAL_PP(object_ptr) == 0)
|| (Z_TYPE_PP(object_ptr) == IS_STRING && Z_STRSIZE_PP(object_ptr) == 0)
) {
SEPARATE_ZVAL_IF_NOT_REF(object_ptr);
zval_dtor(*object_ptr);
@@ -573,7 +573,7 @@ static inline void make_real_object(zval **object_ptr TSRMLS_DC)
}
}
ZEND_API char * zend_verify_arg_class_kind(const zend_arg_info *cur_arg_info, ulong fetch_type, const char **class_name, zend_class_entry **pce TSRMLS_DC)
ZEND_API char * zend_verify_arg_class_kind(const zend_arg_info *cur_arg_info, zend_uint_t fetch_type, const char **class_name, zend_class_entry **pce TSRMLS_DC)
{
*pce = zend_fetch_class(cur_arg_info->class_name, cur_arg_info->class_name_len, (fetch_type | ZEND_FETCH_CLASS_AUTO | ZEND_FETCH_CLASS_NO_AUTOLOAD) TSRMLS_CC);
@@ -585,7 +585,7 @@ ZEND_API char * zend_verify_arg_class_kind(const zend_arg_info *cur_arg_info, ul
}
}
ZEND_API int zend_verify_arg_error(int error_type, const zend_function *zf, zend_uint arg_num, const char *need_msg, const char *need_kind, const char *given_msg, const char *given_kind TSRMLS_DC)
ZEND_API int zend_verify_arg_error(int error_type, const zend_function *zf, zend_size_t arg_num, const char *need_msg, const char *need_kind, const char *given_msg, const char *given_kind TSRMLS_DC)
{
zend_execute_data *ptr = EG(current_execute_data)->prev_execute_data;
const char *fname = zf->common.function_name;
@@ -601,14 +601,14 @@ ZEND_API int zend_verify_arg_error(int error_type, const zend_function *zf, zend
}
if (ptr && ptr->op_array) {
zend_error(error_type, "Argument %d passed to %s%s%s() must %s%s, %s%s given, called in %s on line %d and defined", arg_num, fclass, fsep, fname, need_msg, need_kind, given_msg, given_kind, ptr->op_array->filename, ptr->opline->lineno);
zend_error(error_type, "Argument %pu passed to %s%s%s() must %s%s, %s%s given, called in %s on line %pu and defined", arg_num, fclass, fsep, fname, need_msg, need_kind, given_msg, given_kind, ptr->op_array->filename, ptr->opline->lineno);
} else {
zend_error(error_type, "Argument %d passed to %s%s%s() must %s%s, %s%s given", arg_num, fclass, fsep, fname, need_msg, need_kind, given_msg, given_kind);
zend_error(error_type, "Argument %pu passed to %s%s%s() must %s%s, %s%s given", arg_num, fclass, fsep, fname, need_msg, need_kind, given_msg, given_kind);
}
return 0;
}
static inline int zend_verify_arg_type(zend_function *zf, zend_uint arg_num, zval *arg, ulong fetch_type TSRMLS_DC)
static inline int zend_verify_arg_type(zend_function *zf, zend_size_t arg_num, zval *arg, zend_uint_t fetch_type TSRMLS_DC)
{
zend_arg_info *cur_arg_info;
char *need_msg;
@@ -686,8 +686,8 @@ static inline void zend_assign_to_object(zval **retval, zval **object_ptr, zval
return;
}
if (Z_TYPE_P(object) == IS_NULL ||
(Z_TYPE_P(object) == IS_BOOL && Z_LVAL_P(object) == 0) ||
(Z_TYPE_P(object) == IS_STRING && Z_STRLEN_P(object) == 0)) {
(Z_TYPE_P(object) == IS_BOOL && Z_IVAL_P(object) == 0) ||
(Z_TYPE_P(object) == IS_STRING && Z_STRSIZE_P(object) == 0)) {
SEPARATE_ZVAL_IF_NOT_REF(object_ptr);
object = *object_ptr;
Z_ADDREF_P(object);
@@ -771,20 +771,20 @@ static inline void zend_assign_to_object(zval **retval, zval **object_ptr, zval
static inline int zend_assign_to_string_offset(const temp_variable *T, const zval *value, int value_type TSRMLS_DC)
{
zval *str = T->str_offset.str;
zend_uint offset = T->str_offset.offset;
zend_uint_t offset = T->str_offset.offset;
if (Z_TYPE_P(str) == IS_STRING) {
if ((int)offset < 0) {
if ((zend_int_t)offset < 0) {
zend_error(E_WARNING, "Illegal string offset: %d", offset);
return 0;
}
if (offset >= Z_STRLEN_P(str)) {
if (offset >= Z_STRSIZE_P(str)) {
Z_STRVAL_P(str) = str_erealloc(Z_STRVAL_P(str), offset+1+1);
memset(Z_STRVAL_P(str) + Z_STRLEN_P(str), ' ', offset - Z_STRLEN_P(str));
memset(Z_STRVAL_P(str) + Z_STRSIZE_P(str), ' ', offset - Z_STRSIZE_P(str));
Z_STRVAL_P(str)[offset+1] = 0;
Z_STRLEN_P(str) = offset+1;
Z_STRSIZE_P(str) = offset+1;
} else if (IS_INTERNED(Z_STRVAL_P(str))) {
Z_STRVAL_P(str) = estrndup(Z_STRVAL_P(str), Z_STRLEN_P(str));
Z_STRVAL_P(str) = estrndup(Z_STRVAL_P(str), Z_STRSIZE_P(str));
}
if (Z_TYPE_P(value) != IS_STRING) {
@@ -943,6 +943,26 @@ copy_value:
}
}
static void zval_deep_copy(zval **p)
{
zval *value;
ALLOC_ZVAL(value);
*value = **p;
if (Z_TYPE_P(value) == IS_ARRAY) {
HashTable *ht;
ALLOC_HASHTABLE(ht);
zend_hash_init(ht, zend_hash_num_elements(Z_ARRVAL_P(value)), NULL, ZVAL_PTR_DTOR, 0);
zend_hash_copy(ht, Z_ARRVAL_P(value), (copy_ctor_func_t) zval_deep_copy, NULL, sizeof(zval *));
Z_ARRVAL_P(value) = ht;
} else {
zval_copy_ctor(value);
}
INIT_PZVAL(value);
*p = value;
}
/* Utility Functions for Extensions */
static void zend_extension_statement_handler(const zend_extension *extension, zend_op_array *op_array TSRMLS_DC)
{
@@ -997,8 +1017,8 @@ static inline zval **zend_fetch_dimension_address_inner(HashTable *ht, const zva
{
zval **retval;
char *offset_key;
int offset_key_length;
ulong hval;
zend_size_t offset_key_length;
zend_uint_t hval;
switch (dim->type) {
case IS_NULL:
@@ -1042,26 +1062,26 @@ fetch_string_dim:
}
break;
case IS_DOUBLE:
hval = zend_dval_to_lval(Z_DVAL_P(dim));
hval = zend_dval_to_ival(Z_DVAL_P(dim));
goto num_index;
case IS_RESOURCE:
zend_error(E_STRICT, "Resource ID#%ld used as offset, casting to integer (%ld)", Z_LVAL_P(dim), Z_LVAL_P(dim));
zend_error(E_STRICT, "Resource ID#" ZEND_INT_FMT " used as offset, casting to integer (" ZEND_INT_FMT ")", Z_IVAL_P(dim), Z_IVAL_P(dim));
/* Fall Through */
case IS_BOOL:
case IS_LONG:
hval = Z_LVAL_P(dim);
case IS_INT:
hval = Z_IVAL_P(dim);
num_index:
if (zend_hash_index_find(ht, hval, (void **) &retval) == FAILURE) {
switch (type) {
case BP_VAR_R:
zend_error(E_NOTICE,"Undefined offset: %ld", hval);
zend_error(E_NOTICE,"Undefined offset: " ZEND_INT_FMT, hval);
/* break missing intentionally */
case BP_VAR_UNSET:
case BP_VAR_IS:
retval = &EG(uninitialized_zval_ptr);
break;
case BP_VAR_RW:
zend_error(E_NOTICE,"Undefined offset: %ld", hval);
zend_error(E_NOTICE,"Undefined offset: " ZEND_INT_FMT, hval);
/* break missing intentionally */
case BP_VAR_W: {
zval *new_zval = &EG(uninitialized_zval);
@@ -1136,7 +1156,7 @@ convert_to_array:
case IS_STRING: {
zval tmp;
if (type != BP_VAR_UNSET && Z_STRLEN_P(container)==0) {
if (type != BP_VAR_UNSET && Z_STRSIZE_P(container)==0) {
goto convert_to_array;
}
if (dim == NULL) {
@@ -1147,12 +1167,12 @@ convert_to_array:
SEPARATE_ZVAL_IF_NOT_REF(container_ptr);
}
if (Z_TYPE_P(dim) != IS_LONG) {
if (Z_TYPE_P(dim) != IS_INT) {
switch(Z_TYPE_P(dim)) {
/* case IS_LONG: */
/* case IS_INT: */
case IS_STRING:
if (IS_LONG == is_numeric_string(Z_STRVAL_P(dim), Z_STRLEN_P(dim), NULL, NULL, -1)) {
if (IS_INT == is_numeric_string(Z_STRVAL_P(dim), Z_STRSIZE_P(dim), NULL, NULL, -1)) {
break;
}
if (type != BP_VAR_UNSET) {
@@ -1172,13 +1192,13 @@ convert_to_array:
tmp = *dim;
zval_copy_ctor(&tmp);
convert_to_long(&tmp);
convert_to_int(&tmp);
dim = &tmp;
}
container = *container_ptr;
result->str_offset.str = container;
PZVAL_LOCK(container);
result->str_offset.offset = Z_LVAL_P(dim);
result->str_offset.offset = Z_IVAL_P(dim);
result->str_offset.ptr_ptr = NULL;
return;
}
@@ -1227,7 +1247,7 @@ convert_to_array:
break;
case IS_BOOL:
if (type != BP_VAR_UNSET && Z_LVAL_P(container)==0) {
if (type != BP_VAR_UNSET && Z_IVAL_P(container)==0) {
goto convert_to_array;
}
/* break missing intentionally */
@@ -1267,11 +1287,11 @@ static void zend_fetch_dimension_address_read(temp_variable *result, zval *conta
zval tmp;
zval *ptr;
if (Z_TYPE_P(dim) != IS_LONG) {
if (Z_TYPE_P(dim) != IS_INT) {
switch(Z_TYPE_P(dim)) {
/* case IS_LONG: */
/* case IS_INT: */
case IS_STRING:
if (IS_LONG == is_numeric_string(Z_STRVAL_P(dim), Z_STRLEN_P(dim), NULL, NULL, -1)) {
if (IS_INT == is_numeric_string(Z_STRVAL_P(dim), Z_STRSIZE_P(dim), NULL, NULL, -1)) {
break;
}
if (type != BP_VAR_IS) {
@@ -1292,7 +1312,7 @@ static void zend_fetch_dimension_address_read(temp_variable *result, zval *conta
ZVAL_COPY_VALUE(&tmp, dim);
zval_copy_ctor(&tmp);
convert_to_long(&tmp);
convert_to_int(&tmp);
dim = &tmp;
}
@@ -1300,17 +1320,17 @@ static void zend_fetch_dimension_address_read(temp_variable *result, zval *conta
INIT_PZVAL(ptr);
Z_TYPE_P(ptr) = IS_STRING;
if (Z_LVAL_P(dim) < 0 || Z_STRLEN_P(container) <= Z_LVAL_P(dim)) {
if (Z_IVAL_P(dim) < 0 || Z_STRSIZE_P(container) <= Z_IVAL_P(dim)) {
if (type != BP_VAR_IS) {
zend_error(E_NOTICE, "Uninitialized string offset: %ld", Z_LVAL_P(dim));
zend_error(E_NOTICE, "Uninitialized string offset: " ZEND_INT_FMT, Z_IVAL_P(dim));
}
Z_STRVAL_P(ptr) = STR_EMPTY_ALLOC();
Z_STRLEN_P(ptr) = 0;
Z_STRSIZE_P(ptr) = 0;
} else {
Z_STRVAL_P(ptr) = (char*)emalloc(2);
Z_STRVAL_P(ptr)[0] = Z_STRVAL_P(container)[Z_LVAL_P(dim)];
Z_STRVAL_P(ptr)[0] = Z_STRVAL_P(container)[Z_IVAL_P(dim)];
Z_STRVAL_P(ptr)[1] = 0;
Z_STRLEN_P(ptr) = 1;
Z_STRSIZE_P(ptr) = 1;
}
result->var.ptr = ptr;
return;
@@ -1352,9 +1372,15 @@ static void zend_fetch_dimension_address_read(temp_variable *result, zval *conta
}
}
ZEND_API void zend_fetch_dimension_by_zval(zval **result, zval *container, zval *dim TSRMLS_DC) {
temp_variable tmp;
zend_fetch_dimension_address_read(&tmp, container, dim, IS_TMP_VAR, BP_VAR_R TSRMLS_CC);
*result = tmp.var.ptr;
}
static void zend_fetch_property_address(temp_variable *result, zval **container_ptr, zval *prop_ptr, const zend_literal *key, int type TSRMLS_DC)
{
zval *container = *container_ptr;;
zval *container = *container_ptr;
if (Z_TYPE_P(container) != IS_OBJECT) {
if (container == &EG(error_zval)) {
@@ -1366,8 +1392,8 @@ static void zend_fetch_property_address(temp_variable *result, zval **container_
/* this should modify object only if it's empty */
if (type != BP_VAR_UNSET &&
((Z_TYPE_P(container) == IS_NULL ||
(Z_TYPE_P(container) == IS_BOOL && Z_LVAL_P(container)==0) ||
(Z_TYPE_P(container) == IS_STRING && Z_STRLEN_P(container)==0)))) {
(Z_TYPE_P(container) == IS_BOOL && Z_IVAL_P(container)==0) ||
(Z_TYPE_P(container) == IS_STRING && Z_STRSIZE_P(container)==0)))) {
if (!PZVAL_IS_REF(container)) {
SEPARATE_ZVAL(container_ptr);
container = *container_ptr;
@@ -1484,7 +1510,8 @@ ZEND_API void execute_internal(zend_execute_data *execute_data_ptr, zend_fcall_i
} else {
zval **return_value_ptr = &EX_TMP_VAR(execute_data_ptr, execute_data_ptr->opline->result.var)->var.ptr;
execute_data_ptr->function_state.function->internal_function.handler(
execute_data_ptr->opline->extended_value, *return_value_ptr, return_value_ptr,
execute_data_ptr->opline->extended_value + execute_data_ptr->call->num_additional_args,
*return_value_ptr, return_value_ptr,
execute_data_ptr->object, return_value_used TSRMLS_CC
);
}
@@ -1601,7 +1628,7 @@ static zend_always_inline zend_execute_data *i_create_execute_data_from_op_array
/* Prepend the regular stack frame with a copy of prev_execute_data
* and the passed arguments
*/
int args_count = zend_vm_stack_get_args_count_ex(EG(current_execute_data));
zend_size_t args_count = zend_vm_stack_get_args_count_ex(EG(current_execute_data));
size_t args_size = ZEND_MM_ALIGNED_SIZE(sizeof(zval*)) * (args_count + 1);
total_size += args_size + execute_data_size;
@@ -1686,7 +1713,7 @@ ZEND_API zend_execute_data *zend_create_execute_data_from_op_array(zend_op_array
static zend_always_inline zend_bool zend_is_by_ref_func_arg_fetch(zend_op *opline, call_slot *call TSRMLS_DC) /* {{{ */
{
zend_uint arg_num = (opline->extended_value & ZEND_FETCH_ARG_MASK) + call->num_additional_args;
zend_uint arg_num = opline->extended_value & ZEND_FETCH_ARG_MASK;
return ARG_SHOULD_BE_SENT_BY_REF(call->fbc, arg_num);
}
/* }}} */
+35 -35
View File
@@ -37,7 +37,7 @@ typedef union _temp_variable {
struct {
zval **ptr_ptr; /* shared with var.ptr_ptr */
zval *str;
zend_uint offset;
zend_size_t offset;
} str_offset;
struct {
zval **ptr_ptr; /* shared with var.ptr_ptr */
@@ -60,16 +60,16 @@ ZEND_API zend_execute_data *zend_create_execute_data_from_op_array(zend_op_array
ZEND_API void zend_execute(zend_op_array *op_array TSRMLS_DC);
ZEND_API void execute_ex(zend_execute_data *execute_data TSRMLS_DC);
ZEND_API void execute_internal(zend_execute_data *execute_data_ptr, struct _zend_fcall_info *fci, int return_value_used TSRMLS_DC);
ZEND_API int zend_is_true(zval *op);
ZEND_API int zend_lookup_class(const char *name, int name_length, zend_class_entry ***ce TSRMLS_DC);
ZEND_API int zend_lookup_class_ex(const char *name, int name_length, const zend_literal *key, int use_autoload, zend_class_entry ***ce TSRMLS_DC);
ZEND_API int zend_is_true(zval *op TSRMLS_DC);
ZEND_API int zend_lookup_class(const char *name, zend_size_t name_length, zend_class_entry ***ce TSRMLS_DC);
ZEND_API int zend_lookup_class_ex(const char *name, zend_size_t name_length, const zend_literal *key, int use_autoload, zend_class_entry ***ce TSRMLS_DC);
ZEND_API int zend_eval_string(char *str, zval *retval_ptr, char *string_name TSRMLS_DC);
ZEND_API int zend_eval_stringl(char *str, int str_len, zval *retval_ptr, char *string_name TSRMLS_DC);
ZEND_API int zend_eval_stringl(char *str, zend_size_t str_len, zval *retval_ptr, char *string_name TSRMLS_DC);
ZEND_API int zend_eval_string_ex(char *str, zval *retval_ptr, char *string_name, int handle_exceptions TSRMLS_DC);
ZEND_API int zend_eval_stringl_ex(char *str, int str_len, zval *retval_ptr, char *string_name, int handle_exceptions TSRMLS_DC);
ZEND_API int zend_eval_stringl_ex(char *str, zend_size_t str_len, zval *retval_ptr, char *string_name, int handle_exceptions TSRMLS_DC);
ZEND_API char * zend_verify_arg_class_kind(const zend_arg_info *cur_arg_info, ulong fetch_type, const char **class_name, zend_class_entry **pce TSRMLS_DC);
ZEND_API int zend_verify_arg_error(int error_type, const zend_function *zf, zend_uint arg_num, const char *need_msg, const char *need_kind, const char *given_msg, const char *given_kind TSRMLS_DC);
ZEND_API char * zend_verify_arg_class_kind(const zend_arg_info *cur_arg_info, zend_uint_t fetch_type, const char **class_name, zend_class_entry **pce TSRMLS_DC);
ZEND_API int zend_verify_arg_error(int error_type, const zend_function *zf, zend_size_t arg_num, const char *need_msg, const char *need_kind, const char *given_msg, const char *given_kind TSRMLS_DC);
static zend_always_inline void i_zval_ptr_dtor(zval *zval_ptr ZEND_FILE_LINE_DC TSRMLS_DC)
{
@@ -101,7 +101,7 @@ static zend_always_inline void i_zval_ptr_dtor_nogc(zval *zval_ptr ZEND_FILE_LIN
}
}
static zend_always_inline int i_zend_is_true(zval *op)
static zend_always_inline int i_zend_is_true(zval *op TSRMLS_DC)
{
int result;
@@ -109,17 +109,17 @@ static zend_always_inline int i_zend_is_true(zval *op)
case IS_NULL:
result = 0;
break;
case IS_LONG:
case IS_INT:
case IS_BOOL:
case IS_RESOURCE:
result = (Z_LVAL_P(op)?1:0);
result = (Z_IVAL_P(op)?1:0);
break;
case IS_DOUBLE:
result = (Z_DVAL_P(op) ? 1 : 0);
break;
case IS_STRING:
if (Z_STRLEN_P(op) == 0
|| (Z_STRLEN_P(op)==1 && Z_STRVAL_P(op)[0]=='0')) {
if (Z_STRSIZE_P(op) == 0
|| (Z_STRSIZE_P(op)==1 && Z_STRVAL_P(op)[0]=='0')) {
result = 0;
} else {
result = 1;
@@ -130,12 +130,10 @@ static zend_always_inline int i_zend_is_true(zval *op)
break;
case IS_OBJECT:
if(IS_ZEND_STD_OBJECT(*op)) {
TSRMLS_FETCH();
if (Z_OBJ_HT_P(op)->cast_object) {
zval tmp;
if (Z_OBJ_HT_P(op)->cast_object(op, &tmp, IS_BOOL TSRMLS_CC) == SUCCESS) {
result = Z_LVAL(tmp);
result = (int)Z_IVAL(tmp);
break;
}
} else if (Z_OBJ_HT_P(op)->get) {
@@ -143,7 +141,7 @@ static zend_always_inline int i_zend_is_true(zval *op)
if(Z_TYPE_P(tmp) != IS_OBJECT) {
/* for safety - avoid loop */
convert_to_boolean(tmp);
result = Z_LVAL_P(tmp);
result = (int)Z_IVAL_P(tmp);
zval_ptr_dtor(&tmp);
break;
}
@@ -158,10 +156,10 @@ static zend_always_inline int i_zend_is_true(zval *op)
return result;
}
ZEND_API int zval_update_constant(zval **pp, void *arg TSRMLS_DC);
ZEND_API int zval_update_constant_inline_change(zval **pp, void *arg TSRMLS_DC);
ZEND_API int zval_update_constant_no_inline_change(zval **pp, void *arg TSRMLS_DC);
ZEND_API int zval_update_constant_ex(zval **pp, void *arg, zend_class_entry *scope TSRMLS_DC);
ZEND_API int zval_update_constant(zval **pp, zend_bool inline_change TSRMLS_DC);
ZEND_API int zval_update_constant_inline_change(zval **pp, zend_class_entry *scope TSRMLS_DC);
ZEND_API int zval_update_constant_no_inline_change(zval **pp, zend_class_entry *scope TSRMLS_DC);
ZEND_API int zval_update_constant_ex(zval **pp, zend_bool inline_change, zend_class_entry *scope TSRMLS_DC);
/* dedicated Zend executor functions - do not use! */
#define ZEND_VM_STACK_PAGE_SIZE ((16 * 1024) - 16)
@@ -183,7 +181,7 @@ struct _zend_vm_stack {
} \
} while (0)
static zend_always_inline zend_vm_stack zend_vm_stack_new_page(int count) {
static zend_always_inline zend_vm_stack zend_vm_stack_new_page(size_t count) {
zend_vm_stack page = (zend_vm_stack)emalloc(ZEND_MM_ALIGNED_SIZE(sizeof(*page)) + sizeof(void*) * count);
page->top = ZEND_VM_STACK_ELEMETS(page);
@@ -208,7 +206,7 @@ static zend_always_inline void zend_vm_stack_destroy(TSRMLS_D)
}
}
static zend_always_inline void zend_vm_stack_extend(int count TSRMLS_DC)
static zend_always_inline void zend_vm_stack_extend(size_t count TSRMLS_DC)
{
zend_vm_stack p = zend_vm_stack_new_page(count >= ZEND_VM_STACK_PAGE_SIZE ? count : ZEND_VM_STACK_PAGE_SIZE);
p->prev = EG(argument_stack);
@@ -254,7 +252,7 @@ static zend_always_inline void *zend_vm_stack_alloc(size_t size TSRMLS_DC)
EG(argument_stack)->top += ZEND_MM_ALIGNED_SIZE(sizeof(void*)) / sizeof(void*);
}
} else {
ZEND_VM_STACK_GROW_IF_NEEDED((int)size);
ZEND_VM_STACK_GROW_IF_NEEDED(size);
}
ret = (void*)EG(argument_stack)->top;
EG(argument_stack)->top += size;
@@ -300,7 +298,7 @@ static zend_always_inline void zend_vm_stack_free(void *ptr TSRMLS_DC)
static zend_always_inline void zend_vm_stack_clear_multiple(int nested TSRMLS_DC)
{
void **p = EG(argument_stack)->top - 1;
void **end = p - (int)(zend_uintptr_t)*p;
void **end = p - (ptrdiff_t)(zend_uintptr_t)*p;
while (p != end) {
zval *q = (zval *) *(--p);
@@ -314,20 +312,20 @@ static zend_always_inline void zend_vm_stack_clear_multiple(int nested TSRMLS_DC
}
}
static zend_always_inline int zend_vm_stack_get_args_count_ex(zend_execute_data *ex)
static zend_always_inline zend_size_t zend_vm_stack_get_args_count_ex(zend_execute_data *ex)
{
if (ex) {
void **p = ex->function_state.arguments;
return (int)(zend_uintptr_t) *p;
return (zend_size_t)(zend_uintptr_t) *p;
} else {
return 0;
}
}
static zend_always_inline zval** zend_vm_stack_get_arg_ex(zend_execute_data *ex, int requested_arg)
static zend_always_inline zval** zend_vm_stack_get_arg_ex(zend_execute_data *ex, zend_size_t requested_arg)
{
void **p = ex->function_state.arguments;
int arg_count = (int)(zend_uintptr_t) *p;
zend_int_t arg_count = (zend_int_t)(zend_uintptr_t) *p;
if (UNEXPECTED(requested_arg > arg_count)) {
return NULL;
@@ -335,12 +333,12 @@ static zend_always_inline zval** zend_vm_stack_get_arg_ex(zend_execute_data *ex,
return (zval**)p - arg_count + requested_arg - 1;
}
static zend_always_inline int zend_vm_stack_get_args_count(TSRMLS_D)
static zend_always_inline zend_size_t zend_vm_stack_get_args_count(TSRMLS_D)
{
return zend_vm_stack_get_args_count_ex(EG(current_execute_data)->prev_execute_data);
}
static zend_always_inline zval** zend_vm_stack_get_arg(int requested_arg TSRMLS_DC)
static zend_always_inline zval** zend_vm_stack_get_arg(zend_size_t requested_arg TSRMLS_DC)
{
return zend_vm_stack_get_arg_ex(EG(current_execute_data)->prev_execute_data, requested_arg);
}
@@ -352,16 +350,18 @@ void execute_new_code(TSRMLS_D);
ZEND_API const char *get_active_class_name(const char **space TSRMLS_DC);
ZEND_API const char *get_active_function_name(TSRMLS_D);
ZEND_API const char *zend_get_executed_filename(TSRMLS_D);
ZEND_API uint zend_get_executed_lineno(TSRMLS_D);
ZEND_API zend_size_t zend_get_executed_lineno(TSRMLS_D);
ZEND_API zend_bool zend_is_executing(TSRMLS_D);
ZEND_API void zend_set_timeout(long seconds, int reset_signals);
ZEND_API void zend_set_timeout(zend_int_t seconds, int reset_signals);
ZEND_API void zend_unset_timeout(TSRMLS_D);
ZEND_API void zend_timeout(int dummy);
ZEND_API zend_class_entry *zend_fetch_class(const char *class_name, uint class_name_len, int fetch_type TSRMLS_DC);
ZEND_API zend_class_entry *zend_fetch_class_by_name(const char *class_name, uint class_name_len, const zend_literal *key, int fetch_type TSRMLS_DC);
ZEND_API zend_class_entry *zend_fetch_class(const char *class_name, zend_size_t class_name_len, int fetch_type TSRMLS_DC);
ZEND_API zend_class_entry *zend_fetch_class_by_name(const char *class_name, zend_size_t class_name_len, const zend_literal *key, int fetch_type TSRMLS_DC);
void zend_verify_abstract_class(zend_class_entry *ce TSRMLS_DC);
ZEND_API void zend_fetch_dimension_by_zval(zval **result, zval *container, zval *dim TSRMLS_DC);
#ifdef ZEND_WIN32
void zend_init_timeout_thread(void);
void zend_shutdown_timeout_thread(void);
+39 -158
View File
@@ -401,7 +401,7 @@ ZEND_API const char *zend_get_executed_filename(TSRMLS_D) /* {{{ */
}
/* }}} */
ZEND_API uint zend_get_executed_lineno(TSRMLS_D) /* {{{ */
ZEND_API zend_size_t zend_get_executed_lineno(TSRMLS_D) /* {{{ */
{
if(EG(exception) && EG(opline_ptr) && active_opline->opcode == ZEND_HANDLE_EXCEPTION &&
active_opline->lineno == 0 && EG(opline_before_exception)) {
@@ -443,36 +443,20 @@ ZEND_API void _zval_internal_ptr_dtor(zval **zval_ptr ZEND_FILE_LINE_DC) /* {{{
}
/* }}} */
ZEND_API int zend_is_true(zval *op) /* {{{ */
ZEND_API int zend_is_true(zval *op TSRMLS_DC) /* {{{ */
{
return i_zend_is_true(op);
return i_zend_is_true(op TSRMLS_CC);
}
/* }}} */
#include "../TSRM/tsrm_strtok_r.h"
#define IS_VISITED_CONSTANT IS_CONSTANT_INDEX
#define IS_VISITED_CONSTANT 0x80
#define IS_CONSTANT_VISITED(p) (Z_TYPE_P(p) & IS_VISITED_CONSTANT)
#define Z_REAL_TYPE_P(p) (Z_TYPE_P(p) & ~IS_VISITED_CONSTANT)
#define MARK_CONSTANT_VISITED(p) Z_TYPE_P(p) |= IS_VISITED_CONSTANT
static void zval_deep_copy(zval **p)
{
zval *value;
ALLOC_ZVAL(value);
*value = **p;
Z_TYPE_P(value) &= ~IS_CONSTANT_INDEX;
zval_copy_ctor(value);
Z_TYPE_P(value) = Z_TYPE_PP(p);
INIT_PZVAL(value);
*p = value;
}
ZEND_API int zval_update_constant_ex(zval **pp, void *arg, zend_class_entry *scope TSRMLS_DC) /* {{{ */
ZEND_API int zval_update_constant_ex(zval **pp, zend_bool inline_change, zend_class_entry *scope TSRMLS_DC) /* {{{ */
{
zval *p = *pp;
zend_bool inline_change = (zend_bool) (zend_uintptr_t) arg;
zval const_value;
char *colon;
@@ -493,11 +477,11 @@ ZEND_API int zval_update_constant_ex(zval **pp, void *arg, zend_class_entry *sco
if (!zend_get_constant_ex(p->value.str.val, p->value.str.len, &const_value, scope, Z_REAL_TYPE_P(p) TSRMLS_CC)) {
char *actual = Z_STRVAL_P(p);
if ((colon = (char*)zend_memrchr(Z_STRVAL_P(p), ':', Z_STRLEN_P(p)))) {
if ((colon = (char*)zend_memrchr(Z_STRVAL_P(p), ':', Z_STRSIZE_P(p)))) {
zend_error(E_ERROR, "Undefined class constant '%s'", Z_STRVAL_P(p));
Z_STRLEN_P(p) -= ((colon - Z_STRVAL_P(p)) + 1);
Z_STRSIZE_P(p) -= ((colon - Z_STRVAL_P(p)) + 1);
if (inline_change) {
colon = estrndup(colon, Z_STRLEN_P(p));
colon = estrndup(colon, Z_STRSIZE_P(p));
str_efree(Z_STRVAL_P(p));
Z_STRVAL_P(p) = colon;
} else {
@@ -505,20 +489,20 @@ ZEND_API int zval_update_constant_ex(zval **pp, void *arg, zend_class_entry *sco
}
} else {
char *save = actual, *slash;
int actual_len = Z_STRLEN_P(p);
zend_size_t actual_len = Z_STRSIZE_P(p);
if ((Z_TYPE_P(p) & IS_CONSTANT_UNQUALIFIED) && (slash = (char *)zend_memrchr(actual, '\\', actual_len))) {
actual = slash + 1;
actual_len -= (actual - Z_STRVAL_P(p));
if (inline_change) {
actual = estrndup(actual, actual_len);
Z_STRVAL_P(p) = actual;
Z_STRLEN_P(p) = actual_len;
Z_STRSIZE_P(p) = actual_len;
}
}
if (actual[0] == '\\') {
if (inline_change) {
memmove(Z_STRVAL_P(p), Z_STRVAL_P(p)+1, Z_STRLEN_P(p));
--Z_STRLEN_P(p);
memmove(Z_STRVAL_P(p), Z_STRVAL_P(p)+1, Z_STRSIZE_P(p));
--Z_STRSIZE_P(p);
} else {
++actual;
}
@@ -546,7 +530,7 @@ ZEND_API int zval_update_constant_ex(zval **pp, void *arg, zend_class_entry *sco
p->type = IS_STRING;
if (!inline_change) {
Z_STRVAL_P(p) = actual;
Z_STRLEN_P(p) = actual_len;
Z_STRSIZE_P(p) = actual_len;
zval_copy_ctor(p);
}
}
@@ -559,110 +543,6 @@ ZEND_API int zval_update_constant_ex(zval **pp, void *arg, zend_class_entry *sco
Z_SET_REFCOUNT_P(p, refcount);
Z_SET_ISREF_TO_P(p, is_ref);
} else if (Z_TYPE_P(p) == IS_CONSTANT_ARRAY) {
zval **element, *new_val;
char *str_index;
uint str_index_len;
ulong num_index;
int ret;
SEPARATE_ZVAL_IF_NOT_REF(pp);
p = *pp;
Z_TYPE_P(p) = IS_ARRAY;
if (!inline_change) {
zval *tmp;
HashTable *tmp_ht = NULL;
ALLOC_HASHTABLE(tmp_ht);
zend_hash_init(tmp_ht, zend_hash_num_elements(Z_ARRVAL_P(p)), NULL, ZVAL_PTR_DTOR, 0);
zend_hash_copy(tmp_ht, Z_ARRVAL_P(p), (copy_ctor_func_t) zval_deep_copy, (void *) &tmp, sizeof(zval *));
Z_ARRVAL_P(p) = tmp_ht;
}
/* First go over the array and see if there are any constant indices */
zend_hash_internal_pointer_reset(Z_ARRVAL_P(p));
while (zend_hash_get_current_data(Z_ARRVAL_P(p), (void **) &element) == SUCCESS) {
if (!(Z_TYPE_PP(element) & IS_CONSTANT_INDEX)) {
zend_hash_move_forward(Z_ARRVAL_P(p));
continue;
}
Z_TYPE_PP(element) &= ~IS_CONSTANT_INDEX;
if (zend_hash_get_current_key_ex(Z_ARRVAL_P(p), &str_index, &str_index_len, &num_index, 0, NULL) != HASH_KEY_IS_STRING) {
zend_hash_move_forward(Z_ARRVAL_P(p));
continue;
}
if (str_index[str_index_len - 2] == IS_CONSTANT_AST) {
zend_ast_evaluate(&const_value, *(zend_ast **)str_index, scope TSRMLS_CC);
zend_ast_destroy(*(zend_ast **)str_index);
} else if (!zend_get_constant_ex(str_index, str_index_len - 3, &const_value, scope, str_index[str_index_len - 2] TSRMLS_CC)) {
char *actual;
const char *save = str_index;
if ((colon = (char*)zend_memrchr(str_index, ':', str_index_len - 3))) {
zend_error(E_ERROR, "Undefined class constant '%s'", str_index);
str_index_len -= ((colon - str_index) + 1);
str_index = colon;
} else {
if (str_index[str_index_len - 2] & IS_CONSTANT_UNQUALIFIED) {
if ((actual = (char *)zend_memrchr(str_index, '\\', str_index_len - 3))) {
actual++;
str_index_len -= (actual - str_index);
str_index = actual;
}
}
if (str_index[0] == '\\') {
++str_index;
--str_index_len;
}
if (save[0] == '\\') {
++save;
}
if ((str_index[str_index_len - 2] & IS_CONSTANT_UNQUALIFIED) == 0) {
zend_error(E_ERROR, "Undefined constant '%s'", save);
}
zend_error(E_NOTICE, "Use of undefined constant %s - assumed '%s'", str_index, str_index);
}
ZVAL_STRINGL(&const_value, str_index, str_index_len-3, 1);
}
if (Z_REFCOUNT_PP(element) > 1) {
ALLOC_ZVAL(new_val);
*new_val = **element;
zval_copy_ctor(new_val);
Z_SET_REFCOUNT_P(new_val, 1);
Z_UNSET_ISREF_P(new_val);
/* preserve this bit for inheritance */
Z_TYPE_PP(element) |= IS_CONSTANT_INDEX;
zval_ptr_dtor(element);
*element = new_val;
}
switch (Z_TYPE(const_value)) {
case IS_STRING:
ret = zend_symtable_update_current_key(Z_ARRVAL_P(p), Z_STRVAL(const_value), Z_STRLEN(const_value) + 1, HASH_UPDATE_KEY_IF_BEFORE);
break;
case IS_BOOL:
case IS_LONG:
ret = zend_hash_update_current_key_ex(Z_ARRVAL_P(p), HASH_KEY_IS_LONG, NULL, 0, Z_LVAL(const_value), HASH_UPDATE_KEY_IF_BEFORE, NULL);
break;
case IS_DOUBLE:
ret = zend_hash_update_current_key_ex(Z_ARRVAL_P(p), HASH_KEY_IS_LONG, NULL, 0, zend_dval_to_lval(Z_DVAL(const_value)), HASH_UPDATE_KEY_IF_BEFORE, NULL);
break;
case IS_NULL:
ret = zend_hash_update_current_key_ex(Z_ARRVAL_P(p), HASH_KEY_IS_STRING, "", 1, 0, HASH_UPDATE_KEY_IF_BEFORE, NULL);
break;
default:
ret = SUCCESS;
break;
}
if (ret == SUCCESS) {
zend_hash_move_forward(Z_ARRVAL_P(p));
}
zval_dtor(&const_value);
}
zend_hash_apply_with_argument(Z_ARRVAL_P(p), (apply_func_arg_t) zval_update_constant_inline_change, (void *) scope TSRMLS_CC);
zend_hash_internal_pointer_reset(Z_ARRVAL_P(p));
} else if (Z_TYPE_P(p) == IS_CONSTANT_AST) {
SEPARATE_ZVAL_IF_NOT_REF(pp);
p = *pp;
@@ -677,21 +557,21 @@ ZEND_API int zval_update_constant_ex(zval **pp, void *arg, zend_class_entry *sco
}
/* }}} */
ZEND_API int zval_update_constant_inline_change(zval **pp, void *scope TSRMLS_DC) /* {{{ */
ZEND_API int zval_update_constant_inline_change(zval **pp, zend_class_entry *scope TSRMLS_DC) /* {{{ */
{
return zval_update_constant_ex(pp, (void*)1, scope TSRMLS_CC);
return zval_update_constant_ex(pp, 1, scope TSRMLS_CC);
}
/* }}} */
ZEND_API int zval_update_constant_no_inline_change(zval **pp, void *scope TSRMLS_DC) /* {{{ */
ZEND_API int zval_update_constant_no_inline_change(zval **pp, zend_class_entry *scope TSRMLS_DC) /* {{{ */
{
return zval_update_constant_ex(pp, (void*)0, scope TSRMLS_CC);
return zval_update_constant_ex(pp, 0, scope TSRMLS_CC);
}
/* }}} */
ZEND_API int zval_update_constant(zval **pp, void *arg TSRMLS_DC) /* {{{ */
ZEND_API int zval_update_constant(zval **pp, zend_bool inline_change TSRMLS_DC) /* {{{ */
{
return zval_update_constant_ex(pp, arg, NULL TSRMLS_CC);
return zval_update_constant_ex(pp, inline_change, NULL TSRMLS_CC);
}
/* }}} */
@@ -1023,24 +903,25 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TS
}
/* }}} */
ZEND_API int zend_lookup_class_ex(const char *name, int name_length, const zend_literal *key, int use_autoload, zend_class_entry ***ce TSRMLS_DC) /* {{{ */
ZEND_API int zend_lookup_class_ex(const char *name, zend_size_t name_length, const zend_literal *key, int use_autoload, zend_class_entry ***ce TSRMLS_DC) /* {{{ */
{
zval **args[1];
zval autoload_function;
zval *class_name_ptr;
zval *retval_ptr = NULL;
int retval, lc_length;
int retval;
zend_size_t lc_length;
char *lc_name;
char *lc_free;
zend_fcall_info fcall_info;
zend_fcall_info_cache fcall_cache;
char dummy = 1;
ulong hash;
zend_uint_t hash;
ALLOCA_FLAG(use_heap)
if (key) {
lc_name = Z_STRVAL(key->constant);
lc_length = Z_STRLEN(key->constant) + 1;
lc_length = Z_STRSIZE(key->constant) + 1;
hash = key->hash_value;
} else {
if (name == NULL || !name_length) {
@@ -1148,13 +1029,13 @@ ZEND_API int zend_lookup_class_ex(const char *name, int name_length, const zend_
}
/* }}} */
ZEND_API int zend_lookup_class(const char *name, int name_length, zend_class_entry ***ce TSRMLS_DC) /* {{{ */
ZEND_API int zend_lookup_class(const char *name, zend_size_t name_length, zend_class_entry ***ce TSRMLS_DC) /* {{{ */
{
return zend_lookup_class_ex(name, name_length, NULL, 1, ce TSRMLS_CC);
}
/* }}} */
ZEND_API int zend_eval_stringl(char *str, int str_len, zval *retval_ptr, char *string_name TSRMLS_DC) /* {{{ */
ZEND_API int zend_eval_stringl(char *str, zend_size_t str_len, zval *retval_ptr, char *string_name TSRMLS_DC) /* {{{ */
{
zval pv;
zend_op_array *new_op_array;
@@ -1163,14 +1044,14 @@ ZEND_API int zend_eval_stringl(char *str, int str_len, zval *retval_ptr, char *s
int retval;
if (retval_ptr) {
Z_STRLEN(pv) = str_len + sizeof("return ;") - 1;
Z_STRVAL(pv) = emalloc(Z_STRLEN(pv) + 1);
Z_STRSIZE(pv) = str_len + sizeof("return ;") - 1;
Z_STRVAL(pv) = emalloc(Z_STRSIZE(pv) + 1);
memcpy(Z_STRVAL(pv), "return ", sizeof("return ") - 1);
memcpy(Z_STRVAL(pv) + sizeof("return ") - 1, str, str_len);
Z_STRVAL(pv)[Z_STRLEN(pv) - 1] = ';';
Z_STRVAL(pv)[Z_STRLEN(pv)] = '\0';
Z_STRVAL(pv)[Z_STRSIZE(pv) - 1] = ';';
Z_STRVAL(pv)[Z_STRSIZE(pv)] = '\0';
} else {
Z_STRLEN(pv) = str_len;
Z_STRSIZE(pv) = str_len;
Z_STRVAL(pv) = str;
}
Z_TYPE(pv) = IS_STRING;
@@ -1240,7 +1121,7 @@ ZEND_API int zend_eval_string(char *str, zval *retval_ptr, char *string_name TSR
}
/* }}} */
ZEND_API int zend_eval_stringl_ex(char *str, int str_len, zval *retval_ptr, char *string_name, int handle_exceptions TSRMLS_DC) /* {{{ */
ZEND_API int zend_eval_stringl_ex(char *str, zend_size_t str_len, zval *retval_ptr, char *string_name, int handle_exceptions TSRMLS_DC) /* {{{ */
{
int result;
@@ -1294,7 +1175,7 @@ void execute_new_code(TSRMLS_D) /* {{{ */
}
switch (opline->opcode) {
case ZEND_GOTO:
if (Z_TYPE_P(opline->op2.zv) != IS_LONG) {
if (Z_TYPE_P(opline->op2.zv) != IS_INT) {
zend_resolve_goto_label(CG(active_op_array), opline, 1 TSRMLS_CC);
}
/* break omitted intentionally */
@@ -1466,7 +1347,7 @@ void zend_shutdown_timeout_thread(void) /* {{{ */
#define SIGPROF 27
#endif
void zend_set_timeout(long seconds, int reset_signals) /* {{{ */
void zend_set_timeout(zend_int_t seconds, int reset_signals) /* {{{ */
{
TSRMLS_FETCH();
@@ -1545,7 +1426,7 @@ void zend_unset_timeout(TSRMLS_D) /* {{{ */
}
/* }}} */
zend_class_entry *zend_fetch_class(const char *class_name, uint class_name_len, int fetch_type TSRMLS_DC) /* {{{ */
zend_class_entry *zend_fetch_class(const char *class_name, zend_size_t class_name_len, int fetch_type TSRMLS_DC) /* {{{ */
{
zend_class_entry **pce;
int use_autoload = (fetch_type & ZEND_FETCH_CLASS_NO_AUTOLOAD) == 0;
@@ -1600,7 +1481,7 @@ check_fetch_type:
}
/* }}} */
zend_class_entry *zend_fetch_class_by_name(const char *class_name, uint class_name_len, const zend_literal *key, int fetch_type TSRMLS_DC) /* {{{ */
zend_class_entry *zend_fetch_class_by_name(const char *class_name, zend_size_t class_name_len, const zend_literal *key, int fetch_type TSRMLS_DC) /* {{{ */
{
zend_class_entry **pce;
int use_autoload = (fetch_type & ZEND_FETCH_CLASS_NO_AUTOLOAD) == 0;
@@ -1695,7 +1576,7 @@ ZEND_API void zend_reset_all_cv(HashTable *symbol_table TSRMLS_DC) /* {{{ */
}
/* }}} */
ZEND_API void zend_delete_variable(zend_execute_data *ex, HashTable *ht, const char *name, int name_len, ulong hash_value TSRMLS_DC) /* {{{ */
ZEND_API void zend_delete_variable(zend_execute_data *ex, HashTable *ht, const char *name, zend_size_t name_len, zend_uint_t hash_value TSRMLS_DC) /* {{{ */
{
if (zend_hash_quick_del(ht, name, name_len, hash_value) == SUCCESS) {
name_len--;
@@ -1718,7 +1599,7 @@ ZEND_API void zend_delete_variable(zend_execute_data *ex, HashTable *ht, const c
}
/* }}} */
ZEND_API int zend_delete_global_variable_ex(const char *name, int name_len, ulong hash_value TSRMLS_DC) /* {{{ */
ZEND_API int zend_delete_global_variable_ex(const char *name, zend_size_t name_len, zend_uint_t hash_value TSRMLS_DC) /* {{{ */
{
zend_execute_data *ex;
@@ -1743,7 +1624,7 @@ ZEND_API int zend_delete_global_variable_ex(const char *name, int name_len, ulon
}
/* }}} */
ZEND_API int zend_delete_global_variable(const char *name, int name_len TSRMLS_DC) /* {{{ */
ZEND_API int zend_delete_global_variable(const char *name, zend_size_t name_len TSRMLS_DC) /* {{{ */
{
return zend_delete_global_variable_ex(name, name_len, zend_inline_hash_func(name, name_len + 1) TSRMLS_CC);
}
+5 -7
View File
@@ -24,7 +24,7 @@
ZEND_API zend_llist zend_extensions;
static int last_resource_number;
int zend_load_extension(const char *path)
int zend_load_extension(const char *path TSRMLS_DC)
{
#if ZEND_EXTENSIONS_SUPPORT
DL_HANDLE handle;
@@ -107,7 +107,7 @@ int zend_load_extension(const char *path)
return FAILURE;
}
return zend_register_extension(new_extension, handle);
return zend_register_extension(new_extension, handle TSRMLS_CC);
#else
fprintf(stderr, "Extensions are not supported on this platform.\n");
/* See http://support.microsoft.com/kb/190351 */
@@ -119,7 +119,7 @@ int zend_load_extension(const char *path)
}
int zend_register_extension(zend_extension *new_extension, DL_HANDLE handle)
int zend_register_extension(zend_extension *new_extension, DL_HANDLE handle TSRMLS_DC)
{
#if ZEND_EXTENSIONS_SUPPORT
zend_extension extension;
@@ -127,7 +127,7 @@ int zend_register_extension(zend_extension *new_extension, DL_HANDLE handle)
extension = *new_extension;
extension.handle = handle;
zend_extension_dispatch_message(ZEND_EXTMSG_NEW_EXTENSION, &extension);
zend_extension_dispatch_message(ZEND_EXTMSG_NEW_EXTENSION, &extension TSRMLS_CC);
zend_llist_add_element(&zend_extensions, &extension);
@@ -208,10 +208,8 @@ static void zend_extension_message_dispatcher(const zend_extension *extension, i
}
ZEND_API void zend_extension_dispatch_message(int message, void *arg)
ZEND_API void zend_extension_dispatch_message(int message, void *arg TSRMLS_DC)
{
TSRMLS_FETCH();
zend_llist_apply_with_arguments(&zend_extensions, (llist_apply_with_args_func_t) zend_extension_message_dispatcher TSRMLS_CC, 2, message, arg);
}
+4 -4
View File
@@ -28,7 +28,7 @@
/* The first number is the engine version and the rest is the date.
* This way engine 2/3 API no. is always greater than engine 1 API no..
*/
#define ZEND_EXTENSION_API_NO 220131226
#define ZEND_EXTENSION_API_NO 220131227
typedef struct _zend_extension_version_info {
int zend_extension_api_no;
@@ -94,7 +94,7 @@ struct _zend_extension {
BEGIN_EXTERN_C()
ZEND_API int zend_get_resource_handle(zend_extension *extension);
ZEND_API void zend_extension_dispatch_message(int message, void *arg);
ZEND_API void zend_extension_dispatch_message(int message, void *arg TSRMLS_DC);
END_EXTERN_C()
#define ZEND_EXTMSG_NEW_EXTENSION 1
@@ -117,8 +117,8 @@ int zend_startup_extensions(void);
void zend_shutdown_extensions(TSRMLS_D);
BEGIN_EXTERN_C()
ZEND_API int zend_load_extension(const char *path);
ZEND_API int zend_register_extension(zend_extension *new_extension, DL_HANDLE handle);
ZEND_API int zend_load_extension(const char *path TSRMLS_DC);
ZEND_API int zend_register_extension(zend_extension *new_extension, DL_HANDLE handle TSRMLS_DC);
ZEND_API zend_extension *zend_get_extension(const char *extension_name);
END_EXTERN_C()
+1
View File
@@ -125,6 +125,7 @@ ZEND_API void zend_generator_close(zend_generator *generator, zend_bool finished
/* A fatal error / die occurred during the generator execution. Trying to clean
* up the stack may not be safe in this case. */
if (CG(unclean_shutdown)) {
generator->execute_data = NULL;
return;
}
+1 -1
View File
@@ -51,7 +51,7 @@ typedef struct _zend_generator {
/* Variable to put sent value into */
zval **send_target;
/* Largest used integer key for auto-incrementing keys */
long largest_used_integer_key;
zend_int_t largest_used_integer_key;
/* ZEND_GENERATOR_* flags */
zend_uchar flags;
+6 -6
View File
@@ -87,7 +87,7 @@ struct _zend_compiler_globals {
char *compiled_filename;
int zend_lineno;
zend_uint_t zend_lineno;
zend_op_array *active_op_array;
@@ -111,7 +111,7 @@ struct _zend_compiler_globals {
zend_llist open_files;
long catch_begin;
zend_int_t catch_begin;
struct _zend_ini_parser_param *ini_parser_param;
@@ -188,8 +188,8 @@ struct _zend_executor_globals {
JMP_BUF *bailout;
int error_reporting;
int orig_error_reporting;
zend_int_t error_reporting;
zend_int_t orig_error_reporting;
int exit_status;
zend_op_array *active_op_array;
@@ -203,7 +203,7 @@ struct _zend_executor_globals {
zval *This;
long precision;
zend_int_t precision;
int ticks_count;
@@ -236,7 +236,7 @@ struct _zend_executor_globals {
zend_class_entry *exception_class;
/* timeout support */
int timeout_seconds;
zend_int_t timeout_seconds;
int lambda_count;
+247 -273
View File
@@ -29,18 +29,24 @@
(element)->pNext->pLast = (element); \
}
#define CONNECT_TO_GLOBAL_DLLIST(element, ht) \
(element)->pListLast = (ht)->pListTail; \
(ht)->pListTail = (element); \
(element)->pListNext = NULL; \
if ((element)->pListLast != NULL) { \
(element)->pListLast->pListNext = (element); \
} \
if (!(ht)->pListHead) { \
#define CONNECT_TO_GLOBAL_DLLIST_EX(element, ht, last, next)\
(element)->pListLast = (last); \
(element)->pListNext = (next); \
if ((last) != NULL) { \
(last)->pListNext = (element); \
} else { \
(ht)->pListHead = (element); \
} \
if ((ht)->pInternalPointer == NULL) { \
(ht)->pInternalPointer = (element); \
if ((next) != NULL) { \
(next)->pListLast = (element); \
} else { \
(ht)->pListTail = (element); \
} \
#define CONNECT_TO_GLOBAL_DLLIST(element, ht) \
CONNECT_TO_GLOBAL_DLLIST_EX(element, ht, (ht)->pListTail, (Bucket *) NULL); \
if ((ht)->pInternalPointer == NULL) { \
(ht)->pInternalPointer = (element); \
}
#if ZEND_DEBUG
@@ -49,7 +55,7 @@
#define HT_DESTROYED 2
#define HT_CLEANING 3
static void _zend_is_inconsistent(const HashTable *ht, const char *file, int line)
static void _zend_is_inconsistent(const HashTable *ht, const char *file, zend_size_t line)
{
if (ht->inconsistent==HT_OK) {
return;
@@ -98,7 +104,7 @@ static void _zend_is_inconsistent(const HashTable *ht, const char *file, int lin
static void zend_hash_do_resize(HashTable *ht);
ZEND_API ulong zend_hash_func(const char *arKey, uint nKeyLength)
ZEND_API zend_uint_t zend_hash_func(const char *arKey, zend_size_t nKeyLength)
{
return zend_inline_hash_func(arKey, nKeyLength);
}
@@ -122,13 +128,13 @@ ZEND_API ulong zend_hash_func(const char *arKey, uint nKeyLength)
memcpy((p)->pData, pData, nDataSize); \
}
#define INIT_DATA(ht, p, pData, nDataSize); \
#define INIT_DATA(ht, p, _pData, nDataSize); \
if (nDataSize == sizeof(void*)) { \
memcpy(&(p)->pDataPtr, pData, sizeof(void *)); \
memcpy(&(p)->pDataPtr, (_pData), sizeof(void *)); \
(p)->pData = &(p)->pDataPtr; \
} else { \
(p)->pData = (void *) pemalloc_rel(nDataSize, (ht)->persistent);\
memcpy((p)->pData, pData, nDataSize); \
memcpy((p)->pData, (_pData), nDataSize); \
(p)->pDataPtr=NULL; \
}
@@ -141,20 +147,65 @@ ZEND_API ulong zend_hash_func(const char *arKey, uint nKeyLength)
static const Bucket *uninitialized_bucket = NULL;
ZEND_API int _zend_hash_init(HashTable *ht, uint nSize, dtor_func_t pDestructor, zend_bool persistent ZEND_FILE_LINE_DC)
static zend_always_inline void i_zend_hash_bucket_delete(HashTable *ht, Bucket *p)
{
uint i = 3;
#ifdef ZEND_SIGNALS
TSRMLS_FETCH();
#endif
HANDLE_BLOCK_INTERRUPTIONS();
if (p->pLast) {
p->pLast->pNext = p->pNext;
} else {
ht->arBuckets[p->h & ht->nTableMask] = p->pNext;
}
if (p->pNext) {
p->pNext->pLast = p->pLast;
}
if (p->pListLast != NULL) {
p->pListLast->pListNext = p->pListNext;
} else {
/* Deleting the head of the list */
ht->pListHead = p->pListNext;
}
if (p->pListNext != NULL) {
p->pListNext->pListLast = p->pListLast;
} else {
/* Deleting the tail of the list */
ht->pListTail = p->pListLast;
}
if (ht->pInternalPointer == p) {
ht->pInternalPointer = p->pListNext;
}
ht->nNumOfElements--;
if (ht->pDestructor) {
ht->pDestructor(p->pData);
}
if (p->pData != &p->pDataPtr) {
pefree(p->pData, ht->persistent);
}
pefree(p, ht->persistent);
HANDLE_UNBLOCK_INTERRUPTIONS();
}
static void zend_hash_bucket_delete(HashTable *ht, Bucket *p) {
i_zend_hash_bucket_delete(ht, p);
}
ZEND_API int _zend_hash_init(HashTable *ht, zend_uint_t nSize, dtor_func_t pDestructor, zend_bool persistent ZEND_FILE_LINE_DC)
{
zend_uint_t i = 3;
SET_INCONSISTENT(HT_OK);
if (nSize >= 0x80000000) {
if (nSize >= ZEND_INT_MAX) {
/* prevent overflow */
ht->nTableSize = 0x80000000;
ht->nTableSize = ZEND_INT_MAX;
} else {
while ((1U << i) < nSize) {
while ((Z_UI(1) << i) < nSize) {
i++;
}
ht->nTableSize = 1 << i;
ht->nTableSize = Z_UI(1) << i;
}
ht->nTableMask = 0; /* 0 means that ht->arBuckets is uninitialized */
@@ -172,7 +223,7 @@ ZEND_API int _zend_hash_init(HashTable *ht, uint nSize, dtor_func_t pDestructor,
}
ZEND_API int _zend_hash_init_ex(HashTable *ht, uint nSize, dtor_func_t pDestructor, zend_bool persistent, zend_bool bApplyProtection ZEND_FILE_LINE_DC)
ZEND_API int _zend_hash_init_ex(HashTable *ht, zend_uint_t nSize, dtor_func_t pDestructor, zend_bool persistent, zend_bool bApplyProtection ZEND_FILE_LINE_DC)
{
int retval = _zend_hash_init(ht, nSize, pDestructor, persistent ZEND_FILE_LINE_CC);
@@ -188,10 +239,10 @@ ZEND_API void zend_hash_set_apply_protection(HashTable *ht, zend_bool bApplyProt
ZEND_API int _zend_hash_add_or_update(HashTable *ht, const char *arKey, uint nKeyLength, void *pData, uint nDataSize, void **pDest, int flag ZEND_FILE_LINE_DC)
ZEND_API int _zend_hash_add_or_update(HashTable *ht, const char *arKey, zend_size_t nKeyLength, void *pData, zend_uint_t nDataSize, void **pDest, int flag ZEND_FILE_LINE_DC)
{
ulong h;
uint nIndex;
zend_uint_t h;
zend_uint_t nIndex;
Bucket *p;
#ifdef ZEND_SIGNALS
TSRMLS_FETCH();
@@ -254,9 +305,9 @@ ZEND_API int _zend_hash_add_or_update(HashTable *ht, const char *arKey, uint nKe
return SUCCESS;
}
ZEND_API int _zend_hash_quick_add_or_update(HashTable *ht, const char *arKey, uint nKeyLength, ulong h, void *pData, uint nDataSize, void **pDest, int flag ZEND_FILE_LINE_DC)
ZEND_API int _zend_hash_quick_add_or_update(HashTable *ht, const char *arKey, zend_size_t nKeyLength, zend_uint_t h, void *pData, zend_uint_t nDataSize, void **pDest, int flag ZEND_FILE_LINE_DC)
{
uint nIndex;
zend_uint_t nIndex;
Bucket *p;
#ifdef ZEND_SIGNALS
TSRMLS_FETCH();
@@ -321,7 +372,7 @@ ZEND_API int _zend_hash_quick_add_or_update(HashTable *ht, const char *arKey, ui
}
ZEND_API int zend_hash_add_empty_element(HashTable *ht, const char *arKey, uint nKeyLength)
ZEND_API int zend_hash_add_empty_element(HashTable *ht, const char *arKey, zend_size_t nKeyLength)
{
void *dummy = (void *) 1;
@@ -329,9 +380,9 @@ ZEND_API int zend_hash_add_empty_element(HashTable *ht, const char *arKey, uint
}
ZEND_API int _zend_hash_index_update_or_next_insert(HashTable *ht, ulong h, void *pData, uint nDataSize, void **pDest, int flag ZEND_FILE_LINE_DC)
ZEND_API int _zend_hash_index_update_or_next_insert(HashTable *ht, zend_uint_t h, void *pData, zend_uint_t nDataSize, void **pDest, int flag ZEND_FILE_LINE_DC)
{
uint nIndex;
zend_uint_t nIndex;
Bucket *p;
#ifdef ZEND_SIGNALS
TSRMLS_FETCH();
@@ -358,9 +409,6 @@ ZEND_API int _zend_hash_index_update_or_next_insert(HashTable *ht, ulong h, void
}
UPDATE_DATA(ht, p, pData, nDataSize);
HANDLE_UNBLOCK_INTERRUPTIONS();
if ((long)h >= (long)ht->nNextFreeElement) {
ht->nNextFreeElement = h < LONG_MAX ? h + 1 : LONG_MAX;
}
if (pDest) {
*pDest = p->pData;
}
@@ -384,8 +432,8 @@ ZEND_API int _zend_hash_index_update_or_next_insert(HashTable *ht, ulong h, void
CONNECT_TO_GLOBAL_DLLIST(p, ht);
HANDLE_UNBLOCK_INTERRUPTIONS();
if ((long)h >= (long)ht->nNextFreeElement) {
ht->nNextFreeElement = h < LONG_MAX ? h + 1 : LONG_MAX;
if ((zend_int_t)h >= (zend_int_t)ht->nNextFreeElement) {
ht->nNextFreeElement = h < ZEND_INT_MAX ? h + 1 : ZEND_INT_MAX;
}
ht->nNumOfElements++;
ZEND_HASH_IF_FULL_DO_RESIZE(ht);
@@ -416,7 +464,7 @@ static void zend_hash_do_resize(HashTable *ht)
ZEND_API int zend_hash_rehash(HashTable *ht)
{
Bucket *p;
uint nIndex;
zend_uint_t nIndex;
IS_CONSISTENT(ht);
if (UNEXPECTED(ht->nNumOfElements == 0)) {
@@ -424,23 +472,43 @@ ZEND_API int zend_hash_rehash(HashTable *ht)
}
memset(ht->arBuckets, 0, ht->nTableSize * sizeof(Bucket *));
p = ht->pListHead;
while (p != NULL) {
for (p = ht->pListHead; p != NULL; p = p->pListNext) {
nIndex = p->h & ht->nTableMask;
CONNECT_TO_BUCKET_DLLIST(p, ht->arBuckets[nIndex]);
ht->arBuckets[nIndex] = p;
p = p->pListNext;
}
return SUCCESS;
}
ZEND_API int zend_hash_del_key_or_index(HashTable *ht, const char *arKey, uint nKeyLength, ulong h, int flag)
ZEND_API void zend_hash_reindex(HashTable *ht, zend_bool only_integer_keys) {
Bucket *p;
zend_uint_t nIndex;
zend_uint_t offset = 0;
IS_CONSISTENT(ht);
if (UNEXPECTED(ht->nNumOfElements == 0)) {
ht->nNextFreeElement = 0;
return;
}
memset(ht->arBuckets, 0, ht->nTableSize * sizeof(Bucket *));
for (p = ht->pListHead; p != NULL; p = p->pListNext) {
if (!only_integer_keys || p->nKeyLength == 0) {
p->h = offset++;
p->nKeyLength = 0;
}
nIndex = p->h & ht->nTableMask;
CONNECT_TO_BUCKET_DLLIST(p, ht->arBuckets[nIndex]);
ht->arBuckets[nIndex] = p;
}
ht->nNextFreeElement = offset;
}
ZEND_API int zend_hash_del_key_or_index(HashTable *ht, const char *arKey, zend_size_t nKeyLength, zend_uint_t h, int flag)
{
uint nIndex;
zend_uint_t nIndex;
Bucket *p;
#ifdef ZEND_SIGNALS
TSRMLS_FETCH();
#endif
IS_CONSISTENT(ht);
@@ -455,38 +523,7 @@ ZEND_API int zend_hash_del_key_or_index(HashTable *ht, const char *arKey, uint n
&& (p->nKeyLength == nKeyLength)
&& ((p->nKeyLength == 0) /* Numeric index (short circuits the memcmp() check) */
|| !memcmp(p->arKey, arKey, nKeyLength))) { /* String index */
HANDLE_BLOCK_INTERRUPTIONS();
if (p == ht->arBuckets[nIndex]) {
ht->arBuckets[nIndex] = p->pNext;
} else {
p->pLast->pNext = p->pNext;
}
if (p->pNext) {
p->pNext->pLast = p->pLast;
}
if (p->pListLast != NULL) {
p->pListLast->pListNext = p->pListNext;
} else {
/* Deleting the head of the list */
ht->pListHead = p->pListNext;
}
if (p->pListNext != NULL) {
p->pListNext->pListLast = p->pListLast;
} else {
ht->pListTail = p->pListLast;
}
if (ht->pInternalPointer == p) {
ht->pInternalPointer = p->pListNext;
}
ht->nNumOfElements--;
if (ht->pDestructor) {
ht->pDestructor(p->pData);
}
if (p->pData != &p->pDataPtr) {
pefree(p->pData, ht->persistent);
}
pefree(p, ht->persistent);
HANDLE_UNBLOCK_INTERRUPTIONS();
i_zend_hash_bucket_delete(ht, p);
return SUCCESS;
}
p = p->pNext;
@@ -553,73 +590,14 @@ ZEND_API void zend_hash_clean(HashTable *ht)
}
}
/* This function is used by the various apply() functions.
* It deletes the passed bucket, and returns the address of the
* next bucket. The hash *may* be altered during that time, the
* returned value will still be valid.
*/
static Bucket *zend_hash_apply_deleter(HashTable *ht, Bucket *p)
{
Bucket *retval;
#ifdef ZEND_SIGNALS
TSRMLS_FETCH();
#endif
HANDLE_BLOCK_INTERRUPTIONS();
if (p->pLast) {
p->pLast->pNext = p->pNext;
} else {
uint nIndex;
nIndex = p->h & ht->nTableMask;
ht->arBuckets[nIndex] = p->pNext;
}
if (p->pNext) {
p->pNext->pLast = p->pLast;
} else {
/* Nothing to do as this list doesn't have a tail */
}
if (p->pListLast != NULL) {
p->pListLast->pListNext = p->pListNext;
} else {
/* Deleting the head of the list */
ht->pListHead = p->pListNext;
}
if (p->pListNext != NULL) {
p->pListNext->pListLast = p->pListLast;
} else {
ht->pListTail = p->pListLast;
}
if (ht->pInternalPointer == p) {
ht->pInternalPointer = p->pListNext;
}
ht->nNumOfElements--;
HANDLE_UNBLOCK_INTERRUPTIONS();
if (ht->pDestructor) {
ht->pDestructor(p->pData);
}
if (p->pData != &p->pDataPtr) {
pefree(p->pData, ht->persistent);
}
retval = p->pListNext;
pefree(p, ht->persistent);
return retval;
}
ZEND_API void zend_hash_graceful_destroy(HashTable *ht)
{
Bucket *p;
IS_CONSISTENT(ht);
p = ht->pListHead;
while (p != NULL) {
p = zend_hash_apply_deleter(ht, p);
while (ht->pListHead != NULL) {
zend_hash_bucket_delete(ht, ht->pListHead);
}
if (ht->nTableMask) {
pefree(ht->arBuckets, ht->persistent);
}
@@ -629,14 +607,10 @@ ZEND_API void zend_hash_graceful_destroy(HashTable *ht)
ZEND_API void zend_hash_graceful_reverse_destroy(HashTable *ht)
{
Bucket *p;
IS_CONSISTENT(ht);
p = ht->pListTail;
while (p != NULL) {
zend_hash_apply_deleter(ht, p);
p = ht->pListTail;
while (ht->pListTail != NULL) {
zend_hash_bucket_delete(ht, ht->pListTail);
}
if (ht->nTableMask) {
@@ -665,12 +639,13 @@ ZEND_API void zend_hash_apply(HashTable *ht, apply_func_t apply_func TSRMLS_DC)
p = ht->pListHead;
while (p != NULL) {
int result = apply_func(p->pData TSRMLS_CC);
Bucket *p_next = p->pListNext;
if (result & ZEND_HASH_APPLY_REMOVE) {
p = zend_hash_apply_deleter(ht, p);
} else {
p = p->pListNext;
zend_hash_bucket_delete(ht, p);
}
p = p_next;
if (result & ZEND_HASH_APPLY_STOP) {
break;
}
@@ -690,11 +665,12 @@ ZEND_API void zend_hash_apply_with_argument(HashTable *ht, apply_func_arg_t appl
while (p != NULL) {
int result = apply_func(p->pData, argument TSRMLS_CC);
Bucket *p_next = p->pListNext;
if (result & ZEND_HASH_APPLY_REMOVE) {
p = zend_hash_apply_deleter(ht, p);
} else {
p = p->pListNext;
zend_hash_bucket_delete(ht, p);
}
p = p_next;
if (result & ZEND_HASH_APPLY_STOP) {
break;
}
@@ -716,17 +692,20 @@ ZEND_API void zend_hash_apply_with_arguments(HashTable *ht TSRMLS_DC, apply_func
p = ht->pListHead;
while (p != NULL) {
int result;
Bucket *p_next;
va_start(args, num_args);
hash_key.arKey = p->arKey;
hash_key.nKeyLength = p->nKeyLength;
hash_key.h = p->h;
result = apply_func(p->pData TSRMLS_CC, num_args, args, &hash_key);
p_next = p->pListNext;
if (result & ZEND_HASH_APPLY_REMOVE) {
p = zend_hash_apply_deleter(ht, p);
} else {
p = p->pListNext;
zend_hash_bucket_delete(ht, p);
}
p = p_next;
if (result & ZEND_HASH_APPLY_STOP) {
va_end(args);
break;
@@ -740,7 +719,7 @@ ZEND_API void zend_hash_apply_with_arguments(HashTable *ht TSRMLS_DC, apply_func
ZEND_API void zend_hash_reverse_apply(HashTable *ht, apply_func_t apply_func TSRMLS_DC)
{
Bucket *p, *q;
Bucket *p;
IS_CONSISTENT(ht);
@@ -749,11 +728,12 @@ ZEND_API void zend_hash_reverse_apply(HashTable *ht, apply_func_t apply_func TSR
while (p != NULL) {
int result = apply_func(p->pData TSRMLS_CC);
q = p;
p = p->pListLast;
Bucket *p_last = p->pListLast;
if (result & ZEND_HASH_APPLY_REMOVE) {
zend_hash_apply_deleter(ht, q);
zend_hash_bucket_delete(ht, p);
}
p = p_last;
if (result & ZEND_HASH_APPLY_STOP) {
break;
}
@@ -762,7 +742,7 @@ ZEND_API void zend_hash_reverse_apply(HashTable *ht, apply_func_t apply_func TSR
}
ZEND_API void zend_hash_copy(HashTable *target, HashTable *source, copy_ctor_func_t pCopyConstructor, void *tmp, uint size)
ZEND_API void zend_hash_copy(HashTable *target, HashTable *source, copy_ctor_func_t pCopyConstructor, void *tmp, zend_uint_t size)
{
Bucket *p;
void *new_entry;
@@ -793,7 +773,7 @@ ZEND_API void zend_hash_copy(HashTable *target, HashTable *source, copy_ctor_fun
}
ZEND_API void _zend_hash_merge(HashTable *target, HashTable *source, copy_ctor_func_t pCopyConstructor, void *tmp, uint size, int overwrite ZEND_FILE_LINE_DC)
ZEND_API void _zend_hash_merge(HashTable *target, HashTable *source, copy_ctor_func_t pCopyConstructor, void *tmp, zend_uint_t size, int overwrite ZEND_FILE_LINE_DC)
{
Bucket *p;
void *t;
@@ -830,7 +810,7 @@ static zend_bool zend_hash_replace_checker_wrapper(HashTable *target, void *sour
}
ZEND_API void zend_hash_merge_ex(HashTable *target, HashTable *source, copy_ctor_func_t pCopyConstructor, uint size, merge_checker_func_t pMergeSource, void *pParam)
ZEND_API void zend_hash_merge_ex(HashTable *target, HashTable *source, copy_ctor_func_t pCopyConstructor, zend_uint_t size, merge_checker_func_t pMergeSource, void *pParam)
{
Bucket *p;
void *t;
@@ -855,10 +835,10 @@ ZEND_API void zend_hash_merge_ex(HashTable *target, HashTable *source, copy_ctor
* data is returned in pData. The reason is that there's no reason
* someone using the hash table might not want to have NULL data
*/
ZEND_API int zend_hash_find(const HashTable *ht, const char *arKey, uint nKeyLength, void **pData)
ZEND_API int zend_hash_find(const HashTable *ht, const char *arKey, zend_size_t nKeyLength, void **pData)
{
ulong h;
uint nIndex;
zend_uint_t h;
zend_uint_t nIndex;
Bucket *p;
IS_CONSISTENT(ht);
@@ -879,9 +859,9 @@ ZEND_API int zend_hash_find(const HashTable *ht, const char *arKey, uint nKeyLen
}
ZEND_API int zend_hash_quick_find(const HashTable *ht, const char *arKey, uint nKeyLength, ulong h, void **pData)
ZEND_API int zend_hash_quick_find(const HashTable *ht, const char *arKey, zend_size_t nKeyLength, zend_uint_t h, void **pData)
{
uint nIndex;
zend_uint_t nIndex;
Bucket *p;
ZEND_ASSERT(nKeyLength != 0);
@@ -903,10 +883,10 @@ ZEND_API int zend_hash_quick_find(const HashTable *ht, const char *arKey, uint n
}
ZEND_API int zend_hash_exists(const HashTable *ht, const char *arKey, uint nKeyLength)
ZEND_API int zend_hash_exists(const HashTable *ht, const char *arKey, zend_size_t nKeyLength)
{
ulong h;
uint nIndex;
zend_uint_t h;
zend_uint_t nIndex;
Bucket *p;
IS_CONSISTENT(ht);
@@ -926,9 +906,9 @@ ZEND_API int zend_hash_exists(const HashTable *ht, const char *arKey, uint nKeyL
}
ZEND_API int zend_hash_quick_exists(const HashTable *ht, const char *arKey, uint nKeyLength, ulong h)
ZEND_API int zend_hash_quick_exists(const HashTable *ht, const char *arKey, zend_size_t nKeyLength, zend_uint_t h)
{
uint nIndex;
zend_uint_t nIndex;
Bucket *p;
ZEND_ASSERT(nKeyLength != 0);
@@ -950,9 +930,9 @@ ZEND_API int zend_hash_quick_exists(const HashTable *ht, const char *arKey, uint
}
ZEND_API int zend_hash_index_find(const HashTable *ht, ulong h, void **pData)
ZEND_API int zend_hash_index_find(const HashTable *ht, zend_uint_t h, void **pData)
{
uint nIndex;
zend_uint_t nIndex;
Bucket *p;
IS_CONSISTENT(ht);
@@ -971,9 +951,9 @@ ZEND_API int zend_hash_index_find(const HashTable *ht, ulong h, void **pData)
}
ZEND_API int zend_hash_index_exists(const HashTable *ht, ulong h)
ZEND_API int zend_hash_index_exists(const HashTable *ht, zend_uint_t h)
{
uint nIndex;
zend_uint_t nIndex;
Bucket *p;
IS_CONSISTENT(ht);
@@ -991,7 +971,7 @@ ZEND_API int zend_hash_index_exists(const HashTable *ht, ulong h)
}
ZEND_API int zend_hash_num_elements(const HashTable *ht)
ZEND_API zend_uint_t zend_hash_num_elements(const HashTable *ht)
{
IS_CONSISTENT(ht);
@@ -1085,7 +1065,7 @@ ZEND_API int zend_hash_move_backwards_ex(HashTable *ht, HashPosition *pos)
/* This function should be made binary safe */
ZEND_API int zend_hash_get_current_key_ex(const HashTable *ht, char **str_index, uint *str_length, ulong *num_index, zend_bool duplicate, HashPosition *pos)
ZEND_API int zend_hash_get_current_key_ex(const HashTable *ht, char **str_index, zend_size_t *str_length, zend_uint_t *num_index, zend_bool duplicate, HashPosition *pos)
{
Bucket *p;
@@ -1106,7 +1086,7 @@ ZEND_API int zend_hash_get_current_key_ex(const HashTable *ht, char **str_index,
return HASH_KEY_IS_STRING;
} else {
*num_index = p->h;
return HASH_KEY_IS_LONG;
return HASH_KEY_IS_INT;
}
}
return HASH_KEY_NON_EXISTENT;
@@ -1124,10 +1104,10 @@ ZEND_API void zend_hash_get_current_key_zval_ex(const HashTable *ht, zval *key,
} else if (p->nKeyLength) {
Z_TYPE_P(key) = IS_STRING;
Z_STRVAL_P(key) = IS_INTERNED(p->arKey) ? (char*)p->arKey : estrndup(p->arKey, p->nKeyLength - 1);
Z_STRLEN_P(key) = p->nKeyLength - 1;
Z_STRSIZE_P(key) = p->nKeyLength - 1;
} else {
Z_TYPE_P(key) = IS_LONG;
Z_LVAL_P(key) = p->h;
Z_TYPE_P(key) = IS_INT;
Z_IVAL_P(key) = p->h;
}
}
@@ -1143,7 +1123,7 @@ ZEND_API int zend_hash_get_current_key_type_ex(HashTable *ht, HashPosition *pos)
if (p->nKeyLength) {
return HASH_KEY_IS_STRING;
} else {
return HASH_KEY_IS_LONG;
return HASH_KEY_IS_INT;
}
}
return HASH_KEY_NON_EXISTENT;
@@ -1169,10 +1149,10 @@ ZEND_API int zend_hash_get_current_data_ex(HashTable *ht, void **pData, HashPosi
/* This function changes key of current element without changing elements'
* order. If element with target key already exists, it will be deleted first.
*/
ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const char *str_index, uint str_length, ulong num_index, int mode, HashPosition *pos)
ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const char *str_index, zend_size_t str_length, zend_uint_t num_index, int mode, HashPosition *pos)
{
Bucket *p, *q;
ulong h;
zend_uint_t h;
#ifdef ZEND_SIGNALS
TSRMLS_FETCH();
#endif
@@ -1182,7 +1162,7 @@ ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const
IS_CONSISTENT(ht);
if (p) {
if (key_type == HASH_KEY_IS_LONG) {
if (key_type == HASH_KEY_IS_INT) {
str_length = 0;
if (!p->nKeyLength && p->h == num_index) {
return SUCCESS;
@@ -1223,8 +1203,6 @@ ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const
return FAILURE;
}
HANDLE_BLOCK_INTERRUPTIONS();
if (q) {
if (mode != HASH_UPDATE_KEY_ANYWAY) {
Bucket *r = p->pListLast;
@@ -1239,73 +1217,17 @@ ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const
}
if (mode & found) {
/* delete current bucket */
if (p == ht->arBuckets[p->h & ht->nTableMask]) {
ht->arBuckets[p->h & ht->nTableMask] = p->pNext;
} else {
p->pLast->pNext = p->pNext;
}
if (p->pNext) {
p->pNext->pLast = p->pLast;
}
if (p->pListLast != NULL) {
p->pListLast->pListNext = p->pListNext;
} else {
/* Deleting the head of the list */
ht->pListHead = p->pListNext;
}
if (p->pListNext != NULL) {
p->pListNext->pListLast = p->pListLast;
} else {
ht->pListTail = p->pListLast;
}
if (ht->pInternalPointer == p) {
ht->pInternalPointer = p->pListNext;
}
ht->nNumOfElements--;
if (ht->pDestructor) {
ht->pDestructor(p->pData);
}
if (p->pData != &p->pDataPtr) {
pefree(p->pData, ht->persistent);
}
pefree(p, ht->persistent);
HANDLE_UNBLOCK_INTERRUPTIONS();
zend_hash_bucket_delete(ht, p);
return FAILURE;
}
}
/* delete another bucket with the same key */
if (q == ht->arBuckets[q->h & ht->nTableMask]) {
ht->arBuckets[q->h & ht->nTableMask] = q->pNext;
} else {
q->pLast->pNext = q->pNext;
}
if (q->pNext) {
q->pNext->pLast = q->pLast;
}
if (q->pListLast != NULL) {
q->pListLast->pListNext = q->pListNext;
} else {
/* Deleting the head of the list */
ht->pListHead = q->pListNext;
}
if (q->pListNext != NULL) {
q->pListNext->pListLast = q->pListLast;
} else {
ht->pListTail = q->pListLast;
}
if (ht->pInternalPointer == q) {
ht->pInternalPointer = q->pListNext;
}
ht->nNumOfElements--;
if (ht->pDestructor) {
ht->pDestructor(q->pData);
}
if (q->pData != &q->pDataPtr) {
pefree(q->pData, ht->persistent);
}
pefree(q, ht->persistent);
zend_hash_bucket_delete(ht, q);
}
HANDLE_BLOCK_INTERRUPTIONS();
if (p->pNext) {
p->pNext->pLast = p->pLast;
}
@@ -1332,21 +1254,12 @@ ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const
q->pData = p->pData;
}
q->pDataPtr = p->pDataPtr;
q->pListNext = p->pListNext;
q->pListLast = p->pListLast;
if (q->pListNext) {
p->pListNext->pListLast = q;
} else {
ht->pListTail = q;
}
if (q->pListLast) {
p->pListLast->pListNext = q;
} else {
ht->pListHead = q;
}
CONNECT_TO_GLOBAL_DLLIST_EX(q, ht, p->pListLast, p->pListNext);
if (ht->pInternalPointer == p) {
ht->pInternalPointer = q;
}
if (pos) {
*pos = q;
}
@@ -1354,7 +1267,7 @@ ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const
p = q;
}
if (key_type == HASH_KEY_IS_LONG) {
if (key_type == HASH_KEY_IS_INT) {
p->h = num_index;
} else {
p->h = h;
@@ -1377,6 +1290,75 @@ ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const
}
}
/* Performs an in-place splice operation on a hashtable:
* The elements between offset and offset+length are removed and the elements in list[list_count]
* are inserted in their place. The removed elements can be optionally collected into a hashtable.
* This operation reindexes the hashtable, i.e. integer keys will be zero-based and sequential,
* while string keys stay intact. The same applies to the elements inserted into the removed HT. */
ZEND_API void _zend_hash_splice(HashTable *ht, zend_uint_t nDataSize, copy_ctor_func_t pCopyConstructor, zend_uint_t offset, zend_size_t length, void **list, zend_size_t list_count, HashTable *removed ZEND_FILE_LINE_DC) /* {{{ */
{
zend_size_t pos;
Bucket *p;
IS_CONSISTENT(ht);
CHECK_INIT(ht);
/* Skip all elements until offset */
for (pos = 0, p = ht->pListHead; pos < offset && p; pos++, p = p->pListNext);
while (pos < offset + length && p) {
/* Copy removed element into HT, if it was specified */
if (removed != NULL) {
void *new_entry;
if (p->nKeyLength == 0) {
zend_hash_next_index_insert(removed, p->pData, sizeof(zval *), &new_entry);
} else {
zend_hash_quick_update(removed, p->arKey, p->nKeyLength, p->h, p->pData, sizeof(zval *), &new_entry);
}
if (pCopyConstructor) {
pCopyConstructor(new_entry);
}
}
/* Remove element */
{
Bucket *p_next = p->pListNext;
zend_hash_bucket_delete(ht, p);
p = p_next;
}
pos++;
}
if (list != NULL) {
zend_size_t i;
for (i = 0; i < list_count; i++) {
/* Add new element only to the global linked list, not the bucket list.
* Also use key 0 for everything, as we'll reindex the hashtable anyways. */
Bucket *q = pemalloc_rel(sizeof(Bucket), ht->persistent);
q->arKey = NULL;
q->nKeyLength = 0;
q->h = 0;
INIT_DATA(ht, q, list[i], nDataSize);
CONNECT_TO_GLOBAL_DLLIST_EX(q, ht, p ? p->pListLast : ht->pListTail, p);
ht->nNumOfElements++;
if (pCopyConstructor) {
pCopyConstructor(q->pData);
}
}
ZEND_HASH_IF_FULL_DO_RESIZE(ht);
}
zend_hash_reindex(ht, 1);
}
/* }}} */
ZEND_API int zend_hash_sort(HashTable *ht, sort_func_t sort_func,
compare_func_t compar, int renumber TSRMLS_DC)
{
@@ -1423,15 +1405,7 @@ ZEND_API int zend_hash_sort(HashTable *ht, sort_func_t sort_func,
HANDLE_UNBLOCK_INTERRUPTIONS();
if (renumber) {
p = ht->pListHead;
i=0;
while (p != NULL) {
p->nKeyLength = 0;
p->h = i++;
p = p->pListNext;
}
ht->nNextFreeElement = i;
zend_hash_rehash(ht);
zend_hash_reindex(ht, 0);
}
return SUCCESS;
}
@@ -1440,7 +1414,7 @@ ZEND_API int zend_hash_sort(HashTable *ht, sort_func_t sort_func,
ZEND_API int zend_hash_compare(HashTable *ht1, HashTable *ht2, compare_func_t compar, zend_bool ordered TSRMLS_DC)
{
Bucket *p1, *p2 = NULL;
int result;
ptrdiff_t result;
void *pData2;
IS_CONSISTENT(ht1);
@@ -1550,7 +1524,7 @@ ZEND_API int zend_hash_minmax(const HashTable *ht, compare_func_t compar, int fl
return SUCCESS;
}
ZEND_API ulong zend_hash_next_free_element(const HashTable *ht)
ZEND_API zend_uint_t zend_hash_next_free_element(const HashTable *ht)
{
IS_CONSISTENT(ht);
@@ -1574,7 +1548,7 @@ void zend_hash_display_pListTail(const HashTable *ht)
void zend_hash_display(const HashTable *ht)
{
Bucket *p;
uint i;
zend_uint_t i;
if (UNEXPECTED(ht->nNumOfElements == 0)) {
zend_output_debug_string(0, "The hash is empty");
+51 -46
View File
@@ -26,7 +26,7 @@
#include "zend.h"
#define HASH_KEY_IS_STRING 1
#define HASH_KEY_IS_LONG 2
#define HASH_KEY_IS_INT 2
#define HASH_KEY_NON_EXISTENT 3
#define HASH_KEY_NON_EXISTANT HASH_KEY_NON_EXISTENT /* Keeping old define (with typo) for backward compatibility */
@@ -43,7 +43,7 @@
#define HASH_UPDATE_KEY_IF_AFTER 2
#define HASH_UPDATE_KEY_ANYWAY 3
typedef ulong (*hash_func_t)(const char *arKey, uint nKeyLength);
typedef zend_uint_t (*hash_func_t)(const char *arKey, zend_size_t nKeyLength);
typedef int (*compare_func_t)(const void *, const void * TSRMLS_DC);
typedef void (*sort_func_t)(void *, size_t, register size_t, compare_func_t TSRMLS_DC);
typedef void (*dtor_func_t)(void *pDest);
@@ -53,8 +53,8 @@ typedef void (*copy_ctor_param_func_t)(void *pElement, void *pParam);
struct _hashtable;
typedef struct bucket {
ulong h; /* Used for numeric indexing */
uint nKeyLength;
zend_uint_t h; /* Used for numeric indexing */
zend_size_t nKeyLength;
void *pData;
void *pDataPtr;
struct bucket *pListNext;
@@ -65,10 +65,10 @@ typedef struct bucket {
} Bucket;
typedef struct _hashtable {
uint nTableSize;
uint nTableMask;
uint nNumOfElements;
ulong nNextFreeElement;
zend_uint_t nTableSize;
zend_uint_t nTableMask;
zend_uint_t nNumOfElements;
zend_uint_t nNextFreeElement;
Bucket *pInternalPointer; /* Used for element traversal */
Bucket *pListHead;
Bucket *pListTail;
@@ -85,8 +85,8 @@ typedef struct _hashtable {
typedef struct _zend_hash_key {
const char *arKey;
uint nKeyLength;
ulong h;
zend_size_t nKeyLength;
zend_uint_t h;
} zend_hash_key;
@@ -97,33 +97,33 @@ typedef Bucket* HashPosition;
BEGIN_EXTERN_C()
/* startup/shutdown */
ZEND_API int _zend_hash_init(HashTable *ht, uint nSize, dtor_func_t pDestructor, zend_bool persistent ZEND_FILE_LINE_DC);
ZEND_API int _zend_hash_init_ex(HashTable *ht, uint nSize, dtor_func_t pDestructor, zend_bool persistent, zend_bool bApplyProtection ZEND_FILE_LINE_DC);
ZEND_API int _zend_hash_init(HashTable *ht, zend_uint_t nSize, dtor_func_t pDestructor, zend_bool persistent ZEND_FILE_LINE_DC);
ZEND_API int _zend_hash_init_ex(HashTable *ht, zend_uint_t nSize, dtor_func_t pDestructor, zend_bool persistent, zend_bool bApplyProtection ZEND_FILE_LINE_DC);
ZEND_API void zend_hash_destroy(HashTable *ht);
ZEND_API void zend_hash_clean(HashTable *ht);
#define zend_hash_init(ht, nSize, pHashFunction, pDestructor, persistent) _zend_hash_init((ht), (nSize), (pDestructor), (persistent) ZEND_FILE_LINE_CC)
#define zend_hash_init_ex(ht, nSize, pHashFunction, pDestructor, persistent, bApplyProtection) _zend_hash_init_ex((ht), (nSize), (pDestructor), (persistent), (bApplyProtection) ZEND_FILE_LINE_CC)
/* additions/updates/changes */
ZEND_API int _zend_hash_add_or_update(HashTable *ht, const char *arKey, uint nKeyLength, void *pData, uint nDataSize, void **pDest, int flag ZEND_FILE_LINE_DC);
ZEND_API int _zend_hash_add_or_update(HashTable *ht, const char *arKey, zend_size_t nKeyLength, void *pData, zend_uint_t nDataSize, void **pDest, int flag ZEND_FILE_LINE_DC);
#define zend_hash_update(ht, arKey, nKeyLength, pData, nDataSize, pDest) \
_zend_hash_add_or_update(ht, arKey, nKeyLength, pData, nDataSize, pDest, HASH_UPDATE ZEND_FILE_LINE_CC)
#define zend_hash_add(ht, arKey, nKeyLength, pData, nDataSize, pDest) \
_zend_hash_add_or_update(ht, arKey, nKeyLength, pData, nDataSize, pDest, HASH_ADD ZEND_FILE_LINE_CC)
ZEND_API int _zend_hash_quick_add_or_update(HashTable *ht, const char *arKey, uint nKeyLength, ulong h, void *pData, uint nDataSize, void **pDest, int flag ZEND_FILE_LINE_DC);
ZEND_API int _zend_hash_quick_add_or_update(HashTable *ht, const char *arKey, zend_size_t nKeyLength, zend_uint_t h, void *pData, zend_uint_t nDataSize, void **pDest, int flag ZEND_FILE_LINE_DC);
#define zend_hash_quick_update(ht, arKey, nKeyLength, h, pData, nDataSize, pDest) \
_zend_hash_quick_add_or_update(ht, arKey, nKeyLength, h, pData, nDataSize, pDest, HASH_UPDATE ZEND_FILE_LINE_CC)
#define zend_hash_quick_add(ht, arKey, nKeyLength, h, pData, nDataSize, pDest) \
_zend_hash_quick_add_or_update(ht, arKey, nKeyLength, h, pData, nDataSize, pDest, HASH_ADD ZEND_FILE_LINE_CC)
ZEND_API int _zend_hash_index_update_or_next_insert(HashTable *ht, ulong h, void *pData, uint nDataSize, void **pDest, int flag ZEND_FILE_LINE_DC);
ZEND_API int _zend_hash_index_update_or_next_insert(HashTable *ht, zend_uint_t h, void *pData, zend_uint_t nDataSize, void **pDest, int flag ZEND_FILE_LINE_DC);
#define zend_hash_index_update(ht, h, pData, nDataSize, pDest) \
_zend_hash_index_update_or_next_insert(ht, h, pData, nDataSize, pDest, HASH_UPDATE ZEND_FILE_LINE_CC)
#define zend_hash_next_index_insert(ht, pData, nDataSize, pDest) \
_zend_hash_index_update_or_next_insert(ht, 0, pData, nDataSize, pDest, HASH_NEXT_INSERT ZEND_FILE_LINE_CC)
ZEND_API int zend_hash_add_empty_element(HashTable *ht, const char *arKey, uint nKeyLength);
ZEND_API int zend_hash_add_empty_element(HashTable *ht, const char *arKey, zend_size_t nKeyLength);
#define ZEND_HASH_APPLY_KEEP 0
@@ -150,7 +150,7 @@ ZEND_API void zend_hash_reverse_apply(HashTable *ht, apply_func_t apply_func TSR
/* Deletes */
ZEND_API int zend_hash_del_key_or_index(HashTable *ht, const char *arKey, uint nKeyLength, ulong h, int flag);
ZEND_API int zend_hash_del_key_or_index(HashTable *ht, const char *arKey, zend_size_t nKeyLength, zend_uint_t h, int flag);
#define zend_hash_del(ht, arKey, nKeyLength) \
zend_hash_del_key_or_index(ht, arKey, nKeyLength, 0, HASH_DEL_KEY)
#define zend_hash_quick_del(ht, arKey, nKeyLength, h) \
@@ -161,32 +161,32 @@ ZEND_API int zend_hash_del_key_or_index(HashTable *ht, const char *arKey, uint n
zend_hash_func
/* Data retreival */
ZEND_API int zend_hash_find(const HashTable *ht, const char *arKey, uint nKeyLength, void **pData);
ZEND_API int zend_hash_quick_find(const HashTable *ht, const char *arKey, uint nKeyLength, ulong h, void **pData);
ZEND_API int zend_hash_index_find(const HashTable *ht, ulong h, void **pData);
ZEND_API int zend_hash_find(const HashTable *ht, const char *arKey, zend_size_t nKeyLength, void **pData);
ZEND_API int zend_hash_quick_find(const HashTable *ht, const char *arKey, zend_size_t nKeyLength, zend_uint_t h, void **pData);
ZEND_API int zend_hash_index_find(const HashTable *ht, zend_uint_t h, void **pData);
/* Misc */
ZEND_API int zend_hash_exists(const HashTable *ht, const char *arKey, uint nKeyLength);
ZEND_API int zend_hash_quick_exists(const HashTable *ht, const char *arKey, uint nKeyLength, ulong h);
ZEND_API int zend_hash_index_exists(const HashTable *ht, ulong h);
ZEND_API ulong zend_hash_next_free_element(const HashTable *ht);
ZEND_API int zend_hash_exists(const HashTable *ht, const char *arKey, zend_size_t nKeyLength);
ZEND_API int zend_hash_quick_exists(const HashTable *ht, const char *arKey, zend_size_t nKeyLength, zend_uint_t h);
ZEND_API int zend_hash_index_exists(const HashTable *ht, zend_uint_t h);
ZEND_API zend_uint_t zend_hash_next_free_element(const HashTable *ht);
/* traversing */
#define zend_hash_has_more_elements_ex(ht, pos) \
(zend_hash_get_current_key_type_ex(ht, pos) == HASH_KEY_NON_EXISTENT ? FAILURE : SUCCESS)
ZEND_API int zend_hash_move_forward_ex(HashTable *ht, HashPosition *pos);
ZEND_API int zend_hash_move_backwards_ex(HashTable *ht, HashPosition *pos);
ZEND_API int zend_hash_get_current_key_ex(const HashTable *ht, char **str_index, uint *str_length, ulong *num_index, zend_bool duplicate, HashPosition *pos);
ZEND_API int zend_hash_get_current_key_ex(const HashTable *ht, char **str_index, zend_size_t *str_length, zend_uint_t *num_index, zend_bool duplicate, HashPosition *pos);
ZEND_API void zend_hash_get_current_key_zval_ex(const HashTable *ht, zval *key, HashPosition *pos);
ZEND_API int zend_hash_get_current_key_type_ex(HashTable *ht, HashPosition *pos);
ZEND_API int zend_hash_get_current_data_ex(HashTable *ht, void **pData, HashPosition *pos);
ZEND_API void zend_hash_internal_pointer_reset_ex(HashTable *ht, HashPosition *pos);
ZEND_API void zend_hash_internal_pointer_end_ex(HashTable *ht, HashPosition *pos);
ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const char *str_index, uint str_length, ulong num_index, int mode, HashPosition *pos);
ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const char *str_index, zend_size_t str_length, zend_uint_t num_index, int mode, HashPosition *pos);
typedef struct _HashPointer {
HashPosition pos;
ulong h;
zend_uint_t h;
} HashPointer;
ZEND_API int zend_hash_get_pointer(const HashTable *ht, HashPointer *ptr);
@@ -214,9 +214,9 @@ ZEND_API int zend_hash_set_pointer(HashTable *ht, const HashPointer *ptr);
zend_hash_update_current_key_ex(ht, key_type, str_index, str_length, num_index, HASH_UPDATE_KEY_ANYWAY, NULL)
/* Copying, merging and sorting */
ZEND_API void zend_hash_copy(HashTable *target, HashTable *source, copy_ctor_func_t pCopyConstructor, void *tmp, uint size);
ZEND_API void _zend_hash_merge(HashTable *target, HashTable *source, copy_ctor_func_t pCopyConstructor, void *tmp, uint size, int overwrite ZEND_FILE_LINE_DC);
ZEND_API void zend_hash_merge_ex(HashTable *target, HashTable *source, copy_ctor_func_t pCopyConstructor, uint size, merge_checker_func_t pMergeSource, void *pParam);
ZEND_API void zend_hash_copy(HashTable *target, HashTable *source, copy_ctor_func_t pCopyConstructor, void *tmp, zend_uint_t size);
ZEND_API void _zend_hash_merge(HashTable *target, HashTable *source, copy_ctor_func_t pCopyConstructor, void *tmp, zend_uint_t size, int overwrite ZEND_FILE_LINE_DC);
ZEND_API void zend_hash_merge_ex(HashTable *target, HashTable *source, copy_ctor_func_t pCopyConstructor, zend_uint_t size, merge_checker_func_t pMergeSource, void *pParam);
ZEND_API int zend_hash_sort(HashTable *ht, sort_func_t sort_func, compare_func_t compare_func, int renumber TSRMLS_DC);
ZEND_API int zend_hash_compare(HashTable *ht1, HashTable *ht2, compare_func_t compar, zend_bool ordered TSRMLS_DC);
ZEND_API int zend_hash_minmax(const HashTable *ht, compare_func_t compar, int flag, void **pData TSRMLS_DC);
@@ -224,9 +224,14 @@ ZEND_API int zend_hash_minmax(const HashTable *ht, compare_func_t compar, int fl
#define zend_hash_merge(target, source, pCopyConstructor, tmp, size, overwrite) \
_zend_hash_merge(target, source, pCopyConstructor, tmp, size, overwrite ZEND_FILE_LINE_CC)
ZEND_API int zend_hash_num_elements(const HashTable *ht);
ZEND_API zend_uint_t zend_hash_num_elements(const HashTable *ht);
ZEND_API int zend_hash_rehash(HashTable *ht);
ZEND_API void zend_hash_reindex(HashTable *ht, zend_bool only_integer_keys);
ZEND_API void _zend_hash_splice(HashTable *ht, zend_uint_t nDataSize, copy_ctor_func_t pCopyConstructor, zend_uint_t offset, zend_size_t length, void **list, zend_size_t list_count, HashTable *removed ZEND_FILE_LINE_DC);
#define zend_hash_splice(ht, nDataSize, pCopyConstructor, offset, length, list, list_count, removed) \
_zend_hash_splice(ht, nDataSize, pCopyConstructor, offset, length, list, list_count, removed ZEND_FILE_LINE_CC)
/*
* DJBX33A (Daniel J. Bernstein, Times 33 with Addition)
@@ -261,9 +266,9 @@ ZEND_API int zend_hash_rehash(HashTable *ht);
* -- Ralf S. Engelschall <rse@engelschall.com>
*/
static inline ulong zend_inline_hash_func(const char *arKey, uint nKeyLength)
static inline zend_uint_t zend_inline_hash_func(const char *arKey, zend_size_t nKeyLength)
{
register ulong hash = 5381;
register zend_uint_t hash = Z_UI(5381);
/* variant with the hash unrolled eight times */
for (; nKeyLength >= 8; nKeyLength -= 8) {
@@ -291,7 +296,7 @@ EMPTY_SWITCH_DEFAULT_CASE()
}
ZEND_API ulong zend_hash_func(const char *arKey, uint nKeyLength);
ZEND_API zend_uint_t zend_hash_func(const char *arKey, zend_size_t nKeyLength);
#if ZEND_DEBUG
/* debug */
@@ -318,9 +323,9 @@ END_EXTERN_C()
\
if ((*end != '\0') /* not a null terminated string */ \
|| (*tmp == '0' && length > 2) /* numbers with leading zeros */ \
|| (end - tmp > MAX_LENGTH_OF_LONG - 1) /* number too long */ \
|| (SIZEOF_LONG == 4 && \
end - tmp == MAX_LENGTH_OF_LONG - 1 && \
|| (end - tmp > MAX_LENGTH_OF_ZEND_INT - 1) /* number too long */ \
|| (SIZEOF_ZEND_INT == 4 && \
end - tmp == MAX_LENGTH_OF_ZEND_INT - 1 && \
*tmp > '2')) { /* overflow */ \
break; \
} \
@@ -330,11 +335,11 @@ END_EXTERN_C()
} \
if (tmp == end) { \
if (*key == '-') { \
if (idx-1 > LONG_MAX) { /* overflow */ \
if (idx-1 > ZEND_INT_MAX) { /* overflow */ \
break; \
} \
idx = 0 - idx; \
} else if (idx > LONG_MAX) { /* overflow */ \
} else if (idx > ZEND_INT_MAX) { /* overflow */ \
break; \
} \
func; \
@@ -343,41 +348,41 @@ END_EXTERN_C()
} while (0)
#define ZEND_HANDLE_NUMERIC(key, length, func) do { \
ulong idx; \
zend_uint_t idx; \
\
ZEND_HANDLE_NUMERIC_EX(key, length, idx, return func); \
} while (0)
static inline int zend_symtable_update(HashTable *ht, const char *arKey, uint nKeyLength, void *pData, uint nDataSize, void **pDest) \
static inline int zend_symtable_update(HashTable *ht, const char *arKey, zend_size_t nKeyLength, void *pData, zend_uint_t nDataSize, void **pDest) \
{
ZEND_HANDLE_NUMERIC(arKey, nKeyLength, zend_hash_index_update(ht, idx, pData, nDataSize, pDest));
return zend_hash_update(ht, arKey, nKeyLength, pData, nDataSize, pDest);
}
static inline int zend_symtable_del(HashTable *ht, const char *arKey, uint nKeyLength)
static inline int zend_symtable_del(HashTable *ht, const char *arKey, zend_size_t nKeyLength)
{
ZEND_HANDLE_NUMERIC(arKey, nKeyLength, zend_hash_index_del(ht, idx));
return zend_hash_del(ht, arKey, nKeyLength);
}
static inline int zend_symtable_find(HashTable *ht, const char *arKey, uint nKeyLength, void **pData)
static inline int zend_symtable_find(HashTable *ht, const char *arKey, zend_size_t nKeyLength, void **pData)
{
ZEND_HANDLE_NUMERIC(arKey, nKeyLength, zend_hash_index_find(ht, idx, pData));
return zend_hash_find(ht, arKey, nKeyLength, pData);
}
static inline int zend_symtable_exists(HashTable *ht, const char *arKey, uint nKeyLength)
static inline int zend_symtable_exists(HashTable *ht, const char *arKey, zend_size_t nKeyLength)
{
ZEND_HANDLE_NUMERIC(arKey, nKeyLength, zend_hash_index_exists(ht, idx));
return zend_hash_exists(ht, arKey, nKeyLength);
}
static inline int zend_symtable_update_current_key_ex(HashTable *ht, const char *arKey, uint nKeyLength, int mode, HashPosition *pos)
static inline int zend_symtable_update_current_key_ex(HashTable *ht, const char *arKey, zend_size_t nKeyLength, int mode, HashPosition *pos)
{
ZEND_HANDLE_NUMERIC(arKey, nKeyLength, zend_hash_update_current_key_ex(ht, HASH_KEY_IS_LONG, NULL, 0, idx, mode, pos));
ZEND_HANDLE_NUMERIC(arKey, nKeyLength, zend_hash_update_current_key_ex(ht, HASH_KEY_IS_INT, NULL, 0, idx, mode, pos));
return zend_hash_update_current_key_ex(ht, HASH_KEY_IS_STRING, arKey, nKeyLength, 0, mode, pos);
}
#define zend_symtable_update_current_key(ht,arKey,nKeyLength,mode) \
+4 -4
View File
@@ -54,10 +54,10 @@ ZEND_API void zend_html_putc(char c)
}
ZEND_API void zend_html_puts(const char *s, uint len TSRMLS_DC)
ZEND_API void zend_html_puts(const char *s, zend_size_t len TSRMLS_DC)
{
const unsigned char *ptr = (const unsigned char*)s, *end = ptr + len;
unsigned char *filtered;
unsigned char *filtered = NULL;
size_t filtered_len;
if (LANG_SCNG(output_filter)) {
@@ -150,7 +150,7 @@ ZEND_API void zend_highlight(zend_syntax_highlighter_ini *syntax_highlighter_ini
case T_DOC_COMMENT:
break;
default:
efree(token.value.str.val);
str_efree(token.value.str.val);
break;
}
}
@@ -211,7 +211,7 @@ ZEND_API void zend_strip(TSRMLS_D)
break;
default:
efree(token.value.str.val);
STR_FREE(token.value.str.val);
break;
}
}
+1 -1
View File
@@ -44,7 +44,7 @@ ZEND_API void zend_strip(TSRMLS_D);
ZEND_API int highlight_file(char *filename, zend_syntax_highlighter_ini *syntax_highlighter_ini TSRMLS_DC);
ZEND_API int highlight_string(zval *str, zend_syntax_highlighter_ini *syntax_highlighter_ini, char *str_name TSRMLS_DC);
ZEND_API void zend_html_putc(char c);
ZEND_API void zend_html_puts(const char *s, uint len TSRMLS_DC);
ZEND_API void zend_html_puts(const char *s, zend_size_t len TSRMLS_DC);
END_EXTERN_C()
extern zend_syntax_highlighter_ini syntax_highlighter_ini;
+2 -3
View File
@@ -47,7 +47,7 @@ static void handle_whitespace(int *emit_whitespace)
}
ZEND_API void zend_indent()
ZEND_API void zend_indent(TSRMLS_D)
{
zval token;
int token_type;
@@ -55,7 +55,6 @@ ZEND_API void zend_indent()
int nest_level=0;
int emit_whitespace[256];
int i;
TSRMLS_FETCH();
memset(emit_whitespace, 0, sizeof(int)*256);
@@ -139,7 +138,7 @@ dflt_printout:
case T_WHITESPACE:
break;
default:
efree(token.value.str.val);
str_efree(token.value.str.val);
break;
}
}
+1 -1
View File
@@ -23,7 +23,7 @@
#define ZEND_INDENT_H
BEGIN_EXTERN_C()
ZEND_API void zend_indent(void);
ZEND_API void zend_indent(TSRMLS_D);
END_EXTERN_C()
#endif /* ZEND_INDENT_H */
+19 -18
View File
@@ -205,9 +205,9 @@ ZEND_API int zend_register_ini_entries(const zend_ini_entry *ini_entry, int modu
hashed_ini_entry->module_number = module_number;
if ((zend_get_configuration_directive(p->name, p->name_length, &default_value)) == SUCCESS) {
if (!hashed_ini_entry->on_modify
|| hashed_ini_entry->on_modify(hashed_ini_entry, Z_STRVAL(default_value), Z_STRLEN(default_value), hashed_ini_entry->mh_arg1, hashed_ini_entry->mh_arg2, hashed_ini_entry->mh_arg3, ZEND_INI_STAGE_STARTUP TSRMLS_CC) == SUCCESS) {
|| hashed_ini_entry->on_modify(hashed_ini_entry, Z_STRVAL(default_value), Z_STRSIZE(default_value), hashed_ini_entry->mh_arg1, hashed_ini_entry->mh_arg2, hashed_ini_entry->mh_arg3, ZEND_INI_STAGE_STARTUP TSRMLS_CC) == SUCCESS) {
hashed_ini_entry->value = Z_STRVAL(default_value);
hashed_ini_entry->value_length = Z_STRLEN(default_value);
hashed_ini_entry->value_length = Z_STRSIZE(default_value);
config_directive_success = 1;
}
}
@@ -244,7 +244,7 @@ ZEND_API void zend_ini_refresh_caches(int stage TSRMLS_DC) /* {{{ */
/* }}} */
#endif
ZEND_API int zend_alter_ini_entry(char *name, uint name_length, char *new_value, uint new_value_length, int modify_type, int stage) /* {{{ */
ZEND_API int zend_alter_ini_entry(char *name, zend_size_t name_length, char *new_value, zend_size_t new_value_length, int modify_type, int stage) /* {{{ */
{
TSRMLS_FETCH();
@@ -252,7 +252,7 @@ ZEND_API int zend_alter_ini_entry(char *name, uint name_length, char *new_value,
}
/* }}} */
ZEND_API int zend_alter_ini_entry_ex(char *name, uint name_length, char *new_value, uint new_value_length, int modify_type, int stage, int force_change TSRMLS_DC) /* {{{ */
ZEND_API int zend_alter_ini_entry_ex(char *name, zend_size_t name_length, char *new_value, zend_size_t new_value_length, int modify_type, int stage, int force_change TSRMLS_DC) /* {{{ */
{
zend_ini_entry *ini_entry;
char *duplicate;
@@ -306,7 +306,7 @@ ZEND_API int zend_alter_ini_entry_ex(char *name, uint name_length, char *new_val
}
/* }}} */
ZEND_API int zend_restore_ini_entry(char *name, uint name_length, int stage) /* {{{ */
ZEND_API int zend_restore_ini_entry(char *name, zend_size_t name_length, int stage) /* {{{ */
{
zend_ini_entry *ini_entry;
TSRMLS_FETCH();
@@ -328,7 +328,7 @@ ZEND_API int zend_restore_ini_entry(char *name, uint name_length, int stage) /*
}
/* }}} */
ZEND_API int zend_ini_register_displayer(char *name, uint name_length, void (*displayer)(zend_ini_entry *ini_entry, int type)) /* {{{ */
ZEND_API int zend_ini_register_displayer(char *name, zend_size_t name_length, void (*displayer)(zend_ini_entry *ini_entry, int type)) /* {{{ */
{
zend_ini_entry *ini_entry;
@@ -345,16 +345,16 @@ ZEND_API int zend_ini_register_displayer(char *name, uint name_length, void (*di
* Data retrieval
*/
ZEND_API long zend_ini_long(char *name, uint name_length, int orig) /* {{{ */
ZEND_API zend_int_t zend_ini_int(char *name, zend_size_t name_length, int orig) /* {{{ */
{
zend_ini_entry *ini_entry;
TSRMLS_FETCH();
if (zend_hash_find(EG(ini_directives), name, name_length, (void **) &ini_entry) == SUCCESS) {
if (orig && ini_entry->modified) {
return (ini_entry->orig_value ? strtol(ini_entry->orig_value, NULL, 0) : 0);
return (ini_entry->orig_value ? ZEND_STRTOI(ini_entry->orig_value, NULL, 0) : 0);
} else {
return (ini_entry->value ? strtol(ini_entry->value, NULL, 0) : 0);
return (ini_entry->value ? ZEND_STRTOI(ini_entry->value, NULL, 0) : 0);
}
}
@@ -362,7 +362,7 @@ ZEND_API long zend_ini_long(char *name, uint name_length, int orig) /* {{{ */
}
/* }}} */
ZEND_API double zend_ini_double(char *name, uint name_length, int orig) /* {{{ */
ZEND_API double zend_ini_double(char *name, zend_size_t name_length, int orig) /* {{{ */
{
zend_ini_entry *ini_entry;
TSRMLS_FETCH();
@@ -379,7 +379,7 @@ ZEND_API double zend_ini_double(char *name, uint name_length, int orig) /* {{{ *
}
/* }}} */
ZEND_API char *zend_ini_string_ex(char *name, uint name_length, int orig, zend_bool *exists) /* {{{ */
ZEND_API char *zend_ini_string_ex(char *name, zend_size_t name_length, int orig, zend_bool *exists) /* {{{ */
{
zend_ini_entry *ini_entry;
TSRMLS_FETCH();
@@ -403,7 +403,7 @@ ZEND_API char *zend_ini_string_ex(char *name, uint name_length, int orig, zend_b
}
/* }}} */
ZEND_API char *zend_ini_string(char *name, uint name_length, int orig) /* {{{ */
ZEND_API char *zend_ini_string(char *name, zend_size_t name_length, int orig) /* {{{ */
{
zend_bool exists = 1;
char *return_value;
@@ -425,7 +425,7 @@ static void zend_ini_displayer_cb(zend_ini_entry *ini_entry, int type) /* {{{ */
ini_entry->displayer(ini_entry, type);
} else {
char *display_string;
uint display_string_length;
zend_size_t display_string_length;
if (type == ZEND_INI_DISPLAY_ORIG && ini_entry->modified) {
if (ini_entry->orig_value) {
@@ -460,7 +460,8 @@ static void zend_ini_displayer_cb(zend_ini_entry *ini_entry, int type) /* {{{ */
ZEND_INI_DISP(zend_ini_boolean_displayer_cb) /* {{{ */
{
int value, tmp_value_len;
int value;
zend_size_t tmp_value_len;
char *tmp_value;
if (type == ZEND_INI_DISPLAY_ORIG && ini_entry->modified) {
@@ -577,7 +578,7 @@ ZEND_API ZEND_INI_MH(OnUpdateBool) /* {{{ */
ZEND_API ZEND_INI_MH(OnUpdateLong) /* {{{ */
{
long *p;
zend_int_t *p;
#ifndef ZTS
char *base = (char *) mh_arg2;
#else
@@ -586,7 +587,7 @@ ZEND_API ZEND_INI_MH(OnUpdateLong) /* {{{ */
base = (char *) ts_resource(*((int *) mh_arg2));
#endif
p = (long *) (base+(size_t) mh_arg1);
p = (zend_int_t *) (base+(size_t) mh_arg1);
*p = zend_atol(new_value, new_value_length);
return SUCCESS;
@@ -595,7 +596,7 @@ ZEND_API ZEND_INI_MH(OnUpdateLong) /* {{{ */
ZEND_API ZEND_INI_MH(OnUpdateLongGEZero) /* {{{ */
{
long *p, tmp;
zend_int_t *p, tmp;
#ifndef ZTS
char *base = (char *) mh_arg2;
#else
@@ -609,7 +610,7 @@ ZEND_API ZEND_INI_MH(OnUpdateLongGEZero) /* {{{ */
return FAILURE;
}
p = (long *) (base+(size_t) mh_arg1);
p = (zend_int_t *) (base+(size_t) mh_arg1);
*p = tmp;
return SUCCESS;
+15 -15
View File
@@ -45,7 +45,7 @@
# else /* ! (CRAY || __arm) */
# define XtOffset(p_type, field) \
((long) (((char *) (&(((p_type)NULL)->field))) - ((char *) NULL)))
((zend_int_t) (((char *) (&(((p_type)NULL)->field))) - ((char *) NULL)))
# endif /* !CRAY */
@@ -57,24 +57,24 @@
#endif
#define ZEND_INI_MH(name) int name(zend_ini_entry *entry, char *new_value, uint new_value_length, void *mh_arg1, void *mh_arg2, void *mh_arg3, int stage TSRMLS_DC)
#define ZEND_INI_MH(name) int name(zend_ini_entry *entry, char *new_value, zend_size_t new_value_length, void *mh_arg1, void *mh_arg2, void *mh_arg3, int stage TSRMLS_DC)
#define ZEND_INI_DISP(name) void name(zend_ini_entry *ini_entry, int type)
struct _zend_ini_entry {
int module_number;
int modifiable;
char *name;
uint name_length;
zend_size_t name_length;
ZEND_INI_MH((*on_modify));
void *mh_arg1;
void *mh_arg2;
void *mh_arg3;
char *value;
uint value_length;
zend_size_t value_length;
char *orig_value;
uint orig_value_length;
zend_size_t orig_value_length;
int orig_modifiable;
int modified;
@@ -94,17 +94,17 @@ ZEND_API void zend_ini_sort_entries(TSRMLS_D);
ZEND_API int zend_register_ini_entries(const zend_ini_entry *ini_entry, int module_number TSRMLS_DC);
ZEND_API void zend_unregister_ini_entries(int module_number TSRMLS_DC);
ZEND_API void zend_ini_refresh_caches(int stage TSRMLS_DC);
ZEND_API int zend_alter_ini_entry(char *name, uint name_length, char *new_value, uint new_value_length, int modify_type, int stage);
ZEND_API int zend_alter_ini_entry_ex(char *name, uint name_length, char *new_value, uint new_value_length, int modify_type, int stage, int force_change TSRMLS_DC);
ZEND_API int zend_restore_ini_entry(char *name, uint name_length, int stage);
ZEND_API int zend_alter_ini_entry(char *name, zend_size_t name_length, char *new_value, zend_size_t new_value_length, int modify_type, int stage);
ZEND_API int zend_alter_ini_entry_ex(char *name, zend_size_t name_length, char *new_value, zend_size_t new_value_length, int modify_type, int stage, int force_change TSRMLS_DC);
ZEND_API int zend_restore_ini_entry(char *name, zend_size_t name_length, int stage);
ZEND_API void display_ini_entries(zend_module_entry *module);
ZEND_API long zend_ini_long(char *name, uint name_length, int orig);
ZEND_API double zend_ini_double(char *name, uint name_length, int orig);
ZEND_API char *zend_ini_string(char *name, uint name_length, int orig);
ZEND_API char *zend_ini_string_ex(char *name, uint name_length, int orig, zend_bool *exists);
ZEND_API zend_int_t zend_ini_int(char *name, zend_size_t name_length, int orig);
ZEND_API double zend_ini_double(char *name, zend_size_t name_length, int orig);
ZEND_API char *zend_ini_string(char *name, zend_size_t name_length, int orig);
ZEND_API char *zend_ini_string_ex(char *name, zend_size_t name_length, int orig, zend_bool *exists);
ZEND_API int zend_ini_register_displayer(char *name, uint name_length, void (*displayer)(zend_ini_entry *ini_entry, int type));
ZEND_API int zend_ini_register_displayer(char *name, zend_size_t name_length, void (*displayer)(zend_ini_entry *ini_entry, int type));
ZEND_API ZEND_INI_DISP(zend_ini_boolean_displayer_cb);
ZEND_API ZEND_INI_DISP(zend_ini_color_displayer_cb);
@@ -154,12 +154,12 @@ END_EXTERN_C()
ZEND_INI_ENTRY3_EX(name, default_value, modifiable, on_modify, (void *) XtOffsetOf(struct_type, property_name), (void *) &struct_ptr, NULL, zend_ini_boolean_displayer_cb)
#endif
#define INI_INT(name) zend_ini_long((name), sizeof(name), 0)
#define INI_INT(name) zend_ini_int((name), sizeof(name), 0)
#define INI_FLT(name) zend_ini_double((name), sizeof(name), 0)
#define INI_STR(name) zend_ini_string_ex((name), sizeof(name), 0, NULL)
#define INI_BOOL(name) ((zend_bool) INI_INT(name))
#define INI_ORIG_INT(name) zend_ini_long((name), sizeof(name), 1)
#define INI_ORIG_INT(name) zend_ini_int((name), sizeof(name), 1)
#define INI_ORIG_FLT(name) zend_ini_double((name), sizeof(name), 1)
#define INI_ORIG_STR(name) zend_ini_string((name), sizeof(name), 1)
#define INI_ORIG_BOOL(name) ((zend_bool) INI_ORIG_INT(name))
+19 -19
View File
@@ -49,7 +49,7 @@ static void zend_ini_do_op(char type, zval *result, zval *op1, zval *op2)
{
int i_result;
int i_op1, i_op2;
char str_result[MAX_LENGTH_OF_LONG];
char str_result[MAX_LENGTH_OF_ZEND_INT];
i_op1 = atoi(Z_STRVAL_P(op1));
free(Z_STRVAL_P(op1));
@@ -81,10 +81,10 @@ static void zend_ini_do_op(char type, zval *result, zval *op1, zval *op2)
break;
}
Z_STRLEN_P(result) = zend_sprintf(str_result, "%d", i_result);
Z_STRVAL_P(result) = (char *) malloc(Z_STRLEN_P(result)+1);
memcpy(Z_STRVAL_P(result), str_result, Z_STRLEN_P(result));
Z_STRVAL_P(result)[Z_STRLEN_P(result)] = 0;
Z_STRSIZE_P(result) = zend_sprintf(str_result, "%d", i_result);
Z_STRVAL_P(result) = (char *) malloc(Z_STRSIZE_P(result)+1);
memcpy(Z_STRVAL_P(result), str_result, Z_STRSIZE_P(result));
Z_STRVAL_P(result)[Z_STRSIZE_P(result)] = 0;
Z_TYPE_P(result) = IS_STRING;
}
/* }}} */
@@ -95,7 +95,7 @@ static void zend_ini_init_string(zval *result)
{
Z_STRVAL_P(result) = malloc(1);
Z_STRVAL_P(result)[0] = 0;
Z_STRLEN_P(result) = 0;
Z_STRSIZE_P(result) = 0;
Z_TYPE_P(result) = IS_STRING;
}
/* }}} */
@@ -104,12 +104,12 @@ static void zend_ini_init_string(zval *result)
*/
static void zend_ini_add_string(zval *result, zval *op1, zval *op2)
{
int length = Z_STRLEN_P(op1) + Z_STRLEN_P(op2);
zend_size_t length = Z_STRSIZE_P(op1) + Z_STRSIZE_P(op2);
Z_STRVAL_P(result) = (char *) realloc(Z_STRVAL_P(op1), length+1);
memcpy(Z_STRVAL_P(result)+Z_STRLEN_P(op1), Z_STRVAL_P(op2), Z_STRLEN_P(op2));
memcpy(Z_STRVAL_P(result)+Z_STRSIZE_P(op1), Z_STRVAL_P(op2), Z_STRSIZE_P(op2));
Z_STRVAL_P(result)[length] = 0;
Z_STRLEN_P(result) = length;
Z_STRSIZE_P(result) = length;
Z_TYPE_P(result) = IS_STRING;
}
/* }}} */
@@ -121,12 +121,12 @@ static void zend_ini_get_constant(zval *result, zval *name TSRMLS_DC)
zval z_constant;
/* If name contains ':' it is not a constant. Bug #26893. */
if (!memchr(Z_STRVAL_P(name), ':', Z_STRLEN_P(name))
&& zend_get_constant(Z_STRVAL_P(name), Z_STRLEN_P(name), &z_constant TSRMLS_CC)) {
if (!memchr(Z_STRVAL_P(name), ':', Z_STRSIZE_P(name))
&& zend_get_constant(Z_STRVAL_P(name), Z_STRSIZE_P(name), &z_constant TSRMLS_CC)) {
/* z_constant is emalloc()'d */
convert_to_string(&z_constant);
Z_STRVAL_P(result) = zend_strndup(Z_STRVAL(z_constant), Z_STRLEN(z_constant));
Z_STRLEN_P(result) = Z_STRLEN(z_constant);
Z_STRVAL_P(result) = zend_strndup(Z_STRVAL(z_constant), Z_STRSIZE(z_constant));
Z_STRSIZE_P(result) = Z_STRSIZE(z_constant);
Z_TYPE_P(result) = Z_TYPE(z_constant);
zval_dtor(&z_constant);
free(Z_STRVAL_P(name));
@@ -144,14 +144,14 @@ static void zend_ini_get_var(zval *result, zval *name TSRMLS_DC)
char *envvar;
/* Fetch configuration option value */
if (zend_get_configuration_directive(Z_STRVAL_P(name), Z_STRLEN_P(name)+1, &curval) == SUCCESS) {
Z_STRVAL_P(result) = zend_strndup(Z_STRVAL(curval), Z_STRLEN(curval));
Z_STRLEN_P(result) = Z_STRLEN(curval);
if (zend_get_configuration_directive(Z_STRVAL_P(name), Z_STRSIZE_P(name)+1, &curval) == SUCCESS) {
Z_STRVAL_P(result) = zend_strndup(Z_STRVAL(curval), Z_STRSIZE(curval));
Z_STRSIZE_P(result) = Z_STRSIZE(curval);
/* ..or if not found, try ENV */
} else if ((envvar = zend_getenv(Z_STRVAL_P(name), Z_STRLEN_P(name) TSRMLS_CC)) != NULL ||
} else if ((envvar = zend_getenv(Z_STRVAL_P(name), Z_STRSIZE_P(name) TSRMLS_CC)) != NULL ||
(envvar = getenv(Z_STRVAL_P(name))) != NULL) {
Z_STRVAL_P(result) = strdup(envvar);
Z_STRLEN_P(result) = strlen(envvar);
Z_STRSIZE_P(result) = strlen(envvar);
} else {
zend_ini_init_string(result);
}
@@ -163,7 +163,7 @@ static void zend_ini_get_var(zval *result, zval *name TSRMLS_DC)
static void ini_error(char *msg)
{
char *error_buf;
int error_buf_len;
zend_size_t error_buf_len;
char *currently_parsed_filename;
TSRMLS_FETCH();
+5 -5
View File
@@ -57,7 +57,7 @@
#define yytext ((char*)SCNG(yy_text))
#define yyleng SCNG(yy_leng)
#define yyless(x) do { YYCURSOR = (unsigned char*)yytext + x; \
yyleng = (unsigned int)x; } while(0)
yyleng = (zend_size_t)x; } while(0)
/* #define yymore() goto yymore_restart */
@@ -135,7 +135,7 @@ ZEND_API zend_ini_scanner_globals ini_scanner_globals;
#define zend_ini_copy_value(retval, str, len) { \
Z_STRVAL_P(retval) = zend_strndup(str, len); \
Z_STRLEN_P(retval) = len; \
Z_STRSIZE_P(retval) = len; \
Z_TYPE_P(retval) = IS_STRING; \
}
@@ -263,7 +263,7 @@ int zend_ini_prepare_string_for_scanning(char *str, int scanner_mode TSRMLS_DC)
/* {{{ zend_ini_escape_string()
*/
static void zend_ini_escape_string(zval *lval, char *str, int len, char quote_type TSRMLS_DC)
static void zend_ini_escape_string(zval *lval, char *str, zend_size_t len, char quote_type TSRMLS_DC)
{
register char *s, *t;
char *end;
@@ -272,7 +272,7 @@ static void zend_ini_escape_string(zval *lval, char *str, int len, char quote_ty
/* convert escape sequences */
s = t = Z_STRVAL_P(lval);
end = s + Z_STRLEN_P(lval);
end = s + Z_STRSIZE_P(lval);
while (s < end) {
if (*s == '\\') {
@@ -291,7 +291,7 @@ static void zend_ini_escape_string(zval *lval, char *str, int len, char quote_ty
case '\\':
case '$':
*t++ = *s;
Z_STRLEN_P(lval)--;
Z_STRSIZE_P(lval)--;
break;
default:
*t++ = '\\';
Loaded 100 of 1713 files, more files were not shown because too many files have changed in this diff. Show more