Compare commits

..
Author SHA1 Message Date
Bob Weinand f66905dad7 Fix weird asm instruction order with gcc by marking as volatile in phpdbg 2015-07-13 14:11:39 +02:00
Bob Weinand 79e6dba040 Preserve return value in zend_vm_call_opcode_handler with global opline/ex registers enabled 2015-07-13 13:45:27 +02:00
Nikita Popov a49ce7bb91 Don't return T_ERROR from token_get_all()
This turned out to be rather inconvenient after all. Instead just
return the same output we did on PHP 5. If people want to have an
error, use TOKEN_PARSE.
2015-07-09 23:02:21 +02:00
Anatol Belski fc5c7e633b refix the NEWS 2015-07-09 22:56:11 +02:00
Dmitry Stogov 8c3f701eeb Fixed exception catching on break/continue
Fixed "finaly" handling on exception in "return" statement
2015-07-09 23:20:50 +03:00
Nikita Popov 788c4c852d Fix posix_setrlimit segfault 2015-07-09 20:40:07 +02:00
Bob Weinand cc876c04b4 Fix too early terminated temporary range with break/cont/goto
I have no crashing or leaking reproduce script, only valgrind invalid reads for that one; hence no phpt here
2015-07-09 20:07:57 +02:00
Ferenc Kovacs 9591b1cc3c Merge branch 'PHP-5.6'
* PHP-5.6:
  move the use-after-free fixes to 5.6.11
2015-07-09 20:02:18 +02:00
Ferenc Kovacs ab66152c68 move the use-after-free fixes to 5.6.11 2015-07-09 20:01:37 +02:00
Dmitry Stogov 17c5315bdf Fixed exception habdling on "return" statement.
Such exceptions shouldn't be caught in the same function.
2015-07-09 20:47:25 +03:00
Nikita Popov d91aad5966 Fix bug #69430
Don't throw from token_get_all() unless TOKEN_PARSE is used. Errors
are reported as T_ERROR tokens.
2015-07-09 19:11:48 +02:00
Nikita Popov 8abc3022b0 Update token_get_all() arginfo 2015-07-09 18:19:12 +02:00
Bob Weinand f5db5a558d Add test guaranteeing that loop vars are only freed after potential return type exceptions 2015-07-09 16:54:41 +02:00
Dmitry Stogov 54f367ee2a Fixed invalid live-range detection 2015-07-09 17:38:29 +03:00
Dmitry Stogov b77fa94cf9 Disable opcache.fast_shutdown if USE_ZEND_ALLOC=0 2015-07-09 12:19:51 +03:00
Dmitry Stogov 225bb70498 Added missing API functions 2015-07-09 12:19:30 +03:00
Xinchen Hui 0de0c4ace1 Fixed Bug #70032 (make_http_soap_request calls zend_hash_get_current_key_ex(,,,NULL)) 2015-07-09 16:36:31 +08:00
Magnus Määttä a55ca9a8d1 Fix posix_setrlimit() to use int as values instead of strings.
Add constant for unlimited (POSIX_RLIMIT_INFINITY).
2015-07-09 00:04:13 +02:00
Magnus Määttä 963d906aff Add posix_setrlimit() FR #54603 2015-07-08 22:12:07 +02:00
Dmitry Stogov 301ee26568 Fixed situation, when CHECH_EXCEPTION() might change value of "opline" variable and the following "opline" useages would access elements of different opcode. That might lead to unpredictable behavior. (Only PHP-7 with GCC global register variables was affected).
CHECK_EXCEPTION() macro is removed. ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTIO() should be used instead. It's equivalent to old CHECK_EXCEPTION() + ZEND_VM_NEXT_OPCODE().
As a side effect, this also slightly improved performnce of builds with GCC >= 4.8.
2015-07-08 18:33:58 +03:00
Julien Pauli 993a658ada Merge branch 'PHP-5.6'
* PHP-5.6:
  5.5.27 release
2015-07-08 17:00:47 +02:00
Julien Pauli b1a9b89773 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  5.5.27 release

Conflicts:
	main/php_version.h
2015-07-08 17:00:29 +02:00
Julien Pauli 34b624f122 5.5.27 release 2015-07-08 16:59:44 +02:00
Bob Weinand 3ccc17cee5 Working fix for ctrl+d on readline/libedit 2015-07-08 16:54:41 +02:00
Xinchen Hui 5460929077 Merge branch 'PHP-5.6' 2015-07-08 22:35:10 +08:00
Xinchen Hui c75d245e82 Revert "Fixed invalid read"
I must be confused while switching from master to 5.6

This reverts commit 94957a7091.
2015-07-08 22:34:27 +08:00
Xinchen Hui ffccf19fa6 Merge branch 'master' of git.php.net:php-src 2015-07-08 19:31:36 +08:00
Xinchen Hui da333bfbd8 Fixed bug #70018 (exec does not strip all whitespace)
Merge branch 'PHP-5.6'

Conflicts:
	ext/standard/exec.c
2015-07-08 19:30:58 +08:00
Anatol Belski dd1f0940fe fix NEWS 2015-07-08 13:27:34 +02:00
Xinchen Hui 94957a7091 Fixed invalid read 2015-07-08 19:19:37 +08:00
Xinchen Hui f9dc60f36f Merge branch 'master' of git.php.net:php-src 2015-07-08 18:25:04 +08:00
Xinchen Hui b9e48073b3 Make sure fast_call_var is initialized properly 2015-07-08 18:24:27 +08:00
Nikita Popov ed14019e8c Add assertion in liveliness computation
Assert that a live-range does not start, while one for the same
variable is already active.

To satisfy this constraint, explicitly exclude writes from JMP_SET
and COALESCE. They were previously also handled correctly, because
their result variable was only killed after the second write to it
after the false branch. This just makes it more explicit.
2015-07-08 12:00:39 +02:00
Xinchen Hui 249915f938 Add comment to explaining the new check 2015-07-08 17:44:54 +08:00
Xinchen Hui 3b5876916d Remove outdate comment 2015-07-08 17:42:50 +08:00
Xinchen Hui c6037bd3af Fixed bug #70012 (Exception lost with nested finally block) 2015-07-08 17:15:09 +08:00
Xinchen Hui 6154fc77be Merge branch 'PHP-5.6' 2015-07-08 17:14:32 +08:00
Xinchen Hui ca30d5bf39 Fixed bug #70012 (Exception lost with nested finally block) 2015-07-08 17:14:19 +08:00
Aaron Piotrowski 1c7619491e Fix failing tests from exception code changes 2015-07-07 23:14:05 -05:00
Kalle Sommer Nielsen b84363f7fa PHP 7.0.0 Beta 2 NEWS 2015-07-08 02:37:59 +02:00
Nikita Popov 1852f538b9 ZEND_SEPARATE reuses temporaries 2015-07-08 00:13:23 +02:00
Aaron Piotrowski a1a83bf5f0 Switch code on thrown TypeError and ParseError to 0, update related tests 2015-07-07 16:54:39 -05:00
Christoph M. Becker dbadf447b2 Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed typo in test for bug #66985
2015-07-07 23:39:18 +02:00
Christoph M. Becker e68b5252a2 fixed typo in test for bug #66985 2015-07-07 23:35:28 +02:00
Bob Weinand 7a8ea0f60d Properly exit on EOF on stdin in readline mode 2015-07-07 22:45:34 +02:00
Nikita Popov b3a4c05071 Remove loop_var_stack
Instead add a loop_var member to brk_cont_element. Now that
brk_cont is compile-time the distinction is no longer necessary.

Also drops brk_cont.start, check the loop_var op_type instead.
2015-07-07 20:55:12 +02:00
Rasmus Lerdorf 40ca0f1927 SQLite3::open/__construct has 2 optional args 2015-07-07 11:53:07 -07:00
Stanislav Malyshev a5e7075d79 Merge branch 'PHP-5.6'
* PHP-5.6:
  Better fix for bug #69958
  update news
  Fix bug #69669 (mysqlnd is vulnerable to BACKRONYM)
  Fix bug #69923 - Buffer overflow and stack smashing error in phar_fix_filepath
  Fix bug #69958 - Segfault in Phar::convertToData on invalid file
  Better fix for bug #69958
  Better fix for bug #69958
  update news
  Fix bug #69669 (mysqlnd is vulnerable to BACKRONYM)
  Fix bug #69923 - Buffer overflow and stack smashing error in phar_fix_filepath
  Fix bug #69958 - Segfault in Phar::convertToData on invalid file

Conflicts:
	ext/mysqlnd/mysqlnd.c
	ext/phar/phar_object.c
2015-07-07 10:19:20 -07:00
Stanislav Malyshev 2d0771d66c Better fix for bug #69958 2015-07-07 10:18:22 -07:00
Stanislav Malyshev 3bee16a70a Better fix for bug #69958 2015-07-07 10:17:54 -07:00
Stanislav Malyshev d8aa5675ad Fix bug #69669 (mysqlnd is vulnerable to BACKRONYM) 2015-07-07 10:16:54 -07:00
Stanislav Malyshev 12ff95574b Fix bug #69923 - Buffer overflow and stack smashing error in phar_fix_filepath 2015-07-07 10:15:41 -07:00
Stanislav Malyshev 00f177a5ed Fix bug #69958 - Segfault in Phar::convertToData on invalid file 2015-07-07 10:15:41 -07:00
Stanislav Malyshev 6c884e8e84 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Better fix for bug #69958
  update news
  Fix bug #69669 (mysqlnd is vulnerable to BACKRONYM)
  Fix bug #69923 - Buffer overflow and stack smashing error in phar_fix_filepath
  Fix bug #69958 - Segfault in Phar::convertToData on invalid file
  Better fix for bug #69958
  Better fix for bug #69958
  update news
  Fix bug #69669 (mysqlnd is vulnerable to BACKRONYM)
  Fix bug #69923 - Buffer overflow and stack smashing error in phar_fix_filepath
  Fix bug #69958 - Segfault in Phar::convertToData on invalid file

Conflicts:
	ext/phar/phar_object.c
2015-07-07 10:12:51 -07:00
Aaron Piotrowski 5df893ce3c Use NULL where possible for exception class
Matches usage of zend_throw_exception()/zend_throw_exception_ex().
2015-07-07 12:10:55 -05:00
Aaron Piotrowski 29c3cd4448 Allow NULL for exception_ce 2015-07-07 12:10:55 -05:00
Stanislav Malyshev b4b082e63e Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Better fix for bug #69958
  update news
  Fix bug #69669 (mysqlnd is vulnerable to BACKRONYM)
  Fix bug #69923 - Buffer overflow and stack smashing error in phar_fix_filepath
  Fix bug #69958 - Segfault in Phar::convertToData on invalid file

Conflicts:
	ext/mysqlnd/mysqlnd.c
2015-07-07 10:09:34 -07:00
Stanislav Malyshev 545eddba93 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  add missing second argument for ucfirst to the proto
2015-07-07 10:08:37 -07:00
Anatol Belski 54bcc6280c Merge branch 'PHP-5.6'
* PHP-5.6:
  fix C89 compat
2015-07-07 18:40:16 +02:00
Anatol Belski c0142de470 fix C89 compat 2015-07-07 18:39:33 +02:00
Stanislav Malyshev 885edfef0a Better fix for bug #69958 2015-07-07 09:38:31 -07:00
Stanislav Malyshev c8157619ef update news 2015-07-07 09:38:31 -07:00
Stanislav Malyshev 97aa752fee Fix bug #69669 (mysqlnd is vulnerable to BACKRONYM) 2015-07-07 09:38:31 -07:00
Stanislav Malyshev 6dedeb40db Fix bug #69923 - Buffer overflow and stack smashing error in phar_fix_filepath 2015-07-07 09:38:31 -07:00
Stanislav Malyshev bf58162ddf Fix bug #69958 - Segfault in Phar::convertToData on invalid file 2015-07-07 09:38:30 -07:00
Kalle Sommer Nielsen fe842a8510 fix C89 compat 2015-07-07 18:26:14 +02:00
Anatol Belski aaee58ecc4 added info about the user space stream context for pipes 2015-07-07 17:11:24 +02:00
Anatol Belski 4bf70f4d98 mention pcre.jit in the supplied php.ini-* 2015-07-07 16:15:56 +02:00
Julien Pauli bcd6bc46f4 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix test related to c22da81

Conflicts:
	ext/standard/tests/general_functions/bug41037.phpt
2015-07-07 16:03:37 +02:00
Julien Pauli 4c34d57414 Fix test related to c22da81 2015-07-07 16:01:44 +02:00
Ferenc Kovacs df499b9108 Merge branch 'PHP-5.6'
* PHP-5.6:
  add missing second argument for ucfirst to the proto
2015-07-07 15:50:02 +02:00
Ferenc Kovacs bdb9c0da86 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  add missing second argument for ucfirst to the proto
2015-07-07 15:49:44 +02:00
Ferenc Kovacs b6f5cb11a4 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add missing second argument for ucfirst to the proto
2015-07-07 15:49:16 +02:00
Ferenc Kovacs 29533ae528 add missing second argument for ucfirst to the proto 2015-07-07 15:48:55 +02:00
Xinchen Hui 015d20ab83 Merge branch 'master' of git.php.net:php-src 2015-07-07 21:40:46 +08:00
Xinchen Hui 9ae892ec93 Update NEWs 2015-07-07 21:38:37 +08:00
Xinchen Hui ca1ba39102 Merge branch 'PHP-5.6'
Conflicts:
	ext/sqlite3/sqlite3.c
2015-07-07 21:38:24 +08:00
Xinchen Hui 26471eb69c Fixed bug #69972 (Use-after-free vulnerability in sqlite3SafetyCheckSickOrOk()) 2015-07-07 21:37:35 +08:00
Anatol Belski a94b3b8e64 updated NEWS 2015-07-07 15:34:37 +02:00
Xinchen Hui 5bd315657c Update NEWs 2015-07-07 21:29:20 +08:00
Xinchen Hui fff374feba Merge branch 'PHP-5.6'
Conflicts:
	ext/spl/spl_iterators.c
2015-07-07 21:28:51 +08:00
Xinchen Hui e41f600365 Fixed bug #69970 (Use-after-free vulnerability in spl_recursive_it_move_forward_ex()) 2015-07-07 21:25:28 +08:00
Julien Pauli dfb0c6363f Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed double ZEND_TICKS opcode generation for declare()

Conflicts:
	Zend/zend_compile.c
2015-07-07 15:03:58 +02:00
Julien Pauli c22da81b71 Fixed double ZEND_TICKS opcode generation for declare() 2015-07-07 14:56:05 +02:00
Dmitry Stogov 404dc93d35 Tuned off dubugging of live ranges 2015-07-07 15:43:14 +03:00
Dmitry Stogov 5ee8413259 Fixed bug #62210 (Exceptions can leak temporary variables. As a part of the fix serious refactoring was done. op_array->brk_cont_array was removed, and replaced with more general and speed efficient op_array->T_liveliness. ZEND_GOTO opcode is always replaced by ZEND_JMP at compile time). (Bob, Dmitry, Laruence)
Squashed commit of the following:

commit 38e22106d4bdcc829dd2b64be1d3c6cdc089f3ed
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Jul 7 15:12:19 2015 +0300

    Added NEWS entry

commit 0a355935bfb10b5a4c893f4db9496ea8abbcf71b
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Jul 7 15:06:32 2015 +0300

    Inline function, to eliminate repeatable checks

commit d937584f3aef0baae6001377b61fd700b6f36e14
Merge: 0341626 32677f5
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Jul 7 14:35:49 2015 +0300

    Merge branch 'master' into temporary_cleaning

    * master:
      Fixed bug #70006 (cli - function with default arg = STDOUT crash output).
      Fix x86 build
      Fixed use after free on closure_call_leak_with_exception.phpt
      Fixed test

commit 0341626ea94a5e474c660732d33884460847d5e7
Merge: 74869fa dec35de
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Jul 7 12:00:53 2015 +0300

    Merge branch 'temporary_cleaning' of https://github.com/laruence/php-src into temporary_cleaning

    * 'temporary_cleaning' of https://github.com/laruence/php-src:
      Fixed checkpoint get
      Fixed crash of invalid pointer derefer
      cleanup

commit 74869fa67375b8daf772ac30b6b936fd2a2132c6
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Jul 7 11:45:34 2015 +0300

    Fixed wrong GOTO resolution

commit dec35ded3294e3022e88a623188c3d1d71381675
Author: Xinchen Hui <laruence@gmail.com>
Date:   Tue Jul 7 15:58:49 2015 +0800

    Fixed checkpoint get

commit b0f419540ad24c44810c9b05da046965618ffc65
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Jul 7 10:47:11 2015 +0300

    Fixed crash of invalid pointer derefer (laruence)

commit 7a428d98ca2899c5933914caa0cd17b4126e952c
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Jul 7 10:35:47 2015 +0300

    Fixed identation

commit 9c3a4dce9ce02034d19d28182aa9c1298d528daf
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Jul 7 10:33:52 2015 +0300

    Fixed invalid size

commit 653abc670b2a1f453b0fc3fc4a9eca919ee870cc
Author: Xinchen Hui <laruence@gmail.com>
Date:   Tue Jul 7 11:29:14 2015 +0800

    Fixed crash of invalid pointer derefer

commit e04500ceda606ac4f364d03bcd562327bdc74eee
Author: Xinchen Hui <laruence@gmail.com>
Date:   Tue Jul 7 11:28:26 2015 +0800

    cleanup

commit 34183e1687681038e77b650078927b35ee84e933
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Jul 7 04:49:46 2015 +0300

    op_array->T_liveliness compression

commit 2f6ad845795a08c3d7ac219e9c42950565b20394
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Jul 7 04:44:44 2015 +0300

    White spaces

commit be83f115a3f82a548c8d377c66574de5e5187410
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Jul 7 04:42:26 2015 +0300

    Identation

commit 1f5084b99038c374ac012b017c4d1652bb5d4222
Merge: 91b620d 1adf3df
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Jul 7 04:41:54 2015 +0300

    Merge branch 'master' into temporary_cleaning

    * master:
      Throw TypeError for invalid callback
      Fix crash when exception occurs during nested rope
      Fix crash when exception is thrown during ROPE_END
      Small cleanup in ternary compilation
      move the define to the right place
      fix ext/ldap build
      Rectify information about invalid shift warning being now ArithmeticError

commit 91b620d684c5a2296774432d5d0ff8f5d14397d6
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Jul 7 04:32:04 2015 +0300

    Replace GOTO by FREE/FE_FREE and JMP at compile time

commit 7052e5697918fab83d2975977c3392f7188fbc87
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Jul 7 02:25:08 2015 +0300

    Use zend_regenerate_var_liveliness_info() to regenerate information after pass two.

commit ae72b0dc6797815a846b8f95abccb36367422d27
Merge: a81c4bb a919fe8
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Mon Jul 6 21:02:34 2015 +0300

    Merge branch 'master' into temporary_cleaning

    * master:
      Do not display EXT_TYPE_UNUSED in phpdbg opcodes
      Run debug build with opcache on travis

commit a81c4bb8c6f1ba8124a5a7636694480ff0f1328c
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Mon Jul 6 20:59:34 2015 +0300

    Improved algorithm. It's actually the same algorithm with second loop removed and simpler temporary data structures. The only difference may be in "re-defined" vatriable handling. Now live-range in that case started from the seconnd definition (this must be more safe).

commit 9a16810f7a7c10373603c5250d985616acf45e97
Merge: bbfbe47 001ecd3
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Mon Jul 6 17:57:45 2015 +0300

    Merge branch 'master' into temporary_cleaning

    * master:
      Simplify TMP var number decoding (without HashTable)

commit bbfbe470c865cb8b3cae8bf6518e6d06af525522
Merge: 0bda4ab 436b01e
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Mon Jul 6 17:02:01 2015 +0300

    Merge branch 'master' into temporary_cleaning

    * master:
      Avoid dangerous optimization
      Fixed JMPZNZ instruction printing
      Attempt at falling back on ldap_find_control for Mac OS

commit 0bda4abea7ba0a51c2ec125edb547645d0329792
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Mon Jul 6 16:05:33 2015 +0300

    Fixed live-range construction for OP_DATA opcode
    Added comments about algorithm assumtions

commit 521ad9df98fdf1dd8b7c212799ddeb1a84483e6f
Merge: 4398dab a09dcb0
Author: Bob Weinand <bobwei9@hotmail.com>
Date:   Mon Jul 6 14:54:15 2015 +0200

    Merge branch 'master' of https://github.com/php/php-src into temporary_cleaning

commit 4398dab82f9a5ce64df55b24988ce7d31e24074f
Author: Bob Weinand <bobwei9@hotmail.com>
Date:   Mon Jul 6 13:51:27 2015 +0200

    Add a few phpt tests related to temporary cleaning

commit 739656f83ff5b570bb311d2c7cb2d72380a3c759
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Mon Jul 6 14:28:49 2015 +0300

    Fixed Zend/tests/foreach_004.phpt failure (FE_FETCH shouldn't be included into TMP vatriablr live range)

commit 3df462a2bcf5fa8f9244ea299178152a5d436277
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Mon Jul 6 13:41:02 2015 +0300

    Improve data layout (reduce the op_array structure size on 64-bit systems)

commit 883b73c56e6dab6489ae4cda2c1331b53a995586
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Mon Jul 6 13:28:45 2015 +0300

    Removed op_array->brk_cont_array

commit ae5e58b59843513505e84e396c1446ac35cb1b94
Author: Bob Weinand <bobwei9@hotmail.com>
Date:   Mon Jul 6 04:22:58 2015 +0200

    Fix bug with brk_cont variable free / free loop vars via temporary liveliness info

commit b4223ca62771e1003c9ab778a09a177ad71e6d57
Author: Bob Weinand <bobwei9@hotmail.com>
Date:   Mon Jul 6 04:07:07 2015 +0200

    Fix bugs / cleanup fixes

commit ea33189d220c7fc0884848571635abe3cddd2f4d
Author: Xinchen Hui <laruence@gmail.com>
Date:   Sun Jul 5 20:58:38 2015 +0800

    Removed useless TsTop

commit 1dbb007e4addba9ac3bfc227db27a651cbcf5ede
Merge: 550bbf8 3a8af24
Author: Xinchen Hui <laruence@gmail.com>
Date:   Sat Jul 4 15:06:44 2015 +0800

    Merge branch 'temporary_cleaning' of https://github.com/dstogov/php-src into temporary_cleaning

commit 3a8af245290ceb507108340831254672f24022fa
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Jul 3 16:15:36 2015 +0300

    More exceptions from regular liveliness analyses (with explanation in comments).
    Mark old "unexplained" exceptions with ???.

commit ba721efa2cbd2136668fec956ef3b034ac1a29d6
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Jul 3 14:16:09 2015 +0300

    Print list of live temp variables (at least for internal debugging)

commit 8d1f88fe91e62b4333703c58b871d85b66fb7b70
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Jul 3 13:31:56 2015 +0300

    Use op_array->T_liveliness to free incomplete ropes and restore error_reporting level on exception

commit 80c1d0d779e6e9609a211907838f3727aa7b301a
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Jul 3 11:05:39 2015 +0300

    Don't keep empty T_liveliness

commit 501ae8aaac0a92368b50e9f342b04d7334d263f6
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Thu Jul 2 22:31:48 2015 +0300

    Reverted changes to Zend/zend_arena.h.
    Reuse CG(arena) instead of creating a new one.

commit a4fce36907147df5ac1af78b44135e3f07c1844c
Merge: 6ff7246 fd0fcce
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Thu Jul 2 22:01:42 2015 +0300

    Merge branch 'temporary_cleaning' of github.com:bwoebi/php-src into temporary_cleaning

    * 'temporary_cleaning' of github.com:bwoebi/php-src:
      Fix remaining issues with compacted temporaries
      Fix regression from last commit (+1 ?!)
      Fix off-by-one (opcache may remove last ZEND_RETURN)
      Speed algorithm up, more fail safety when reusing temporaries
      Dumb bug in opcode.c (forgot to update Ts[i])
      Fix opcache support
      Exempt ROPE temporaries from freeing
      Hmm, we need temporary info for all the opcodes
      Add opcache support for cleaning in optimization step (Opcache seems to have a few unrelated issues which blow up together with that patch)
      Add proper temporary cleaning upon frame abortion
      Fix arena on small sizes (size < sizeof(zend_arena))

commit fd0fcce81177717f3a05ac87192b5ed05eead0a1
Author: Bob Weinand <bobwei9@hotmail.com>
Date:   Thu Jul 2 20:00:33 2015 +0200

    Fix remaining issues with compacted temporaries

commit 427dc58bbb93022d1c2077f874afcdb9dd82d5c5
Author: Bob Weinand <bobwei9@hotmail.com>
Date:   Wed Jul 1 22:49:12 2015 +0200

    Fix regression from last commit (+1 ?!)

commit 1adcf56a6e9f09e7ad06331d4d6280035b17a7d1
Author: Bob Weinand <bobwei9@hotmail.com>
Date:   Wed Jul 1 22:17:07 2015 +0200

    Fix off-by-one (opcache may remove last ZEND_RETURN)

commit 25b231b7841fa4078c65976cabdd843845a6cbe6
Author: Bob Weinand <bobwei9@hotmail.com>
Date:   Wed Jul 1 20:59:24 2015 +0200

    Speed algorithm up, more fail safety when reusing temporaries

commit 22d9d05350e35d180018d0bccbad6f173cb4797d
Author: Bob Weinand <bobwei9@hotmail.com>
Date:   Wed Jul 1 16:48:46 2015 +0200

    Dumb bug in opcode.c (forgot to update Ts[i])

commit 6538269bfa5bcbad34fc2f051b0fd5e4ebf2ff00
Author: Bob Weinand <bobwei9@hotmail.com>
Date:   Wed Jul 1 13:05:52 2015 +0200

    Fix opcache support

commit 333a7c4a8813a45dc79ce55b8e9c0a0b98671e13
Author: Bob Weinand <bobwei9@hotmail.com>
Date:   Sat Jun 27 22:40:21 2015 +0200

    Exempt ROPE temporaries from freeing

commit 02585f77085427baea48448c134a96c542af3337
Author: Bob Weinand <bobwei9@hotmail.com>
Date:   Fri Jun 26 16:20:55 2015 +0200

    Hmm, we need temporary info for all the opcodes

commit cbcaedbd78199897e5cacffd700b706f21590abf
Author: Bob Weinand <bobwei9@hotmail.com>
Date:   Fri Jun 26 01:04:09 2015 +0200

    Add opcache support for cleaning in optimization step
    (Opcache seems to have a few unrelated issues which blow up together with that patch)

commit fef649f4067823a1f96f85340cf715e5877310bc
Author: Bob Weinand <bobwei9@hotmail.com>
Date:   Fri Jun 26 01:02:27 2015 +0200

    Add proper temporary cleaning upon frame abortion

commit 1cec2e7271b789b84601f8acf385950af1bb0c7c
Author: Bob Weinand <bobwei9@hotmail.com>
Date:   Thu Jun 25 23:33:21 2015 +0200

    Fix arena on small sizes (size < sizeof(zend_arena))
2015-07-07 15:41:12 +03:00
Xinchen Hui 32677f568b Merge branch 'master' of git.php.net:php-src 2015-07-07 19:21:54 +08:00
Xinchen Hui 7af4e6d02d Fixed bug #70006 (cli - function with default arg = STDOUT crash output). 2015-07-07 19:21:02 +08:00
Kalle Sommer Nielsen 2bd4b18c24 Merge branch 'master' of https://git.php.net/push/php-src 2015-07-07 12:43:58 +02:00
Kalle Sommer Nielsen 0ac2371b5a Fix x86 build 2015-07-07 12:41:05 +02:00
Xinchen Hui 333528089e Fixed use after free on closure_call_leak_with_exception.phpt 2015-07-07 18:19:57 +08:00
Dmitry Stogov 636c16b186 Fixed test 2015-07-07 10:14:37 +03:00
Stanislav Malyshev ed84af4b88 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Better fix for bug #69958
2015-07-07 00:01:42 -07:00
Stanislav Malyshev eda31f57fb Better fix for bug #69958 2015-07-07 00:01:26 -07:00
Stanislav Malyshev 09de64a58d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Better fix for bug #69958
2015-07-06 23:03:05 -07:00
Stanislav Malyshev 61b0b80388 Better fix for bug #69958 2015-07-06 22:58:28 -07:00
Stanislav Malyshev 485b7c6981 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  update news
2015-07-06 21:53:02 -07:00
Stanislav Malyshev c938d2f537 update news 2015-07-06 21:52:56 -07:00
Stanislav Malyshev 303d97feda Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #69669 (mysqlnd is vulnerable to BACKRONYM)
  Fix bug #69923 - Buffer overflow and stack smashing error in phar_fix_filepath
  Fix bug #69958 - Segfault in Phar::convertToData on invalid file

Conflicts:
	ext/mysqlnd/mysqlnd.c
2015-07-06 21:52:49 -07:00
Stanislav Malyshev 0d2f147d80 Fix bug #69669 (mysqlnd is vulnerable to BACKRONYM) 2015-07-06 21:50:01 -07:00
Aaron Piotrowski 1adf3df81e Throw TypeError for invalid callback
Matches behavior of zend_internal_type_error() if E_ERROR is passed to
zend_wrong_callback_error().
2015-07-06 15:03:35 -05:00
Nikita Popov 724051e3bd Fix crash when exception occurs during nested rope
Adds extra condition that the rope var of INIT/ADD must match the
one one END.
2015-07-06 20:53:54 +02:00
Nikita Popov 89ce8d28de Fix crash when exception is thrown during ROPE_END
The CHECK_EXCEPTION() was done at a point where the old opline is
still used, thus redirecting the write to the result var into
EX(call) instead.

Handling the exception in-place to avoid leaking result.
2015-07-06 20:15:45 +02:00
Nikita Popov f3498783df Small cleanup in ternary compilation 2015-07-06 20:15:45 +02:00
Anatol Belski 73c0fc0df4 move the define to the right place
thanks Kalle )
2015-07-06 19:43:35 +02:00
Anatol Belski cb2d33f3e2 fix ext/ldap build 2015-07-06 19:35:29 +02:00
Bob Weinand 23242fd61d Rectify information about invalid shift warning being now ArithmeticError 2015-07-06 18:09:36 +02:00
Bob Weinand a919fe8606 Do not display EXT_TYPE_UNUSED in phpdbg opcodes 2015-07-06 18:05:03 +02:00
Bob Weinand b3ab7c13dc Run debug build with opcache on travis 2015-07-06 17:41:24 +02:00
Dmitry Stogov 001ecd3198 Simplify TMP var number decoding (without HashTable) 2015-07-06 17:56:48 +03:00
Dmitry Stogov 436b01e379 Avoid dangerous optimization 2015-07-06 16:52:38 +03:00
Dmitry Stogov 1a9f4f90da Fixed JMPZNZ instruction printing 2015-07-06 16:30:50 +03:00
Côme Bernigaud da6e286dbb Merge branch 'PHP-5.6'
* PHP-5.6:
  Attempt at falling back on ldap_find_control for Mac OS
2015-07-06 14:56:20 +02:00
Côme Bernigaud 022068342b Attempt at falling back on ldap_find_control for Mac OS 2015-07-06 14:54:04 +02:00
Côme Bernigaud a09dcb0e13 Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated README, added test to create LDAP base if missing and ease tests
2015-07-06 14:28:01 +02:00
Anatol Belski 535b2cc02b update NEWS about #69900
backport for 5.6 to go
2015-07-06 14:27:17 +02:00
Côme Bernigaud 42f7e4c044 Updated README, added test to create LDAP base if missing and ease tests 2015-07-06 14:26:49 +02:00
Dmitry Stogov 2f7b178fac Fixed test (shift operators throw Error) 2015-07-06 12:28:14 +03:00
Dmitry Stogov 7a1a499377 Fixed return value 2015-07-06 11:25:19 +03:00
Xinchen Hui 5e7fd530ce Merge branch 'signed_char' of https://github.com/antonblanchard/php-src 2015-07-06 15:36:55 +08:00
Xinchen Hui 84e07b08bd Reorder the conditions 2015-07-06 15:24:51 +08:00
Xinchen Hui ce550cefde Fixed segfault while with generating ext info 2015-07-06 15:22:40 +08:00
Anton Blanchard 275009d0bd http parser code assumes char is signed
A char can be either signed or unsigned, and on PowerPC and ARM it is
unsigned. The following code will always be false on these architectures:

        if (c == -1) goto error;
2015-07-06 10:13:00 +10:00
Anatol Belski a97f764472 bring back the division by zero warning 2015-07-05 20:18:17 +02:00
Stanislav Malyshev b9d3540304 Merge branch 'pull-request/1368'
* pull-request/1368:
  moved function warning test to money_format_error.phpt file
2015-07-05 01:24:35 -07:00
Stanislav Malyshev 013d1296d6 Merge branch 'PHP-5.6'
* PHP-5.6:
  Cleaned white spaces in PHP_INI definition of phar
2015-07-05 01:10:29 -07:00
Dominic b27bcd90b3 Cleaned white spaces in PHP_INI definition of phar
Removes unnecessary white spaces.
2015-07-05 01:10:22 -07:00
Stanislav Malyshev 9b6c3d19c5 Merge branch 'pull-request/1351'
* pull-request/1351:
  Cleaned white spaces in PHP_INI definition of phar
2015-07-05 01:04:22 -07:00
Stanislav Malyshev 64eb8338b1 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix typo, see #68476
2015-07-05 01:01:27 -07:00
Stanislav Malyshev 04ca04f830 Merge branch 'pull-request/1324' into PHP-5.6
* pull-request/1324:
  fix typo, see #68476
2015-07-05 01:01:00 -07:00
Stanislav Malyshev 3e88d610e5 Fix bug #69923 - Buffer overflow and stack smashing error in phar_fix_filepath 2015-07-04 23:47:48 -07:00
Stanislav Malyshev 452d30cf7d Fix bug #69958 - Segfault in Phar::convertToData on invalid file 2015-07-04 21:01:50 -07:00
Bob Weinand 56b6e0dd14 Fix use after free with opcache (interned strings) 2015-07-05 02:00:52 +02:00
Kalle Sommer Nielsen 12b79fcb05 This macro check is not needed (Anatol) 2015-07-04 21:21:15 +02:00
Kalle Sommer Nielsen ce2cd89258 Replace references to PHP_WIN32 and TSRM_WIN32 with ZEND_WIN32 in Zend/, this also fixes 1 instance of where fflush(stderr) was misplaced (zend_extensions.c) 2015-07-04 18:55:22 +02:00
Xinchen Hui 550bbf8f46 Fixed bug #69983 (get_browser fails with user agent of null) 2015-07-04 11:05:50 +08:00
Aaron Piotrowski 1a0ddf988c Switch code on thrown Errors to 0, update related tests 2015-07-03 17:53:42 -05:00
Aaron Piotrowski fbcc823952 Remove E_EXCEPTION 2015-07-03 17:53:42 -05:00
Aaron Piotrowski 02623ddb82 Switch macro with __VA_ARGS__ to function 2015-07-03 17:53:41 -05:00
Aaron Piotrowski 22c38b2ef5 Remove need to pass error level 2015-07-03 17:53:41 -05:00
Aaron Piotrowski 5a99c07ecc Enable throwing custom exceptions from errors 2015-07-03 17:53:40 -05:00
Nikita Popov 866bd89b1d Always report object leaks
Previously cycles were excluded from leak reports, however the
situation here has improved a lot in the meantime and we can
report all leaks.
2015-07-03 19:33:34 +02:00
Nikita Popov 3c33854e7c Don't leak generator cycle in ReflectionGenerator test
This is tracked by bug #69989.
2015-07-03 19:33:28 +02:00
Aaron Piotrowski ed1b64877d Switch position of ce in exception ce variable names 2015-07-03 09:45:03 -05:00
Aaron Piotrowski a812a74c2e Change zend_exception_get_default() to zend_exception_ce 2015-07-03 09:44:48 -05:00
Aaron Piotrowski f9e9d3a437 Cleanup exception ce API
Removed recently added functions to get Error ce's and marked the old functions
fetching default_exception_ce and error_exception_ce as deprecated.
2015-07-03 09:44:30 -05:00
Anatol Belski 9adfb053e6 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix backport mistake
2015-07-03 16:22:01 +02:00
Anatol Belski b281211979 fix backport mistake
in 5.6 it has to be explicitly copied to avoid double free
2015-07-03 16:21:02 +02:00
Christoph M. Becker e75cf6b7e4 Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed fix #69975 wrt. ODBCVER < 0x0300
2015-07-03 13:32:05 +02:00
Christoph M. Becker 344ff5dd4c fixed fix #69975 wrt. ODBCVER < 0x0300 2015-07-03 13:30:39 +02:00
Anatol Belski 02df0cb02b improve info about the applink 2015-07-03 12:45:59 +02:00
Anatol Belski 9d9f372df6 added openssl applink shim note to UPGRADING.INTERNALS 2015-07-03 12:40:54 +02:00
Anatol Belski 274edb4c6f add missing item in the content table 2015-07-03 12:40:53 +02:00
Anatol Belski 54e19fe7c3 Merge branch 'PHP-5.6'
* PHP-5.6:
  backport c01943bffc into 5.6
2015-07-03 11:17:16 +02:00
Anatol Belski d870683d6b backport c01943bffc into 5.6 2015-07-03 11:16:02 +02:00
Anatol Belski c01943bffc fix improper behavior
openssl_spki_export() is documented to return string, but it's
obviously not achieved writing it to stdout :)
2015-07-03 10:15:52 +02:00
Anatol Belski 3d7343f609 integrate the applink shim in the other bins 2015-07-03 07:11:14 +02:00
Anatol Belski 59444347d1 integrate the openssl applink shim
This fixes ext/openssl/tests/openssl_spki_export.phpt failing
with the no OPENSSL_Applink error. Applink is also an interesting
technique documented in the OpenSSL FAQ
https://www.openssl.org/support/faq.html#PROG2
which allows under circumstances using different OpenSSL binaries
than those a program was linked with.
2015-07-03 07:11:13 +02:00
Xinchen Hui e8f992c163 Catch the specifical exception 2015-07-03 11:18:53 +08:00
Christoph M. Becker 21029da71c Merge branch 'PHP-5.6'
* PHP-5.6:
  Added more tests to improve function coverage
2015-07-03 03:12:09 +02:00
Edgar R. Sandi 48d71af7ed Added more tests to improve function coverage 2015-07-03 03:02:40 +02:00
Aaron Piotrowski 68baa539dc Allow integer default for float type 2015-07-02 18:07:24 -05:00
Christoph M. Becker 2768bdbce0 updated NEWS 2015-07-03 00:29:44 +02:00
Christoph M. Becker caa539b481 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  Fix #69975: PHP segfaults when accessing nvarchar(max) defined columns
2015-07-03 00:25:03 +02:00
Christoph M. Becker 616661e0f8 updated NEWS 2015-07-03 00:23:44 +02:00
Christoph M. Becker 16db4d1462 Fix #69975: PHP segfaults when accessing nvarchar(max) defined columns
The SQL Server Native Client 11.0 and maybe other ODBC drivers report
NVARCHAR(MAX) columns as SQL_WVARCHAR with size 0. This causes too small a
buffer to be emalloc'd, likely causing a segfault in the following. As we don't
know the real size of the column data, we treat such colums as
SQL_WLONGVARCHAR.

The related bug #67437 suggests that some drivers report a size of ~4GB. It is
not certain that this is really the case (there might be some integer overflow
involved, and anyway, there has been no feedback), so we do not cater for this
now. However, it would not be hard to treat all sizes above a certain threshold
in a similar way, i.e. as SQL_WLONGVARCHAR.
2015-07-03 00:15:47 +02:00
Bob Weinand 57881e878d Update NEWS for bug #69957 2015-07-02 21:19:26 +02:00
Niklas Keller 5f72d94a8b Correct type hint name for booleans in method signatures 2015-07-02 21:14:30 +02:00
Bob Weinand 6ff72467dc XFAILED tests are not "You may have found a problem in PHP" 2015-07-02 20:49:30 +02:00
Bob Weinand 94722e12cf Introduce ArithmeticError 2015-07-02 20:47:44 +02:00
Dmitry Stogov b874f1a73d Cleanup (avoid reallocation) 2015-07-02 20:29:06 +03:00
Dmitry Stogov 07e646f8ff Cleanup (avoid reallocation) 2015-07-02 19:09:37 +03:00
Dmitry Stogov 9ea98d676b Cleanup (avoid reallocations) 2015-07-02 18:58:04 +03:00
Dmitry Stogov 0fd2b4c030 Cleanup (avoid reallocation) 2015-07-02 18:50:54 +03:00
Anatol Belski d0787534c0 add missing items to the table of contents 2015-07-02 16:34:42 +02:00
Anatol Belski 79ca2b06b6 update UPGRADING infos 2015-07-02 16:32:57 +02:00
Anatol Belski 6f3dd4d45b fix pipe peek timeout 2015-07-02 15:19:38 +02:00
Christoph M. Becker 58b982afed Fix alignment on 32-bit 2015-07-02 14:23:07 +02:00
Christoph M. Becker a88c68f833 improve timings evaluations in test 2015-07-02 14:23:06 +02:00
Anatol Belski cefca35692 use proper place to cleanup 2015-07-02 14:23:05 +02:00
Anatol Belski 4fe8d629d0 fix test for systems with lower time resolution 2015-07-02 14:23:04 +02:00
Anatol Belski 8fed210610 remove stderr descriptor 2015-07-02 14:23:03 +02:00
Anatol Belski afd8ebca78 no need to fflush here 2015-07-02 14:23:02 +02:00
Anatol Belski 5750058ddb added test for bug #69900 2015-07-02 14:23:01 +02:00
Anatol Belski aec332e6b4 select the case to set the pipe blocking option more precisely 2015-07-02 14:23:00 +02:00
Anatol Belski d6130fada6 fixed wrong number for the new option 2015-07-02 14:22:59 +02:00
Anatol Belski 4e5758f377 fix c/p issue 2015-07-02 14:22:58 +02:00
Anatol Belski d516a14fb9 properly set the pipe blocking option 2015-07-02 14:22:57 +02:00
Anatol Belski 1a5a4d546e add missing stuff is the header 2015-07-02 14:22:56 +02:00
Anatol Belski 734d907aa4 initial stuff to make allow blocking pipes on windows 2015-07-02 14:22:55 +02:00
Xinchen Hui 6de750efb7 Fixed conditional jump or move depends on uninitialised value(s)
==11551==    at 0x57CB23C: xpmParseData (parse.c:702)
2015-07-02 19:02:49 +08:00
Xinchen Hui 72b0627315 Fixed bug #69521 (Segfault in gc_collect_cycles()). 2015-07-02 18:43:06 +08:00
Xinchen Hui 3422fb57c8 Use hash_str directly 2015-07-02 12:31:26 +08:00
Xinchen Hui ba91bc36cd Same here 2015-07-02 12:23:50 +08:00
Xinchen Hui ba711aec30 Use one_char_string 2015-07-02 12:19:55 +08:00
Xinchen Hui 0e68e27854 Use one_char_string 2015-07-02 12:18:23 +08:00
Xinchen Hui 70d7ecfec6 Use zend_string in setcookie (save value reallocated) 2015-07-02 12:04:28 +08:00
Xinchen Hui 017d3530f3 Unnecessary duplication 2015-07-02 11:47:22 +08:00
Xinchen Hui fc58025627 This can not be true 2015-07-02 11:04:24 +08:00
Bob Weinand 06fcf94c45 CT eval ZEND_DIV in all cases (warning was removed) 2015-07-02 02:20:58 +02:00
Bob Weinand 007d7ac7ca Use DivisionByZeroError instead of exception for %/intdiv() 2015-07-02 02:20:58 +02:00
Bob Weinand f9724b93f6 Remove warning upon division by zero 2015-07-02 02:20:58 +02:00
Dmitry Stogov fa1abb5677 Fixed memory leak because of incorrect 'if ();' optimization 2015-07-02 02:00:34 +03:00
Christoph M. Becker e6f1638ad0 updated NEWS 2015-07-01 23:50:12 +02:00
Christoph M. Becker e49922d3f8 Fix #69976: Unable to parse "all" urls with colon char
If a colon occurs in a query string or fragment of a partial URL without
scheme, parse_url() tries to regard it as port separator. If up to 5 digits
follow and then a slash or the end of the string, parse_url() fails.

We're fixing this by checking whether the colon is part of the query string or
the fragment, under the assumption that question marks and hash signs are only
allowed as separators of query string and fragments, respectively, what is
guarenteed for URIs (RFC 3986), but not necessarily for URLs (RFC 1738) where
question marks are allowed for usernames and passwords.

Anyhow, this constitutes a minor BC, so the fix is applied to master only.
2015-07-01 23:48:16 +02:00
Dmitry Stogov 6daed13c8b Cleanup (removed dead code) 2015-07-01 22:18:40 +03:00
Dmitry Stogov b4db4114c5 Cleanup (avoid reallocation) 2015-07-01 22:17:55 +03:00
Dmitry Stogov 887e5ad110 Cleanup (avoid reallocation) 2015-07-01 22:17:08 +03:00
Dmitry Stogov d2d326a381 Cleanup (avoid reallocatios and side effects in php_strip_tags) 2015-07-01 19:04:18 +03:00
Dmitry Stogov 068f63ceb2 Fixed broken name 2015-07-01 18:23:06 +03:00
Dmitry Stogov 2ea3258ed5 Cleanup (updated comments) 2015-07-01 17:32:04 +03:00
Dmitry Stogov 819fd30cb3 Cleanup (replce hack by a clean implementation) 2015-07-01 17:30:00 +03:00
Dmitry Stogov 26e8329d0d Cleanup (removed dead code) 2015-07-01 17:07:57 +03:00
Dmitry Stogov c34651e8f8 Cleanup (avoid duplication) 2015-07-01 17:01:42 +03:00
Dmitry Stogov eeaf73439a Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  change the inclusion order which fixes the vc build
2015-07-01 16:32:13 +03:00
Dmitry Stogov a0b55e6a37 Cleanup (updated comments about optimization of comparison with IS_NULL) 2015-07-01 16:31:20 +03:00
Anatol Belski 333db013fd change the inclusion order which fixes the vc build 2015-07-01 15:21:34 +02:00
Dmitry Stogov e2baf737ae Cleanup (we don't use is_ref=1/refcount=2 trick to trigger COW in PHP-7) 2015-07-01 16:15:45 +03:00
Dmitry Stogov c47c526290 Cleanup (avoid reallocation) 2015-07-01 14:59:58 +03:00
Dmitry Stogov 89b49b02fc Cleanup (avoid reallocation) 2015-07-01 14:12:46 +03:00
Dmitry Stogov 7d82deab35 Cleanup (avoid reallocation). 2015-07-01 14:08:54 +03:00
Dmitry Stogov 34ec1c96e7 Cleanup (avoid reallocation). 2015-07-01 13:49:57 +03:00
Dmitry Stogov f7b6de5b5e Cleanup (avoid string reallocations) 2015-07-01 13:26:39 +03:00
Dmitry Stogov 53403fe56d Get rid of ZVAL_ZVAL() macro usages. Replace them with more clear and optimal equialent sequences. 2015-07-01 02:05:21 +03:00
Rasmus Lerdorf 324d5ecb7e debug_print_backtrace has a 2nd optional arg 2015-06-30 09:57:49 -07:00
Rasmus Lerdorf f2249bf95a php_uname has an optional arg 2015-06-30 09:55:00 -07:00
Xinchen Hui ab0771c60a Merge branch 'amortize-hash-compaction' of https://github.com/kaja47/php-src 2015-06-30 21:26:07 +08:00
Dmitry Stogov 7aa7627172 Use ZSTR_ API to access zend_string elements (this is just renaming without semantick changes). 2015-06-30 13:59:27 +03:00
Côme Bernigaud d554d64f64 Merge branch 'PHP-5.6'
* PHP-5.6:
  keep LDAP_DEPRECATED in config.w32
2015-06-30 09:31:19 +02:00
Anatol Belski 57525d01dc keep LDAP_DEPRECATED in config.w32 2015-06-30 09:30:48 +02:00
Aaron Piotrowski f7565a93d8 Add tests for dynamic static call to instance method 2015-06-30 07:07:17 +02:00
Aaron Piotrowski ffd36e0fc8 Throw Error on dynamic call to instance method when called statically 2015-06-30 07:07:17 +02:00
Bob Weinand dd2e6e866d Fix test failures from previous commit
(I really don't get that issue in phar... if there's a better fix, it's welcome...)
2015-06-30 07:02:56 +02:00
Christopher Jones 99cac5055e More PHP 7 patches (Rajendra/Abdullah) 2015-06-30 13:54:40 +10:00
Bob Weinand 6ad9cd5367 Only call stream_flush if anything was written
This avoids flushing in readonly mode upon close
2015-06-30 03:49:54 +02:00
Dmitry Stogov 4a2e40bb86 Use ZSTR_ API to access zend_string elements (this is just renaming without semantick changes). 2015-06-30 04:05:24 +03:00
Christopher Jones 8cce5b2641 Fix Windows compilation warnings (Senthil) 2015-06-30 08:48:37 +10:00
Christoph M. Becker 8b064a18c8 Merge branch 'PHP-5.6'
* PHP-5.6:
  Improved code coverage of explode function
2015-06-29 23:55:18 +02:00
Edgar R. Sandi 1b1a86c415 Improved code coverage of explode function 2015-06-29 23:49:41 +02:00
Christoph M. Becker e32a60dd88 Merge branch 'PHP-5.6'
* PHP-5.6:
  Added basic and error tests for hex2bin function
2015-06-29 23:16:50 +02:00
Edgar R. Sandi d2bc45f6b3 Added basic and error tests for hex2bin function 2015-06-29 23:10:50 +02:00
Anatol Belski 845b191f16 refix the negative zend_long to size_t casts
There is no good way to fix this for 32-bit without enormously
overcomplicating the logic. Therefore switching back to the previous
code and adding the casts to ensure there are no sudden casts of
negative to size_t.
2015-06-29 20:41:39 +02:00
Christoph M. Becker a378322409 Merge branch 'PHP-5.6'
* PHP-5.6:
  adding several other testing scenarios of code without coverage in stripcslashes function
2015-06-29 19:26:01 +02:00
Edgar R. Sandi a8d61ab7f0 adding several other testing scenarios of code without coverage in stripcslashes function 2015-06-29 19:20:23 +02:00
Christoph M. Becker df8f3a0eaa Merge branch 'PHP-5.6'
* PHP-5.6:
  adding another testing scenario without coverage in setlocale function
2015-06-29 18:25:30 +02:00
Edgar R. Sandi 7acdfdc84e adding another testing scenario without coverage in setlocale function 2015-06-29 18:15:03 +02:00
Dmitry Stogov 6cf6f2c6bf Merge branch 'PHP-5.6'
* PHP-5.6:
  On Windows PHP may be restarted with different set of DSO extensions without SHM reset. This may make optimisation for entities from DSO extensions inconsistent.
  Putting back deprecated symbols for ldap_sort
  Removed deprecated function calls from ldap module
  Removed ifdefs of LDAP_API_FEATURE_X_OPENLDAP, fixed a warning
2015-06-29 18:14:14 +03:00
Dmitry Stogov dc588997e2 On Windows PHP may be restarted with different set of DSO extensions without SHM reset.
This may make optimisation for entities from DSO extensions inconsistent.
2015-06-29 18:01:01 +03:00
Dmitry Stogov ee1e67fae6 On Windows PHP may be restarted with different set of DSO extensions without SHM reset.
This may make optimisation for entities from DSO extensions inconsistent.
2015-06-29 17:45:56 +03:00
jrchamp edb3ab2a2a UPGRADING typos/wording 2015-06-29 16:16:51 +02:00
Dmitry Stogov 4bd22cf1c1 Improved zend_string API (Francois Laupretre)
Squashed commit of the following:

commit d96eab8d79b75ac83d49d49ae4665f948d15a804
Author: Francois Laupretre <francois@tekwire.net>
Date:   Fri Jun 26 01:23:31 2015 +0200

    Use the new 'ZSTR' macros in the rest of the code.

    Does not change anything to the generated code (thanks to compat macros) but cleaner.

commit b3526439104ac7a89a8e0c79dbebf33b22bd01b8
Author: Francois Laupretre <francois@tekwire.net>
Date:   Thu Jun 25 13:45:06 2015 +0200

    Improve zend_string API

    Add missing methods
2015-06-29 16:44:54 +03:00
Côme Bernigaud 667e9bd417 Deprecating ldap_sort the right way 2015-06-29 14:31:20 +02:00
Dmitry Stogov 66031cfe19 Restored old behavior 2015-06-29 14:10:46 +03:00
Anatol Belski c783645b99 fix more places with subtle negative zend_long to size_t cast 2015-06-29 12:15:21 +02:00
Anatol Belski c2ac0304a9 remove useless check
thanks Yasuo :)
2015-06-29 12:15:20 +02:00
Anatol Belski 8ccf29eb04 remove comment
f and l are the $start and $length, since they come from the user
land, they only can be zend_long
2015-06-29 12:15:19 +02:00
Dmitry Stogov 0b35e4a3be Revert "Fixed last previously broken tests"
This reverts commit 79b1832dd5.
2015-06-29 13:05:14 +03:00
Dmitry Stogov 642c379092 Prevent attempts of compile-time evaluation of invalid operators (e.g. division/modulo by zero and shift by negative number) 2015-06-29 12:58:07 +03:00
Dmitry Stogov 1bba4452e7 Reverted wrong fb08798c9f 2015-06-29 12:20:09 +03:00
Andreas Heigl 6e84f8e95e Fixes ldap_sort-tests
Thanks to Côme Bernigaud for fixing!
2015-06-29 11:11:11 +02:00
Andreas Heigl 85aabd3e85 Adds deprecation-message for ldap_sort 2015-06-29 11:11:11 +02:00
Dmitry Stogov 625dba022c Don't evaluate invalid constant expressions. 2015-06-29 11:35:12 +03:00
Anatol Belski 5060060317 fix negative zend_long to size_t cast 2015-06-29 10:27:42 +02:00
Edgar R. Sandi 8271890d8d removed unreachable code in the substr_replace function 2015-06-29 10:27:41 +02:00
Dmitry Stogov 8e923197b4 Fixed bug #69955 (Segfault when trying to combine [] and assign-op on ArrayAccess object). (Laruence) 2015-06-29 11:17:56 +03:00
Anatol Belski 07c971b665 keep LDAP_DEPRECATED in config.w32 2015-06-29 10:12:36 +02:00
Côme Bernigaud d4077410b8 Putting back deprecated symbols for ldap_sort 2015-06-29 09:42:47 +02:00
Côme Bernigaud 0483b6e868 Removed deprecated function calls from ldap module
ldap_search -> ldap search_ext
ldap_search_s ->_ldap_search_ext_s
ldap_add_s -> ldap_add_ext_s
ldap_delete_s -> ldap_delete_ext_s
ldap_compare_s -> ldap_compare_ext_s
ldap_value_free -> ldap_memvfree

Only thing left is ldap_sort_entries, no replacement

Conflicts:
	ext/ldap/ldap.c
2015-06-29 09:42:47 +02:00
Côme Bernigaud 4f7808ec50 Removed ifdefs of LDAP_API_FEATURE_X_OPENLDAP, fixed a warning
Conflicts:
	ext/ldap/ldap.c
2015-06-29 09:42:47 +02:00
Xinchen Hui bb3d545e5e Merge branch 'master' of git.php.net:php-src 2015-06-29 15:36:55 +08:00
Xinchen Hui 4cc0096e00 Fixed memroy errors with valgrind 2015-06-29 15:36:02 +08:00
Stanislav Malyshev 265b73e6ff Merge branch 'PHP-5.6'
* PHP-5.6:
  Move strlen() check to php_mail_detect_multiple_crlf()
  Fixed Bug #69874 : Can't set empty additional_headers for mail()

Conflicts:
	ext/standard/mail.c
2015-06-29 00:31:56 -07:00
Côme Bernigaud 2e85e6d3ee Merge PR about LDAP cleaning by removing deprecated calls
Merge branch 'pull-request/1357' into PHP-5.6

* pull-request/1357:
  Putting back deprecated symbols for ldap_sort
  Removed deprecated function calls from ldap module
  Removed ifdefs of LDAP_API_FEATURE_X_OPENLDAP, fixed a warning
2015-06-29 09:31:37 +02:00
Stanislav Malyshev d7daf814b7 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Move strlen() check to php_mail_detect_multiple_crlf()
  Fixed Bug #69874 : Can't set empty additional_headers for mail()
2015-06-29 00:30:55 -07:00
Xinchen Hui a5d38e0dea Merge branch 'master' of git.php.net:php-src 2015-06-29 15:17:58 +08:00
Xinchen Hui 5ba28d76d2 Fixed segfault in wordpress (introduced in rev 4a4529adb0) 2015-06-29 15:13:09 +08:00
Côme Bernigaud 736d840c8b Putting back deprecated symbols for ldap_sort 2015-06-29 09:07:49 +02:00
Anatol Belski 5e3a3461c2 fix tests 2015-06-29 09:05:56 +02:00
Anatol Belski a1cf46bb1f remove useless assignment 2015-06-29 07:33:20 +02:00
Anatol Belski 8430ec1788 fix FCGI crash in TS mode
If CGI TS build is used, and there are some hard errors (fe missing
dependency .dll or .so), the core will want to log it. The CGI
log function will want to check whether fcgi_logging is enabled. But,
if this kind of error happens in the extension register phase,
MINIT for the CGI module is most likely wasn't run yet (startup phase).
That will result in accessing uninitialized globals and a crash.
2015-06-29 07:33:19 +02:00
Stanislav Malyshev 8f2e08239f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Move strlen() check to php_mail_detect_multiple_crlf()
  Fixed Bug #69874 : Can't set empty additional_headers for mail()
2015-06-28 20:23:00 -07:00
Stanislav Malyshev cd9c39d77c Merge branch 'pull-request/1350' into PHP-5.4
* pull-request/1350:
  Move strlen() check to php_mail_detect_multiple_crlf()
  Fixed Bug #69874 : Can't set empty additional_headers for mail()
2015-06-28 20:18:56 -07:00
Bob Weinand b34f9bc2e9 Fix assertion failure with Z_REFCOUNT() in info constants 2015-06-29 03:43:51 +02:00
Rasmus Lerdorf 01ceb0f7fa 2nd arg of sprintf is optional 2015-06-28 18:08:22 -07:00
Bob Weinand 088f589f7d Make backtraces *much* more readable 2015-06-29 02:51:10 +02:00
Bob Weinand f500471e8c Add yield from to frame leaving instructions 2015-06-29 02:05:33 +02:00
Bob Weinand 5e16722309 Show exception source in phpdbg 2015-06-29 01:41:04 +02:00
Bob Weinand 79b1832dd5 Fixed last previously broken tests 2015-06-29 01:00:12 +02:00
Bob Weinand e5fae77969 Show full signature upon inheritance mismatch 2015-06-29 01:00:12 +02:00
Bob Weinand 9f77c44d47 Remove now unneeded step option (-s) 2015-06-29 01:00:12 +02:00
Jakub Zelenka f30503ce4e Fix incompatible JSON errors
This fixes differences in error codes with PHP 5 and 7.
The malformed UTF-8 and control character error codes are
now returned even in non-string context which makes it
the same as it was in PHP 5 json ext.
2015-06-28 18:09:10 +01:00
Bob Weinand fb08798c9f Fix bug #69957 (Different ways of handling div/mod by zero) 2015-06-28 18:22:59 +02:00
Jakub Zelenka 64c371142c Fix bug #62010 (json_decode produces invalid byte-sequences) 2015-06-28 17:16:12 +01:00
Jakub Zelenka 695b4f4cad Bump re2c version for json scanner 2015-06-28 16:48:42 +01:00
Bob Weinand b477aa1fad Fix bug #69952 (Dereferencing issue in session_start()) 2015-06-28 16:30:58 +02:00
Bob Weinand e96ad43ae6 Forgot to git add rope leak test 2015-06-28 15:44:53 +02:00
Bob Weinand 4a4529adb0 Fix rope memory leaks upon exception 2015-06-28 15:42:15 +02:00
Xinchen Hui f70950d004 Fixed ZEND_VM_DEFINE_OP build when --without-specializer 2015-06-28 21:16:08 +08:00
Xinchen Hui 15979d2c9e Merge branch 'master' of git.php.net:php-src 2015-06-28 19:17:37 +08:00
Xinchen Hui a486294e7d Unused ret 2015-06-28 19:16:00 +08:00
Anatol Belski 7d0fb66032 updated NEWS 2015-06-28 13:13:41 +02:00
Cameron Porter 621698d3f9 Correct oci8 hash destructors to prevent segfaults, and a few other fixes. 2015-06-28 13:05:25 +02:00
Anatol Belski b81188518b tweak the zendparse symbol to be exported with newer bison 2015-06-28 00:10:41 +02:00
Anatol Belski 2eea8c1adb fix touching 2015-06-27 23:38:48 +02:00
Anatol Belski 84c4945599 touch all the files before creating a tarball 2015-06-27 22:06:15 +02:00
Anatol Belski 8858d02f63 fix one more bad char in the NEWS 2015-06-27 21:09:00 +02:00
Anatol Belski ea2ad6f6e4 remove BOM and a unicode char from the NEWS 2015-06-27 21:08:00 +02:00
Christoph M. Becker b06996b561 updated NEWS 2015-06-27 20:07:06 +02:00
Christoph M. Becker a7bbc68bac Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  Fixed #69655: php -S changes MKCALENDAR request method to MKCOL
2015-06-27 20:05:30 +02:00
Christoph M. Becker 7e97faa3e8 updated NEWS 2015-06-27 20:03:38 +02:00
Christoph M. Becker bbe28d3a55 Fixed #69655: php -S changes MKCALENDAR request method to MKCOL
The parsing of the request method in the CLI server has been faulty, so that
several unsupported methods have been recognized as other methods.
2015-06-27 20:02:21 +02:00
Christoph M. Becker 1ec6ff0b49 Merge branch 'PHP-5.6'
* PHP-5.6:
  added skip condition for powershell requirement of test
2015-06-27 15:05:29 +02:00
Christoph M. Becker b811bb3920 added skip condition for powershell requirement of test 2015-06-27 15:02:52 +02:00
Christoph M. Becker 486d59dcfe updated NEWS 2015-06-27 14:38:37 +02:00
Christoph M. Becker 4e32ecb90a Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix #64878: 304 responses return Content-Type header
2015-06-27 14:35:20 +02:00
Christoph M. Becker 0730fc8830 updated NEWS 2015-06-27 14:32:34 +02:00
Christoph M. Becker 1920ba6f7b Fix #64878: 304 responses return Content-Type header
According to RFC 7232 304 responses should not send a Content-Type header,
so the CLI server should comply.
2015-06-27 14:28:33 +02:00
Christopher Jones 692d283707 Merge some fixes from Senthil. Some test diffs still remain. 2015-06-27 10:01:55 +10:00
Christopher Jones 7a9764c5bb Fix table name in initialization DROP TABLE statement 2015-06-27 10:01:15 +10:00
Tjerk Meesters 3bf012a98d Feature: Enhanced array_column() to also work with object elements. 2015-06-27 07:35:44 +08:00
Christoph M. Becker 86df85f43a Merge branch 'PHP-5.6'
* PHP-5.6:
  added regression test for bug #69679
2015-06-27 01:10:41 +02:00
Christoph M. Becker 6400ef192c added regression test for bug #69679
DOMDocument::loadHTML refuses to accept NULL bytes.
2015-06-27 01:08:56 +02:00
Christoph M. Becker 95459a4d16 Merge branch 'PHP-5.6'
* PHP-5.6:
  slightly revised bug69462.phpt
  Test for bug #69462
2015-06-26 23:27:25 +02:00
Christoph M. Becker bdf3bb668f slightly revised bug69462.phpt 2015-06-26 23:20:22 +02:00
Tomasz Sawicki af17316fcd Test for bug #69462
Test scenario for already fixed bug #69462 with segmentation fault when
SoapVar XML node name was null.
2015-06-26 23:19:29 +02:00
Bob Weinand 25e1b49ea1 Fix warning in zend_execute.c by explicit cast 2015-06-26 20:39:56 +02:00
Bob Weinand 2894bc5bb8 Use ZEND_INIT_STATIC_METHOD_CALL for literals of form "classname::method" 2015-06-26 19:55:13 +02:00
Aaron Piotrowski 1d704a05ee Fix closure leak test 2015-06-26 16:30:01 +02:00
Aaron Piotrowski 8bd95b8cdc Fix test duplication, add more tests 2015-06-26 16:30:01 +02:00
Christoph M. Becker 36e2d26adb restricted test to English locale (fails otherwise) 2015-06-26 16:27:45 +02:00
Christoph M. Becker 3bd6bb6f50 fixed broken test (syntax error in SKIPIF section) 2015-06-26 15:57:28 +02:00
Kalle Sommer Nielsen 4b737793bc Add test for bug #69939 2015-06-26 15:35:16 +02:00
Kalle Sommer Nielsen 85bbfb191d Fixed bug #69939 (Casting object to bool returns false) 2015-06-26 15:30:03 +02:00
Kalle Sommer Nielsen 3b589d8ca5 Merge branch 'master' of https://git.php.net/push/php-src 2015-06-26 10:24:45 +02:00
Bob Weinand 1335ebd068 Fix Closure leak in aborted INIT_DYNAMIC_FCALL 2015-06-26 05:10:58 +02:00
Aaron Piotrowski bc0df38e88 Added more indirect call tests, remove invalid test 2015-06-25 19:46:28 -05:00
Aaron Piotrowski ba67fc2218 Fix 'Class::method' indirect call with empty method name 2015-06-25 19:37:52 -05:00
Edgar R. Sandi 098a4cc3eb moved function warning test to money_format_error.phpt file 2015-06-25 20:34:41 -03:00
Tjerk Meesters 03a670eaaa Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed #69882: OpenSSL error "key values mismatch" after openssl_pkcs12_read with extra certs
2015-06-26 06:03:29 +08:00
Tjerk Meesters 2ff3dafccf Fixed #69882: OpenSSL error "key values mismatch" after openssl_pkcs12_read with extra certs
Squashed commit of the following:

commit a64c1d9bc4c129fd946a478bdcb55101e42157b7
Author: Tomasz Sawicki <falundir@gmail.com>
Date:   Wed Jun 24 08:49:37 2015 +0200

    Fix #69882: OpenSSL error "key values mismatch" after openssl_pkcs12_read with extra certs

    The "key values mismatch" error is triggered in openssl_pkcs12_read by
    PKCS12_parse, because it uses X509_check_private_key to separate main
    certificate (which corresponds to private key) from extra certificates.
    Extra certificates usually comes first (p12 contents are reversed as
    stack) and X509_check_private_key triggers X509_R_KEY_VALUES_MISMATCH
    error.
    The fix pops "key values mismatch" error from OpenSSL error stack for
    each extra certificate if there are any.
2015-06-26 05:33:28 +08:00
Rasmus Lerdorf 7ceb47477d 3rd arg to stream_set_timeout is optional
ignore_user_abort() should take a bool not a string
2015-06-25 10:31:37 -07:00
Julien Pauli 20585beb76 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix unknown size of void error
2015-06-25 19:13:49 +02:00
Julien Pauli b1ec4515b0 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix unknown size of void error
2015-06-25 19:13:20 +02:00
Anatol Belski 80f9a9725c fix unknown size of void error 2015-06-25 19:12:26 +02:00
Kalle Sommer Nielsen 7517d385ea Merge branch 'master' of https://git.php.net/push/php-src 2015-06-25 19:09:00 +02:00
Dmitry Stogov 2a2f42c25d Optimize out usless conditions used by specializer 2015-06-25 18:56:14 +03:00
Anatol Belski 04b26ba5c6 update the doc in regard to the latest discussions 2015-06-25 16:39:02 +02:00
Anatol Belski 0955f9513f Merge branch 'PHP-5.6'
* PHP-5.6:
  backport missing rev bfdc9e2805
2015-06-25 11:35:11 +02:00
Anatol Belski 7bb52dda6a backport missing rev bfdc9e2805 2015-06-25 11:34:04 +02:00
Dmitry Stogov f5fd58f737 Better check for __builtin_constant_p() availability 2015-06-25 12:02:28 +03:00
Dmitry Stogov 90976c9978 Moved test to correct place 2015-06-25 11:22:21 +03:00
Bob Weinand f42cdf83b0 Fix paths issue when fetching .phpdbginit under Windows 2015-06-25 00:36:01 +02:00
Ferenc Kovacs 190478e9da Merge remote-tracking branch 'origin/PHP-5.6'
* origin/PHP-5.6:
  5.6.12 next
2015-06-25 00:23:21 +02:00
Ferenc Kovacs 1efe5b1157 5.6.12 next 2015-06-25 00:21:45 +02:00
Hannes Magnusson 4a6503a524 Typo (thanks kaplan@) 2015-06-24 08:24:11 -07:00
Xinchen Hui 2a9e012aa5 Merge branch 'master' of git.php.net:php-src 2015-06-24 21:44:31 +08:00
Xinchen Hui fa61f921f9 Micro optimization 2015-06-24 21:42:54 +08:00
Bob Weinand ab90e55b9e Passing a zend_string * to %s is a bad idea 2015-06-24 15:29:26 +02:00
Julien Pauli 2424b349ad Merge branch 'PHP-5.6'
* PHP-5.6:
  5.5.28 now - Security Only
2015-06-24 10:45:42 +02:00
Julien Pauli ca82114f21 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  5.5.28 now - Security Only

Conflicts:
	configure.in
	main/php_version.h
2015-06-24 10:42:41 +02:00
Julien Pauli 8e440dc1d7 5.5.28 now - Security Only 2015-06-24 10:41:06 +02:00
Anatol Belski e821a13a4d fix NEWS 2015-06-24 10:21:54 +02:00
Rasmus Lerdorf 1201be392f 3rd arg to define() is optional 2015-06-23 23:53:23 -04:00
Rasmus Lerdorf 56b0d6f3a0 Wrong arginfo on assert
(not adding types, just fixing a missing arg)
2015-06-23 22:41:41 -04:00
Hannes Magnusson 517196b065 PHP7 sounds like a good time to include signatures in announce mails
We need these posted as many places as possible to make any sense.
2015-06-23 19:33:37 -07:00
Hannes Magnusson ce01d7361e space 2015-06-23 19:29:10 -07:00
Christoph M. Becker d90763d4c6 Merge branch 'PHP-5.6'
* PHP-5.6:
  Made bug44295-win.phpt locale independent
2015-06-24 02:04:34 +02:00
Christoph M. Becker c201b63873 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Made bug44295-win.phpt locale independent
2015-06-24 01:42:22 +02:00
Christoph M. Becker cd068b1ed6 Made bug44295-win.phpt locale independent
Formerly it failed on non English installations.
2015-06-24 01:41:33 +02:00
Christoph M. Becker 27e557a169 Merge branch 'master' of https://git.php.net/repository/php-src
# By Rasmus Lerdorf (3) and others
# Via Rasmus Lerdorf
* 'master' of https://git.php.net/repository/php-src:
  Fix more proto comments
  prepare NEWS for next
  Fix more minor mistakes in the proto comments
  Avoid op_num = -1 in unfinished generator cleanup
  Fix incorrect protos
2015-06-24 01:15:44 +02:00
Christoph M. Becker 7464424776 updated NEWS 2015-06-24 00:54:20 +02:00
Christoph M. Becker 00adcbd3e9 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  Fixed bug #69768 (escapeshell*() doesn't cater to !)
  bump API version to 6.8
2015-06-24 00:47:18 +02:00
Christoph M. Becker e181931f77 updated NEWS 2015-06-24 00:42:24 +02:00
Christoph M. Becker 905c5f4858 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  updated NEWS
  Fixed bug #69768 (escapeshell*() doesn't cater to !)
  bump API version to 6.8
2015-06-24 00:32:13 +02:00
Christoph M. Becker b03f743e7d updated NEWS 2015-06-24 00:31:07 +02:00
Christoph M. Becker 8da8dc04b6 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated NEWS
  Fixed bug #69768 (escapeshell*() doesn't cater to !)
  bump API version to 6.8
2015-06-24 00:23:39 +02:00
Christoph M. Becker 921544cad9 updated NEWS 2015-06-24 00:20:32 +02:00
Christoph M. Becker a621781fdb Fixed bug #69768 (escapeshell*() doesn't cater to !)
When delayed variable substitution is enabled (can be set in the
Registry, for instance), !ENV! works similar to %ENV%, and so ! should
be escaped like %.
2015-06-24 00:15:55 +02:00
Rasmus Lerdorf 28d7bb97a1 Fix more proto comments 2015-06-23 17:46:20 -04:00
Anatol Belski 2d2bd2db97 prepare NEWS for next 2015-06-23 22:26:11 +02:00
Rasmus Lerdorf 41774bceff Fix more minor mistakes in the proto comments 2015-06-23 15:47:33 -04:00
Nikita Popov ea5c66ec93 Avoid op_num = -1 in unfinished generator cleanup
Also add two tests showing that the -1 substraction in the
computation of op_num is really necessary.
2015-06-23 20:17:30 +02:00
Rasmus Lerdorf f4d08d8e5c Fix incorrect protos 2015-06-23 14:15:24 -04:00
Christoph M. Becker e08d27d650 updated NEWS 2015-06-23 19:44:22 +02:00
Christoph M. Becker ca049e0ae9 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  Fixed Bug #53823 (preg_replace: * qualifier on unicode replace garbles the string)
2015-06-23 19:41:02 +02:00
Christoph M. Becker 13347225ac updated NEWS 2015-06-23 19:36:59 +02:00
Christoph M. Becker e1561c490e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  Fixed Bug #53823 (preg_replace: * qualifier on unicode replace garbles the string)
2015-06-23 19:32:57 +02:00
Christoph M. Becker 1cbcbcbc21 updated NEWS 2015-06-23 19:32:18 +02:00
Christoph M. Becker 23e25f3319 Fixed Bug #53823 (preg_replace: * qualifier on unicode replace garbles the string)
When advancing after empty matches, php_pcre_match_impl() as well as
php_pcre_replace_impl() always have to advance to the next code point when the
u modifier is given, instead of to the next byte.
2015-06-23 19:28:09 +02:00
Christoph M. Becker 95b6575a59 Moved NEWS entry for bug #69864 to proper category 2015-06-23 17:34:33 +02:00
Christoph M. Becker b29d822e08 Merge branch 'PHP-5.6'
* PHP-5.6:
  Moved NEWS entry for bug #69864 to proper category
  Moved NEWS entry for bug #69864 to proper category
2015-06-23 17:32:47 +02:00
Christoph M. Becker 868b9328a0 Moved NEWS entry for bug #69864 to proper category 2015-06-23 17:30:31 +02:00
Christoph M. Becker b883fe1547 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Moved NEWS entry for bug #69864 to proper category
2015-06-23 17:28:22 +02:00
Christoph M. Becker eef6b10b7c Moved NEWS entry for bug #69864 to proper category 2015-06-23 17:27:21 +02:00
Christoph M. Becker 6f0afee301 updated NEWS 2015-06-23 16:52:14 +02:00
Christoph M. Becker ec8731c46b Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #69864 (Segfault in preg_replace_callback)
2015-06-23 16:50:52 +02:00
Côme Bernigaud 5250fc772d Removed deprecated function calls from ldap module
ldap_search -> ldap search_ext
ldap_search_s ->_ldap_search_ext_s
ldap_add_s -> ldap_add_ext_s
ldap_delete_s -> ldap_delete_ext_s
ldap_compare_s -> ldap_compare_ext_s
ldap_value_free -> ldap_memvfree

Only thing left is ldap_sort_entries, no replacement
2015-06-23 16:44:48 +02:00
Christoph M. Becker 7953ff4ea3 updated NEWS 2015-06-23 16:43:12 +02:00
Christoph M. Becker bc47f10a97 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  Fixed bug #69864 (Segfault in preg_replace_callback)
2015-06-23 16:36:35 +02:00
Christoph M. Becker b559cc98ba Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed two errors in LDAP tests
  bump API version to 6.8
  bump API version to 6.8
2015-06-23 16:24:06 +02:00
Christoph M. Becker 3e1aabbfc3 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  bump API version to 6.8
2015-06-23 16:22:08 +02:00
Côme Bernigaud d29cc63bb6 Fixed two errors in LDAP tests 2015-06-23 16:11:12 +02:00
Côme Bernigaud 9bcdd2aabe Fixed two errors in LDAP tests 2015-06-23 16:09:56 +02:00
Côme Bernigaud ea49be9b37 Removed ifdefs of LDAP_API_FEATURE_X_OPENLDAP, fixed a warning 2015-06-23 15:50:14 +02:00
Dmitry Stogov 6bf3ecf69a Revert "Simplify php_implode(). Fill the resulting string in direct order."
The patch slightly improved performance of string imploding, but reduced speed of integers imploding.

This reverts commit 36d39b7044.
2015-06-23 16:46:41 +03:00
Dmitry Stogov f0d2a0e542 Encapsulate FastCGI implementation details.
Previously fcgi_request defined in main/fastcgi.h might be treated differently in different files, because of different behavior of #ifdef TCP_NODELAY. This leaded to stack memory corruption and unpredictable crashes.
2015-06-23 16:27:21 +03:00
Dmitry Stogov 7a01c44ab2 Fixed bug #69905 (null ptr deref and segfault in ZEND_FETCH_DIM_RW_SPEC_VAR_UNUSED_HANDLER) 2015-06-23 16:26:40 +03:00
Kalle Sommer Nielsen 6129a56c02 Merge branch 'master' of https://git.php.net/push/php-src 2015-06-23 13:39:12 +02:00
Christoph M. Becker 75b2ce28aa updated NEWS 2015-06-23 13:02:08 +02:00
Christoph M. Becker a39beaa251 Fixed bug #69864 (Segfault in preg_replace_callback)
When preg_replace_callback() is used, cache entries which are in use must not
be removed. We ensure that by deploying a simple refcounting mechanism.
2015-06-23 13:00:17 +02:00
Dmitry Stogov 36d39b7044 Simplify php_implode(). Fill the resulting string in direct order. 2015-06-23 12:57:36 +03:00
Kalle Sommer Nielsen 77eb51bffd Merge branch 'master' of https://git.php.net/push/php-src 2015-06-23 11:19:31 +02:00
George Wang 9e15ce9a38 Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6 2015-06-22 23:40:34 -04:00
George Wang b0954ebb79 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2015-06-22 23:39:53 -04:00
George Wang 3a169f6c0d bump API version to 6.8 2015-06-22 23:39:35 -04:00
George Wang 8877feaeec bump API version to 6.8 2015-06-22 23:39:23 -04:00
George Wang fdb580a5ad bump API version to 6.8 2015-06-22 23:38:38 -04:00
George Wang 2423b0bded bump API version to 6.8 2015-06-22 23:35:21 -04:00
Nikita Popov 8a83aed458 Drop duplicate object-to-type notices
We already generate a recoverable fatal for these earlier, no need
to throw an additional notice.
2015-06-22 16:25:32 +02:00
Dmitry Stogov d4cd659b5a Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Drop superfluous __toString handling code
2015-06-22 17:07:25 +03:00
Dmitry Stogov 567aa1783e Added comments 2015-06-22 16:39:07 +03:00
Nikita Popov 628d439402 Drop superfluous __toString handling code
This is already covered by the cast_object invokation above it. We
do not use this kind of fallback in any other casting code anymore.
2015-06-22 15:33:41 +02:00
Kalle Sommer Nielsen 41404bfafd Also silence copy here 2015-06-22 15:26:21 +02:00
Kalle Sommer Nielsen 4807b164fd This macro is defined in zend_virtual_cwd.h, avoid redef 2015-06-22 14:02:04 +02:00
Kalle Sommer Nielsen 093546308e Silence the "1 file(s) copied" notice (from copying the manifest file) 2015-06-22 13:56:35 +02:00
Kalle Sommer Nielsen f40b41d0c8 Merge branch 'master' of https://git.php.net/push/php-src 2015-06-22 13:39:17 +02:00
Kalle Sommer Nielsen 055755a4ae Fix typo + DSP reference 2015-06-22 13:30:12 +02:00
Kalle Sommer Nielsen db22946b25 Remove these old references to the DSP files we don't use anymore 2015-06-22 13:29:42 +02:00
Bob Weinand 70e86b8766 Also try __has_builtin() where builtins are used 2015-06-22 13:24:39 +02:00
Bob Weinand 29aad0ef45 Add phpdbg userland API to fetch oplog
We may want to add some opcode info later, so that "opcodes" mode is more helpful
2015-06-22 12:58:33 +02:00
Dmitry Stogov 44d545b8e1 Avoid overhead in RELEASE build. 2015-06-22 13:08:33 +03:00
Dmitry Stogov b97df475df Fixed crash in Zend/tests/bug69891.phpt on x86 (32-bit).
compare_function() now has to be compatible with binary_op_type (use fastcall convention).
Introduced new zval_compare_function() to be used as zval comparison callback instead of compare_function().
2015-06-22 12:53:52 +03:00
Kalle Sommer Nielsen 0da4c34f0e Fixed bug #69897 (segfault when manually constructing SQLite3Result) 2015-06-22 11:12:23 +02:00
Dmitry Stogov ed418312a5 Revert "Fix arginfo for built-in engine functions"
This reverts commit d2356541d0.
2015-06-22 11:44:57 +03:00
Dmitry Stogov 3db071dba2 Revert "Fix set_error_handler() arginfo"
This reverts commit b5240280b0.
2015-06-22 11:44:49 +03:00
Dmitry Stogov 82b92cfa2e Revert "And actually use this new arginfo data"
This reverts commit 932c95fb31.
2015-06-22 11:44:39 +03:00
Dmitry Stogov 539593ce15 Revert "Fix each() arginfo"
This reverts commit 19fd124bcf.
2015-06-22 11:44:29 +03:00
Dmitry Stogov 9a68fe51d7 Revert "Fix genarginfo to respect by-ref passing"
This reverts commit db6990a91b.
2015-06-22 11:44:13 +03:00
Dmitry Stogov 13d5893c2a Revert "Several return type fixes, still not completed... Incomplete prototypes :-/"
This reverts commit 851b95fc49.
2015-06-22 11:44:01 +03:00
Bob Weinand 851b95fc49 Several return type fixes, still not completed... Incomplete prototypes :-/ 2015-06-22 10:36:42 +02:00
Bob Weinand db6990a91b Fix genarginfo to respect by-ref passing 2015-06-22 10:17:35 +02:00
Bob Weinand 19fd124bcf Fix each() arginfo 2015-06-22 10:03:14 +02:00
Rasmus Lerdorf 932c95fb31 And actually use this new arginfo data 2015-06-22 00:12:48 -04:00
Rasmus Lerdorf b5240280b0 Fix set_error_handler() arginfo 2015-06-21 23:48:00 -04:00
Rasmus Lerdorf d2356541d0 Fix arginfo for built-in engine functions 2015-06-21 21:50:09 -04:00
Bob Weinand 5314f13fc6 Fix accidental function related flag value reuse 2015-06-22 01:36:17 +02:00
Bob Weinand 3c288b12b4 Fix bad run_time_cache with Closure::call()
This also fixes a memory "leak" (memory is allocated on unbounded arena without limits) on each new Closure instantiation.
Closures with same scope now all share the same run_time_cache (as long as it is arena allocated)
2015-06-21 16:39:44 +02:00
Jakub Zelenka f3df3df873 Fix bug #68546 (json_decode cannot access property started with \0) 2015-06-21 15:30:33 +01:00
Bob Weinand 115e9288bb Fix segfault with scalar passed to typehint with not loaded class 2015-06-21 01:35:22 +02:00
Nikita Popov f58ebb3609 Load/restore VM stack before unfinished generator cleanup 2015-06-20 19:09:25 +02:00
Bob Weinand ffe0f470d6 Fix bad test (oops) 2015-06-20 18:59:47 +02:00
Nikita Popov 6a4877ee17 Add test for previous commit 2015-06-20 18:38:59 +02:00
Nikita Popov ddf41d3aeb Fix generator memory leak
Make sure HANDLE_EXCEPTION and generator unwinds stay in sync in
the future by extracting a common function.
2015-06-20 18:37:28 +02:00
Bob Weinand 7adc0ae631 Fix potential writes into wrong memory, ensure vm_stack integrity
Fixes also a segfault on stack frames > 1 << 18 bytes
Stack frames, when reallocated, need to be marked as top frame of current stack page
2015-06-20 18:29:09 +02:00
Nikita Popov 23e1e1295f Clean up zend_hash_compare implementation
Split off zend_hash_compare_impl into separate function that does
not bother with recursion protection. We had two cases where
UNPROTECT_RECURSION was missing.
2015-06-20 17:35:16 +02:00
Nikita Popov e8217a2727 Fix bug #69891 2015-06-20 17:23:58 +02:00
Nikita Popov 5bf7a3aac7 Fixed bug #69893 2015-06-20 17:14:48 +02:00
Nikita Popov 9589d26ef3 Merge branch 'PHP-5.6'
Conflicts:
	Zend/zend_hash.c
2015-06-20 16:50:37 +02:00
Nikita Popov e09d3155a1 Merge branch 'PHP-5.5' into PHP-5.6 2015-06-20 16:40:53 +02:00
Nikita Popov 5fe078abba Fixed bug #69892 2015-06-20 16:40:14 +02:00
Kalle Sommer Nielsen cc8f2b1bd9 Add missing NEWS entries 2015-06-20 15:24:51 +02:00
Nikita Popov 9fa70dbd29 Fixed bug #69889
There is one case that requires further discussion:

$foo = "test";
var_dump($foo[0.0] ?? "default");
var_dump(isset($foo[0.0]) ? $foo[0.0] : "default");

Here the former will currently return "t", while the latter also
returns "t" and additionally throws a notice.

I think we need to revisit the behavior of invalid types for string
offset access in PHP 7, as currently there is some mismatch between
what isset() does and what the access itself supports.
2015-06-20 15:09:58 +02:00
Nikita Popov 257054e81d Fix bug #62922
Off by one error...
2015-06-20 14:39:55 +02:00
Nikita Popov c7f4c5a2fe Avoid unnecessary separations in VERIFY_RETURN_TYPE 2015-06-20 14:12:59 +02:00
Nikita Popov a684e6adb2 Drop unnecessary %prec
Leftover from a previous implementation
2015-06-20 13:10:51 +02:00
Anatol Belski f801eb9d6b updated NEWS 2015-06-20 09:35:03 +02:00
Anatol Belski 658d698a1c add test for bug #69838 2015-06-20 09:35:02 +02:00
Anatol Belski f88aad418e Fix bug #69838 OPCACHE Warning Internal error: wrong size calculation
This chunk is pre calculated with aligned size, so should it use it
at run time.
2015-06-20 09:35:01 +02:00
Xinchen Hui f75308eda1 Micro optimization 2015-06-20 10:52:58 +08:00
Xinchen Hui dc72b70b7e Remove unused var 2015-06-20 10:37:53 +08:00
Xinchen Hui 89fda08473 This test should be kept 2015-06-19 23:13:23 +08:00
Xinchen Hui 307c734bed Better way to fix (Fix bug #69871 (short-circuiting failure with smart_branch)) 2015-06-19 23:05:35 +08:00
Xinchen Hui 235c7edb8b Revert "Fix bug #69871 (short-circuiting failure with smart_branch)"
This reverts commit fae6bedea5.
2015-06-19 23:03:23 +08:00
Xinchen Hui a7635e82f6 Improve strtr (Fixed a bug which the lenth check doesn't work at all) 2015-06-19 22:59:31 +08:00
Kalle Sommer Nielsen cff872eaad Remove the references to imageps*() after the T1Lib removal (Noticed by Ferenc) 2015-06-19 14:55:10 +02:00
Xinchen Hui 05c24d5dfa Fixed Bug #69883 (Compilation failed on PCRE) 2015-06-19 20:33:14 +08:00
Anatol Belski 1e65b65dd6 more precise way to destroy iterator object
which also fixes the iterator_to_array test
2015-06-19 14:23:32 +02:00
Anatol Belski d81480693c updated NEWS 2015-06-19 12:48:14 +02:00
Anatol Belski 9649cec2a3 added test for bug #69846 2015-06-19 12:46:19 +02:00
Dominic 9c07ae6341 Cleaned white spaces in PHP_INI definition of phar
Removes unnecessary white spaces.
2015-06-19 12:31:03 +02:00
Anatol Belski d079a1c9ea better approach to fix bug #69846
don't destroy the current iterator object too early
2015-06-19 11:22:12 +02:00
Yasuo Ohgaki d263ecd864 Move strlen() check to php_mail_detect_multiple_crlf() 2015-06-19 15:17:56 +09:00
Yasuo Ohgaki dacea3f6fb Fixed Bug #69874 : Can't set empty additional_headers for mail() 2015-06-19 12:19:12 +09:00
Xinchen Hui bb4454b513 Merge branch 'master' of git.php.net:php-src 2015-06-19 09:57:48 +08:00
Xinchen Hui 327e3b338c Micro optimizations for pcre 2015-06-19 09:56:42 +08:00
Bob Weinand e58a1abb00 Fix memory leak (double copy) in SplPriorityQueue 2015-06-19 03:42:59 +02:00
Xinchen Hui 29087f00f6 Merge branch 'PHP-5.6' 2015-06-19 09:36:27 +08:00
Xinchen Hui bca005c8d9 Merge branch 'PHP-5.5' into PHP-5.6 2015-06-19 09:35:52 +08:00
Xinchen Hui 6a8db93115 Merge branch 'patch-3' of https://github.com/s0ph1e/php-src into PHP-5.5 2015-06-19 09:35:28 +08:00
Anatol Belski cdde1be056 Merge branch 'PHP-5.6'
* PHP-5.6:
  update NEWS
  updated NEWS
  fixes bug #69835: phpinfo() does not report many Windows SKUs
2015-06-18 22:05:07 +02:00
Anatol Belski 076a64524f update NEWS 2015-06-18 22:04:55 +02:00
Anatol Belski 962fe01473 update NEWS 2015-06-18 22:04:03 +02:00
Anatol Belski 657f93e7b9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  fixes bug #69835: phpinfo() does not report many Windows SKUs
2015-06-18 22:03:28 +02:00
Anatol Belski c0119ca7f3 updated NEWS 2015-06-18 22:02:37 +02:00
Christian Wenz a85156db7d fixes bug #69835: phpinfo() does not report many Windows SKUs 2015-06-18 22:01:20 +02:00
Anatol Belski 918de41ec2 partial fix to bug #69846 2015-06-18 20:17:04 +02:00
Sophia Nepochataya 1edb2e9a10 Remove excess variable in mail.c (5.5 branch) 2015-06-18 20:06:08 +03:00
Kalle Sommer Nielsen d9d1948396 Minor updates to EXTENSIONS for removed SAPIS etc that I remembered off my head, also add Côme as a maintainer for ldap as per request[1].
[1] http://news.php.net/php.internals/86747
2015-06-18 17:22:22 +02:00
Ferenc Kovacs ff3ee75d91 add a freshly built pear/install-pear-nozlib.phar. created from the current stable branch of pear-core and using the trunk from PHP_Archive where the ereg_ calls are removed already 2015-06-18 16:46:22 +02:00
Lior Kaplan 7a02d138a6 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #69689 (Align PCRE_MINOR with current version)
2015-06-18 17:36:46 +03:00
Lior Kaplan 3930e1f2fa Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #69689 (Align PCRE_MINOR with current version)
2015-06-18 17:35:54 +03:00
Lior Kaplan ca33ae3eb2 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #69689 (Align PCRE_MINOR with current version)
2015-06-18 17:34:53 +03:00
Xinchen Hui d54e6f015b Merge branch 'master' of git.php.net:php-src 2015-06-18 22:30:35 +08:00
Lior Kaplan cc7194dd10 Fixed bug #69689 (Align PCRE_MINOR with current version) 2015-06-18 17:30:21 +03:00
Xinchen Hui 20f3416682 Fixed bug #69872 (uninitialised value in strtr with array) 2015-06-18 22:28:29 +08:00
Bob Weinand fae6bedea5 Fix bug #69871 (short-circuiting failure with smart_branch) 2015-06-18 15:59:00 +02:00
Lior Kaplan 846d0e6fd9 Merge branch 'PHP-5.6'
* PHP-5.6:
  Add CVE to bugs #69545, #69646 and #69667
2015-06-18 16:57:04 +03:00
Lior Kaplan 811816dc25 Add CVE to bugs #69545, #69646 and #69667 2015-06-18 16:56:06 +03:00
Lior Kaplan 0f49c205f4 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Add CVE to bugs #69545, #69646 and #69667
2015-06-18 16:52:51 +03:00
Lior Kaplan 991b2cc37b Add CVE to bugs #69545, #69646 and #69667 2015-06-18 16:51:20 +03:00
Lior Kaplan 189af22cf0 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Add CVE to bugs #69545, #69646 and #69667
2015-06-18 15:50:11 +03:00
Lior Kaplan 5f67caad54 Add CVE to bugs #69545, #69646 and #69667 2015-06-18 15:45:10 +03:00
Xinchen Hui 7cde797ecb Update NEWS 2015-06-18 19:59:15 +08:00
Xinchen Hui 509d75527a Fixed Conditional jump or move depends on uninitialised value(s)
reproduced by Bug #69868's test script
2015-06-18 19:56:50 +08:00
Xinchen Hui c58c5e779a Fixed bug #69868 (Invalid read of size 1 in zend_compile_short_circuiting) 2015-06-18 19:53:26 +08:00
Xinchen Hui eca7f28796 Fixed typo 2015-06-18 13:22:39 +08:00
Xinchen Hui d8c9b1f7ad Seems UPGRADING is not merged... 2015-06-18 13:12:01 +08:00
Aaron Piotrowski 4fb362704c Add tests with invalid Error construction params 2015-06-17 19:49:02 -05:00
Aaron Piotrowski 8813b389ea Fix bug when constructing an Error with invalid params 2015-06-17 19:48:17 -05:00
Anatol Belski f97dbb058f cleanup unused var 2015-06-18 00:53:23 +02:00
Anatol Belski e665b27623 fix c/p test title 2015-06-18 00:33:16 +02:00
Anatol Belski 577c1f3e95 preserve the orig class name when extending the ErrorException 2015-06-18 00:30:16 +02:00
Anatol Belski 9076eb26c7 dont use function to fetch default exception ce 2015-06-18 00:21:38 +02:00
Anatol Belski 8486505651 more tests 2015-06-18 00:15:34 +02:00
Anatol Belski 57940664a8 fix crash when invalid exception arguments passed 2015-06-18 00:14:57 +02:00
Anatol Belski bfdc9e2805 fix unknown size of void error 2015-06-17 23:43:13 +02:00
Sara Golemon 51a259f378 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix buffer growth in sockets/conversion.c
  Implements extended error messages
2015-06-17 13:34:42 -07:00
Sara Golemon c4dd65c723 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix buffer growth in sockets/conversion.c
2015-06-17 13:34:33 -07:00
Sara Golemon d241711f44 Fix buffer growth in sockets/conversion.c
memset() the *end* of the new buffer, not the beginning
Copy the pointer to the buffer, not its initial contents

Fixes bug 69619
2015-06-17 13:34:20 -07:00
Christoph M. Becker 653c869348 Fix #61362: Exception::getTraceAsString and ::__toString scramble Unicode
The logic in smart_str_append_escaped() relies on unsigned values of c, so we
have to declare it as such.
2015-06-17 22:31:07 +02:00
Anatol Belski 269acaa363 Merge branch 'pull-request/1284'
* pull-request/1284:
  Rename interface macros
  Fix typo in UPGRADING
  Move definition of Throwable to zend_exceptions.h/c
  Check for zend_ce_throwable instead
  Fix some missed tests
  Add Throwable tests
  Fix previous exception type check
  Updated UPGRADING with RFC link
  Changed AssertionException to AssertionError
  Update exception error messages
  Throwable method signatures.
  Update exception names in tests after formatting changes.
  Merge exception formatting changes.
  Make zend_get_exception_base static.
  Fix a few missed tests.
  Fix handler double copy.
  Updated tests to reflect exception class changes.
  Remodel exceptions based on Throwable interface
2015-06-17 21:55:03 +02:00
Aaron Piotrowski c5eb924e9e Rename interface macros
Renamed REGISTER_INTERFACE (formerly
REGISTER_ITERATOR_INTERFACE) to
REGISTER_MAGIC_INTERFACE and renamed
REGISTER_ITERATOR_IMPLEMENT to
REGISTER_MAGIC_IMPLEMENT. Both have now been
moved to zend_interfaces.h.
2015-06-17 13:54:09 -05:00
Aaron Piotrowski 47fda68b03 Fix typo in UPGRADING 2015-06-17 13:28:27 -05:00
Andreas Heigl eb702637a9 Implements extended error messages
This commit introduces a new constant that can be used to retrieve more
detailed error messages.

This fixes #47222

The new constant LDAP_OPT_DIAGNOSTIC_MESSAGE is defined in PHP when the
underlying library provides (and understands) it. This is the case in
the current OpenLDAP-implementation.

Tanks to Johnny Willer who provided the solution at http://stackoverflow.com/questions/28765077/get-number-of-ad-errors-with-ldap-and-php-ldap-function-return-unprecise-error/28816473#28816473
2015-06-17 15:39:07 +02:00
Xinchen Hui 7db113fad1 Merge branch 'master' of git.php.net:php-src 2015-06-17 21:17:04 +08:00
Xinchen Hui cdb9de1076 Merge branch 'gitignore' of https://github.com/flaupretre/php-src 2015-06-17 21:14:44 +08:00
Côme Bernigaud 78fe52475f Merge branch 'PHP-5.6'
* PHP-5.6:
  Replaced calls to deprecated openldap functions
  Fixed LDAP tests so that base can exists

Conflicts:
	ext/ldap/ldap.c
2015-06-17 15:08:47 +02:00
Côme Bernigaud e7af0fe1eb Replaced calls to deprecated openldap functions
ldap_unbind_s   -> ldap_unbind_ext
389             -> LDAP_PORT
ldap_init       -> ldap_initialize
ldap_bind_s     -> ldap_sasl_bind_s
ldap_value_free -> ber_memvfree
Also added ldap_is_ldap_url check
2015-06-17 14:36:38 +02:00
Côme Bernigaud a5629f8845 Fixed LDAP tests so that base can exists
Now you can set the base in the env var LDAP_TEST_BASE.
The base has to exists. (before tests were attempting to create/delete
the base itself)
2015-06-17 13:55:13 +02:00
Côme Bernigaud 8836404faf Fixed LDAP tests so that base can exists
Now you can set the base in the env var LDAP_TEST_BASE.
The base has to exists. (before tests were attempting to create/delete
the base itself)
2015-06-17 13:50:14 +02:00
Christoph M. Becker c9554b90e4 added regression test for bug #69840 2015-06-17 13:40:19 +02:00
Francois Laupretre 0683255dad Add missing path to .gitignore 2015-06-17 12:45:41 +02:00
Dmitry Stogov 4a6e1345e2 Use COW to prevent unnecessary duplication of dynamic propertyes of stdClass (and other classes without predefined properties). 2015-06-17 12:50:16 +03:00
Xinchen Hui e011e6fdf4 Add a comment 2015-06-17 17:33:55 +08:00
Dmitry Stogov a524a375d9 Improved class type hints checks, by caching resolved class entries in run-time cache. 2015-06-17 12:07:43 +03:00
Dmitry Stogov 8c8ad8f40e Use better hash functions (reuse key and avoid hash value recalculation) 2015-06-17 12:06:33 +03:00
Dmitry Stogov a0b3fd7803 Improved variable name validation 2015-06-17 12:05:58 +03:00
Kalle Sommer Nielsen ff9e290438 Fixed bug #69840 (iconv_substr() doesn't work with UTF-16BE) 2015-06-17 09:39:45 +02:00
Christoph M. Becker 3697f02212 updated NEWS 2015-06-17 02:27:05 +02:00
Christoph M. Becker 455c7c8e26 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  Fixed bug #61221 - imagegammacorrect function loses alpha channel
2015-06-17 02:25:46 +02:00
Christoph M. Becker e4917bc747 updated NEWS 2015-06-17 02:20:14 +02:00
Christoph M. Becker 7958a7b38f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  Fixed bug #61221 - imagegammacorrect function loses alpha channel
2015-06-17 02:18:53 +02:00
Christoph M. Becker 61d58f2d9e updated NEWS 2015-06-17 02:17:40 +02:00
Christoph M. Becker 7469c7e7d0 Fixed bug #61221 - imagegammacorrect function loses alpha channel
When applying imagegammacorrect() the alpha channel is now fully retained, instead of being completely lost.
2015-06-17 02:15:59 +02:00
Bob Weinand 28756e99be Fix issue with zend_execute_ex replaced by execute_ex upon icall 2015-06-16 23:37:39 +02:00
Bob Weinand 8c4807fe7a Fix infinite loop when running phpdbg via -r(r) 2015-06-16 23:37:39 +02:00
Nikita Popov fb346c8f93 Support references in convert_to_*
conver_to_* functions now accept REFERENCE values, which will be
unwrapped before performing the usual conversion. This is consistent
with convert_scalar_to_number and matches the expected behavior in
a couple random use-sites I checked.

Also includes a couple fixes/cleanups elsewhere and two tests for
cases that previously didn't work (though the reference issue existed
all over the place).
2015-06-16 19:55:33 +02:00
Nikita Popov 4448843b7c Move check for CT div by zero into common function 2015-06-16 18:09:59 +02:00
Nikita Popov 183c00ddb6 Fix references handling in convert_scalar_to_number 2015-06-16 18:02:45 +02:00
Nikita Popov 44b7489fef Drop now superflous check for VIA_TRAMPOLINE
This is not handled by USE_ARG_INFO.
2015-06-16 17:51:18 +02:00
Bob Weinand 52e9a772a3 Fully fixing all the affected const expr cases (see bug #69832) 2015-06-16 16:53:30 +02:00
Dmitry Stogov 3e57e50fb0 Removed useless #ifdef 2015-06-16 17:17:49 +03:00
Kalle Sommer Nielsen 4445268281 Fixed bug #69849 (Broken output of apache_request_headers) 2015-06-16 16:11:21 +02:00
Kalle Sommer Nielsen ab4aae5fd7 Use zend_parse_parameters_none() here 2015-06-16 15:15:27 +02:00
Dmitry Stogov 48ed660cdf Make CALL VM with FP and IP in global registers not to return anything from opcode handlers.
Set OPLINE to NULL to terminate VM loop instead.
This saves 1 CPU instruction for each opcode handler.
2015-06-16 14:11:16 +03:00
Dmitry Stogov 3180b8e100 Fixed bug #69802 (Reflection on Closure::__invoke borks type hint class name) (onr more problem) 2015-06-16 13:29:17 +03:00
Dmitry Stogov ed84bff445 Complete fix for problems related to bug #69802 2015-06-16 11:24:35 +03:00
Dmitry Stogov 6ae375db31 Fixed bug #69845 (ArrayObject with ARRAY_AS_PROPS broken) 2015-06-16 10:53:53 +03:00
Xinchen Hui dc329cd5dc Make the tail slash algined 2015-06-16 11:33:44 +08:00
Dreamsxin 73031d92ce Fix invalid conversion about emalloc 2015-06-16 11:12:37 +08:00
Aaron Piotrowski 47d838a7ca Move definition of Throwable to zend_exceptions.h/c
Also moved REGISTER_ITERATOR_INTERFACE macro to
zend_interfaces.h and renamed it to REGISTER_INTERFACE.
2015-06-15 18:07:27 -05:00
Aaron Piotrowski 0265cf5aeb Check for zend_ce_throwable instead 2015-06-15 17:35:24 -05:00
Andrew Smith 60e658be81 Remove incorrect use of 'irregardless'
Correct word should be simply regardless
2015-06-16 00:31:37 +02:00
Bob Weinand 9db81340ba Fix bug #69832 (Assertion failure) 2015-06-15 17:43:09 +02:00
Xinchen Hui 556423fcd0 Add an entry for dc37d3e8c2 2015-06-15 23:19:32 +08:00
Xinchen Hui 20597ecfb7 Fixed print_ht 2015-06-15 22:31:01 +08:00
Aaron Piotrowski 77cf6d81b4 Fix some missed tests 2015-06-15 08:20:30 -05:00
Dmitry Stogov 33e71d5c20 Fixed bug #69802 (Reflection on Closure::__invoke borks type hint class name) 2015-06-15 15:44:44 +03:00
Dmitry Stogov 562bffe60e Few more lines about opcache file cache. 2015-06-15 14:44:21 +03:00
Dmitry Stogov ae88a243e4 Rmoved opcache.load_comments. 2015-06-15 14:01:26 +03:00
Dmitry Stogov ea14c20ffb Added notes about opcahce.file_cache. 2015-06-15 13:39:45 +03:00
Bob Weinand 6e3e1e31e9 Add phpdbg to allowed cli-SAPIs in opcache 2015-06-15 12:31:46 +02:00
Dmitry Stogov 0a21a0c752 Removed opcache.load_comments configuration directive. Now doc comments loading costs nothing and always enabled. 2015-06-15 13:18:52 +03:00
Derick Rethans 7eae1cc2ce - Updated to version 2015.5 (2015e) 2015-06-15 10:41:32 +01:00
Derick Rethans 8167a4b460 Empty merge 2015-06-15 10:41:31 +01:00
Derick Rethans c661e7680f - Updated to version 2015.5 (2015e) 2015-06-15 10:41:30 +01:00
Derick Rethans 76c3117af5 Empty merge 2015-06-15 10:41:30 +01:00
Derick Rethans 558342124e - Updated to version 2015.5 (2015e) 2015-06-15 10:41:29 +01:00
Derick Rethans 37e3d92d64 - Updated to version 2015.5 (2015e) 2015-06-15 10:28:26 +01:00
Derick Rethans f8a8a2b70a Empty merge 2015-06-15 10:28:25 +01:00
Derick Rethans 22a43410cb - Updated to version 2015.5 (2015e) 2015-06-15 10:28:23 +01:00
Derick Rethans dab34e2433 Empty merge 2015-06-15 10:28:23 +01:00
Derick Rethans 9026a66579 - Updated to version 2015.5 (2015e) 2015-06-15 10:28:22 +01:00
Derick Rethans 40e1ef15be - Updated to version .-96 () 2015-06-15 10:17:27 +01:00
Derick Rethans a33d9d579e Empty merge 2015-06-15 10:17:26 +01:00
Derick Rethans 4903f1d139 - Updated to version .-96 () 2015-06-15 10:17:24 +01:00
Derick Rethans 3f93e4485e Empty merge 2015-06-15 10:17:24 +01:00
Derick Rethans 1d6f4891bd - Updated to version .-96 () 2015-06-15 10:17:23 +01:00
Aaron Piotrowski 103bf7eda0 Add Throwable tests 2015-06-15 01:47:34 -05:00
Aaron Piotrowski 8e7e4fb608 Fix previous exception type check 2015-06-15 01:36:49 -05:00
Xinchen Hui 8a324dae81 Merge branch 'master' of git.php.net:php-src 2015-06-15 13:37:14 +08:00
Xinchen Hui 55b7aa75aa Merge branch 'oci8-php7' of https://github.com/camporter/php-src 2015-06-15 13:35:26 +08:00
Aaron Piotrowski 5ed1b8443d Updated UPGRADING with RFC link 2015-06-15 00:00:19 -05:00
Aaron Piotrowski 482985ca38 Changed AssertionException to AssertionError 2015-06-14 23:52:39 -05:00
Aaron Piotrowski 4d590ac35a Update exception error messages 2015-06-14 22:43:11 -05:00
Aaron Piotrowski 110e0a5a2c Merge branch 'master' into throwable-interface
# Conflicts:
#	Zend/zend_language_scanner.c
#	Zend/zend_language_scanner.l
#	ext/simplexml/tests/SimpleXMLElement_xpath.phpt
2015-06-14 18:53:11 -05:00
vlakoff 6cb7b48846 Fix typo in PHP 7 upgrade notes 2015-06-14 18:35:16 +02:00
Bob Weinand 37c91b8d03 Fix off by one in short_circuiting optimization 2015-06-14 17:47:35 +02:00
Xinchen Hui b7e477a8f9 Fixed bug #69831 (Segmentation fault in curl_getinfo) 2015-06-14 23:10:21 +08:00
Xinchen Hui f1ae57f155 Simplify the condition 2015-06-14 22:56:06 +08:00
Bob Weinand 7221bd682f Revert "Revert "Expand optimizations regarding short-circuting a bit""
This reverts commit 3770a5ac66.
Fixes the bug which probably made make install fail on travis
(It never happened to me that all tests passed, but make install failed...)
2015-06-14 15:46:11 +02:00
Anatol Belski a0556ea64a update UPGRADING 2015-06-14 13:45:40 +02:00
Anatol Belski 241bba9dd9 update UPGRADING 2015-06-14 12:54:19 +02:00
Xinchen Hui 3770a5ac66 Revert "Expand optimizations regarding short-circuting a bit"
This break the CI  (build error)

This reverts commit 3cfa58367b.
2015-06-14 14:27:48 +08:00
Xinchen Hui c196e86520 Fixed skipf 2015-06-14 13:44:39 +08:00
Xinchen Hui dc37d3e8c2 Fixed Bug #69823 (PHP 7.0.0alpha1 segmentation fault when exactly 33 extensions are loaded) 2015-06-14 12:28:40 +08:00
Bob Weinand 3cfa58367b Expand optimizations regarding short-circuting a bit 2015-06-14 06:01:01 +02:00
Bob Weinand b97944c6d1 Add ZEND_ASSERT_CHECK to phpdbg opcode jump list 2015-06-14 04:45:56 +02:00
Bob Weinand f263932f38 Fix short-circuting (bug #69825) 2015-06-14 02:00:55 +02:00
Anatol Belski 6084844fb5 Fix bug #69814 Enabling php_curl, php_mysqli, and php_openssl causes php-cgi to crash 2015-06-13 18:45:27 +02:00
Christoph M. Becker 336cfac7f3 ext/mysql has been removed as of PHP 7.0.0
So remove all related settings from php.ini-*, and add a respective entry in
UPGRADING (strangly, this part of fd1578c has been lost).
2015-06-13 16:44:52 +02:00
Matteo Beccati 1f9df49139 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix copy/paste error in test
2015-06-13 08:08:30 +02:00
Matteo Beccati b564aa95be Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix copy/paste error in test
2015-06-13 08:08:21 +02:00
Matteo Beccati 9e4d720825 Fix copy/paste error in test 2015-06-13 08:07:49 +02:00
Xinchen Hui 25cd356ed8 Revert "We are allowed to break ABI now..."
This reverts commit 30a8000ca1.
2015-06-13 11:05:05 +08:00
Xinchen Hui 30a8000ca1 We are allowed to break ABI now... 2015-06-13 11:03:50 +08:00
Xinchen Hui 20d85e4f02 typo 2015-06-13 10:56:30 +08:00
Xinchen Hui 829c7a1bb0 Merge branch 'master' of git.php.net:php-src 2015-06-13 10:51:15 +08:00
Xinchen Hui d96dda8d49 Fixed Bug #69761 (Serialization of anonymous classes should be prevented)
And also cleanup anonymous class compiling, it make no sense prefix a
namespace to anonymous class name. and it is always lowcased and
interned string.
2015-06-13 10:49:20 +08:00
Anatol Belski b148c50f48 Revert fix for bug #55407
See 8e19705a93 and discussion on
github. The suggestion is to target a proper solution in in 7.1.
2015-06-12 17:56:02 +02:00
Bob Weinand 7c2a0157c7 Cache the class_name typehint key in arg_info
This leads to up to 2% improvement on one tested real world application by not having to always recalculate the lowercased string and its hash
2015-06-12 17:26:53 +02:00
Anthony Ferrara c8723564d4 Add line about scalar type declarations to UPGRADING 2015-06-12 10:05:07 -04:00
Xinchen Hui 49a8f801c7 Fixed bug #69805 (null ptr deref and seg fault in zend_resolve_class_name) 2015-06-12 21:07:23 +08:00
Dmitry Stogov 1c754f0b71 Get rid of more ZVAL_ZVAL() macros 2015-06-12 13:33:14 +03:00
Dmitry Stogov 8e10e8f921 Avoid zval duplication in ZVAL_ZVAL() macro (it was necessary only in few places).
Switch from ZVAL_ZVAL() to simpler macros where possible (it makes sense to review remaining places)
2015-06-12 12:33:23 +03:00
Stanislav Malyshev 7f4e1a0eef 5.4.43 next 2015-06-11 20:46:47 -07:00
Matteo Beccati 730d7b8fca Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #69344 (PDO PgSQL Incorrect binding numeric array with gaps)
  Fix bug #69362 (PDO-pgsql fails to connect if password contains a leading single quote)
  Fixed bug #61574 - No MSI

Conflicts:
	ext/pdo_pgsql/pgsql_statement.c
2015-06-12 02:08:30 +02:00
Matteo Beccati 3bb1a4ffe3 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #69344 (PDO PgSQL Incorrect binding numeric array with gaps)
  Fix bug #69362 (PDO-pgsql fails to connect if password contains a leading single quote)
  Fixed bug #61574 - No MSI

Conflicts:
	ext/pdo_pgsql/pgsql_driver.c
2015-06-12 02:07:02 +02:00
Matteo Beccati b60efdce9f Fix bug #69344 (PDO PgSQL Incorrect binding numeric array with gaps) 2015-06-12 02:05:28 +02:00
Matteo Beccati cd5b7e9688 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #69362 (PDO-pgsql fails to connect if password contains a leading single quote)
  Fixed bug #61574 - No MSI

Conflicts:
	ext/pdo_pgsql/pgsql_driver.c
	win32/install.txt
2015-06-12 00:27:31 +02:00
Matteo Beccati afa4c3e7c7 Fix bug #69362 (PDO-pgsql fails to connect if password contains a leading single quote) 2015-06-12 00:21:48 +02:00
Matteo Beccati 7c0b8f872e Fix bug #69362 (PDO-pgsql fails to connect if password contains a leading single quote) 2015-06-12 00:20:33 +02:00
Christoph M. Becker 9692e74b04 Merge branch 'master' of https://git.php.net/push/php-src 2015-06-11 23:58:34 +02:00
Christoph M. Becker 8de667b8d2 Merge branch 'PHP-5.6' of https://git.php.net/push/php-src into PHP-5.6 2015-06-11 23:55:10 +02:00
Nikita Popov 5d3cf577aa Make convert_to_* safe with rc>1
This only involves switching zval_dtor to zval_ptr_dtor for arrays
and making the convert_to_object for arrays a bit more generic.

All the other changes outside zend_operators.c just make use of
this new ability (use COPY instead of DUP).

What's still missing: Proper references handling. I've seen many
convert_to* calls that will break when a reference is used.

Also fixes bug #69788.
2015-06-11 23:23:57 +02:00
Christoph M. Becker 163f51a4cf Fixed bug #61574 - No MSI
The information regarding the Windows installers (.msi) in install.txt are
obsolete, so let's remove them.
2015-06-11 22:54:47 +02:00
Christoph M. Becker d8223c4424 Fixed bug #61574 - No MSI
The information regarding the Windows installers (.msi) in install.txt are
obsolete, so let's remove them.
2015-06-11 22:52:30 +02:00
Christoph M. Becker 44b09b80f2 Fixed bug #61574 - No MSI
The information regarding the Windows installers (.msi) in install.txt are
obsolete, so let's remove them.
2015-06-11 22:44:14 +02:00
Nikita Popov 25098f0f5c Merge branch 'PHP-5.6' 2015-06-11 22:20:12 +02:00
Nikita Popov 1acf55eb75 Fixed bug #69803 2015-06-11 22:20:05 +02:00
Ferenc Kovacs e3ed32d315 Merge branch 'PHP-5.6'
* PHP-5.6:
  this is in 5.6.10, not in 5.6.9
2015-06-11 20:31:22 +02:00
Ferenc Kovacs 3f471c1c69 this is in 5.6.10, not in 5.6.9 2015-06-11 20:30:56 +02:00
Nikita Popov 580eb56fb7 Merge branch 'PHP-5.6'
Conflicts:
	Zend/zend_generators.c
2015-06-11 17:44:51 +02:00
Nikita Popov 8405265578 Fix bug #69740 2015-06-11 17:40:10 +02:00
Anatol Belski 8cfe28259e Merge branch 'PHP-5.6'
* PHP-5.6:
  rework that test to allow delta for rounding errors
2015-06-11 17:07:24 +02:00
Anatol Belski 702e349df4 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  rework that test to allow delta for rounding errors
2015-06-11 17:06:46 +02:00
Anatol Belski a037b6de21 rework that test to allow delta for rounding errors
If this workout doesn't make travis happy, the patch needs to be
reviewed as the leak might still persist.
2015-06-11 17:05:03 +02:00
Anatol Belski 227680d6da Merge branch 'PHP-5.6'
* PHP-5.6:
  improve test
2015-06-11 15:37:06 +02:00
Anatol Belski d777669679 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  improve test
2015-06-11 15:36:30 +02:00
Anatol Belski dcfd1153ec improve test 2015-06-11 15:36:02 +02:00
Anatol Belski 0228ccf246 Merge branch 'PHP-5.6'
* PHP-5.6:
  added test for bug #69646
2015-06-11 12:08:09 +02:00
Anatol Belski b19790ab34 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  added test for bug #69646
2015-06-11 12:07:32 +02:00
Anatol Belski e711325ca6 added test for bug #69646 2015-06-11 12:06:59 +02:00
Stanislav Malyshev f69e5d3b19 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix bad copypaste
2015-06-11 01:52:39 -07:00
Stanislav Malyshev 9d162550ac Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix bad copypaste
2015-06-11 01:52:23 -07:00
Stanislav Malyshev cd927cca50 fix bad copypaste 2015-06-11 01:51:55 -07:00
Xinchen Hui 141f0ca18c Fixed Bug #69796 mysqli_stmt::fetch doesn't assign null values to bound variables 2015-06-11 13:35:43 +08:00
Xinchen Hui 7f60923199 Fixed internal class flag restore 2015-06-11 12:53:56 +08:00
Dmitry Stogov be988aba36 Compile-time constant folding 2015-06-11 01:57:37 +03:00
Ferenc Kovacs 21719c760b Merge branch 'PHP-5.6'
* PHP-5.6:
  make it possible to set the re2c and yacc paths via environment variables for genfiles
2015-06-11 00:14:39 +02:00
Ferenc Kovacs f4d820f2ee Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  make it possible to set the re2c and yacc paths via environment variables for genfiles
2015-06-11 00:13:40 +02:00
Ferenc Kovacs 72b8a30c1a make it possible to set the re2c and yacc paths via environment variables for genfiles 2015-06-11 00:13:08 +02:00
Márcio Almada fdda34e0bc fix bad formatted "undefined offset" notice when key is negative 2015-06-10 22:18:23 +02:00
Dmitry Stogov 51dbf73954 Fetch operands of opceodes for binary operators in certain order (from left to right). 2015-06-10 22:25:24 +03:00
Anatol Belski 8ad5111d1c Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  fix memory leak in pdo_pgsql closeCursor (bug 69752)
2015-06-10 16:43:33 +02:00
Anatol Belski 45521b08b8 updated NEWS 2015-06-10 16:42:52 +02:00
Anatol Belski 2b0a19f4ed updated NEWS 2015-06-10 16:41:33 +02:00
Anatol Belski effbc87ff1 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  fix memory leak in pdo_pgsql closeCursor (bug 69752)
2015-06-10 16:41:07 +02:00
Anatol Belski 9d5ab7e22f updated NEWS 2015-06-10 16:40:38 +02:00
Philip Hofstetter 9ba3a4c66a fix memory leak in pdo_pgsql closeCursor (bug 69752)
the parent PDO closeCursor method resets the pdo_stmt_t's executed flag
which is used by the postgres driver as a flag to check whether to
allocate memory for the column data or not.

This means that after the parent closeCursor() has been called, the
pdo_pgsql driver will allocate a new buffer for the columns, so the
existing buffer should be freed when the cursor is being closed.
2015-06-10 16:36:00 +02:00
Anatol Belski 9ec3bb8a98 Merge branch 'PHP-5.6'
* PHP-5.6:
  regenerated the ini scanner
2015-06-10 13:17:10 +02:00
Anatol Belski b1f3403c98 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  regenerated the ini scanner
2015-06-10 13:16:29 +02:00
Anatol Belski f14141aca2 regenerated the ini scanner
follow up fix for bug #69551
2015-06-10 13:15:01 +02:00
Anatol Belski 56ad2fcf20 updated NEWS 2015-06-10 11:27:24 +02:00
Anatol Belski 23e8956386 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  Fix #69781: phpinfo() reports Professional Editions of Windows 7/8/8.1/10 as "Business"
  Revert "Fix #69781: phpinfo() reports Professional Editions of Windows 7/8/8.1/10 as "Business""
  Fix #69781: phpinfo() reports Professional Editions of Windows 7/8/8.1/10 as "Business"
2015-06-10 11:26:49 +02:00
Anatol Belski 2c55ae5261 updated NEWS 2015-06-10 11:26:00 +02:00
Anatol Belski 64df05d5b1 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  Fix #69781: phpinfo() reports Professional Editions of Windows 7/8/8.1/10 as "Business"
  Revert "Fix #69781: phpinfo() reports Professional Editions of Windows 7/8/8.1/10 as "Business""
  Fix #69781: phpinfo() reports Professional Editions of Windows 7/8/8.1/10 as "Business"
2015-06-10 11:25:21 +02:00
Anatol Belski 60e181c20a updated NEWS 2015-06-10 11:24:45 +02:00
Christian Wenz 0c8136654d Fix #69781: phpinfo() reports Professional Editions of Windows 7/8/8.1/10 as "Business" 2015-06-10 11:22:30 +02:00
Christian Wenz 82e5260104 Revert "Fix #69781: phpinfo() reports Professional Editions of Windows 7/8/8.1/10 as "Business""
This reverts commit 4a05c81b85336b76d05017cc86372fbd04871e3f.
2015-06-10 11:22:29 +02:00
Christian Wenz 741b949a6f Fix #69781: phpinfo() reports Professional Editions of Windows 7/8/8.1/10 as "Business" 2015-06-10 11:22:28 +02:00
Anatol Belski dbef99ba6e updated NEWS 2015-06-10 10:47:06 +02:00
Anatol Belski a96345d12b Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  fixed bug, where a linebreak immediately after an opening quote of a value caused a segfault
  made failing test more meaningful
  added failing test
2015-06-10 10:44:44 +02:00
Anatol Belski f4707ed256 updated NEWS 2015-06-10 10:44:02 +02:00
Anatol Belski ca467d5117 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  fixed bug, where a linebreak immediately after an opening quote of a value caused a segfault
  made failing test more meaningful
  added failing test
2015-06-10 10:43:23 +02:00
Anatol Belski aef5a02ebb updated NEWS 2015-06-10 10:42:31 +02:00
Christoph M. Becker 36222eb4cc fixed bug, where a linebreak immediately after an opening quote of a value caused a segfault 2015-06-10 10:39:37 +02:00
Christoph M. Becker 2ba9681e8e made failing test more meaningful 2015-06-10 10:39:36 +02:00
Christoph M. Becker 616b932ab0 added failing test 2015-06-10 10:39:35 +02:00
Ferenc Kovacs 5ff259ebb7 Merge branch 'PHP-5.6'
* PHP-5.6:
  add missing NEWS entries
  add missing NEWS entries
2015-06-10 09:39:38 +02:00
Ferenc Kovacs b5d5baa882 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  add missing NEWS entries
2015-06-10 09:37:00 +02:00
Ferenc Kovacs 0d7f22c157 add missing NEWS entries 2015-06-10 09:36:53 +02:00
Ferenc Kovacs 2b8ba3e9f8 add missing NEWS entries 2015-06-10 09:35:38 +02:00
Stanislav Malyshev d4407e1cb9 Merge branch 'PHP-5.6'
* PHP-5.6:
  add NEWS
  Fixed bug #68776
  fix test
  update NEWS
  Fix bug #69646	OS command injection vulnerability in escapeshellarg
  Fix #69719 - more checks for nulls in paths
  fix test description
  Fixed Buf #68812 Unchecked return value.

Conflicts:
	ext/dom/document.c
	ext/gd/gd.c
	ext/standard/exec.c
2015-06-09 21:39:59 -07:00
Stanislav Malyshev 563462fbf8 Fixed bug #69646 (OS command injection vulnerability in escapeshellarg) 2015-06-09 21:37:17 -07:00
Stanislav Malyshev 60a2742fd2 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  add NEWS
2015-06-09 21:35:41 -07:00
Stanislav Malyshev c2d4704744 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add NEWS
2015-06-09 21:35:31 -07:00
Stanislav Malyshev f1ffb4b1ad add NEWS 2015-06-09 21:35:18 -07:00
Stanislav Malyshev c095af584c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #68776
2015-06-09 21:34:06 -07:00
Stanislav Malyshev e10af61862 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #68776
2015-06-09 21:33:38 -07:00
Yasuo Ohgaki 9d168b863e Fixed bug #68776 2015-06-09 21:32:54 -07:00
Stanislav Malyshev 1346c3df42 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix test
  update NEWS
2015-06-09 17:12:25 -07:00
Stanislav Malyshev 6b53b7cd84 Merge branch 'PHp-5.4' into PHP-5.5
* PHp-5.4:
  fix test
  update NEWS
2015-06-09 17:12:11 -07:00
Stanislav Malyshev eee8b6c33f fix test 2015-06-09 17:11:33 -07:00
Stanislav Malyshev 539738c438 update NEWS 2015-06-09 16:23:05 -07:00
Stanislav Malyshev 8b1919ed73 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #69646	OS command injection vulnerability in escapeshellarg
  Fix #69719 - more checks for nulls in paths
  fix test description
  Fixed Buf #68812 Unchecked return value.
2015-06-09 15:32:27 -07:00
Stanislav Malyshev 4e2fb47092 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #69646	OS command injection vulnerability in escapeshellarg
  Fix #69719 - more checks for nulls in paths
  fix test description
  Fixed Buf #68812 Unchecked return value.

Conflicts:
	ext/dom/document.c
	ext/gd/gd.c
2015-06-09 15:31:27 -07:00
Ferenc Kovacs e4aa5c0510 fix typo 2015-06-09 23:14:11 +02:00
Stanislav Malyshev 8036758491 Fix bug #69646 OS command injection vulnerability in escapeshellarg 2015-06-09 10:52:38 -07:00
Stanislav Malyshev f7d7befae8 Fix #69719 - more checks for nulls in paths 2015-06-09 10:52:38 -07:00
Ferenc Kovacs 7ec3016e29 fix hard-coded path in test 2015-06-09 16:42:02 +02:00
Ferenc Kovacs 2d962af4c0 prepare for 7.0.0alpha1 2015-06-09 14:20:55 +02:00
Ferenc Kovacs b6005f72fc Merge branch 'PHP-5.6'
* PHP-5.6:
  fix NEWS
2015-06-09 13:57:41 +02:00
Ferenc Kovacs 8574290d9b fix NEWS 2015-06-09 13:57:28 +02:00
Ferenc Kovacs 901ff81196 Merge branch 'PHP-5.6'
* PHP-5.6:
  these will be part of 5.6.11
2015-06-09 13:41:25 +02:00
Ferenc Kovacs 72d0796d66 these will be part of 5.6.11 2015-06-09 13:41:00 +02:00
Ferenc Kovacs 7a9facd8c6 Merge branch 'PHP-5.6'
* PHP-5.6:
  add missing NEWS entry
2015-06-09 13:32:11 +02:00
Ferenc Kovacs 632c5d6250 add missing NEWS entry 2015-06-09 13:31:45 +02:00
Julien Pauli 3601b61f3d Merge branch 'PHP-5.6'
* PHP-5.6:
  5.5.27 now
2015-06-09 10:36:20 +02:00
Julien Pauli 0bfb454acb Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  5.5.27 now

Conflicts:
	configure.in
	main/php_version.h
2015-06-09 10:35:42 +02:00
Julien Pauli 5f7c1917e3 5.5.27 now 2015-06-09 10:33:29 +02:00
Remi Collet 531c306fe6 fix test description 2015-06-09 09:18:54 +02:00
Remi Collet 1ad58ce12e Merge branch 'PHP-5.6'
* PHP-5.6:
  fix test description
  Fixed Buf #68812 Unchecked return value.
  Fixed Buf #68812 Unchecked return value.
2015-06-09 09:14:05 +02:00
Remi Collet 5eecc6bcde Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix test description
  Fixed Buf #68812 Unchecked return value.
2015-06-09 09:13:19 +02:00
Remi Collet b347f2c47a fix test description 2015-06-09 09:12:59 +02:00
Lior Kaplan d8d5dc5d32 Merge branch 'PHP-5.6'
* PHP-5.6:
  Upgrade bundled sqlite to 3.8.10.2
2015-06-08 23:22:03 +03:00
George Wang 81ab4b12aa Fixed Buf #68812 Unchecked return value. 2015-06-08 15:47:11 -04:00
George Wang eb15ec385e Fixed Buf #68812 Unchecked return value. 2015-06-08 15:46:56 -04:00
George Wang 6bb24823d0 Fixed Buf #68812 Unchecked return value. 2015-06-08 15:46:40 -04:00
Lior Kaplan b861a4a4d2 NEWS entry for: Upgrade bundled sqlite to 3.8.10.2
Includes fixes for CVE-2015-3414, CVE-2015-3415, CVE-2015-3416
2015-06-08 22:39:00 +03:00
George Wang 78d1228ef6 Fixed Buf #68812 Unchecked return value. 2015-06-08 15:38:59 -04:00
Lior Kaplan 79528c5e24 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Upgrade bundled sqlite to 3.8.10.2
2015-06-08 22:37:02 +03:00
Lior Kaplan f5bf7b6b27 NEWS entry for: Upgrade bundled sqlite to 3.8.10.2
Includes fixes for CVE-2015-3414, CVE-2015-3415, CVE-2015-3416
2015-06-08 22:32:29 +03:00
Lior Kaplan eb7c33b204 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS entry for: Upgrade bundled sqlite to 3.8.10.2
  Upgrade bundled sqlite to 3.8.10.2
  Add CVE used in PHP 5.4.39, 5.4.40, 5.4.41
  Add CVE to #68598
2015-06-08 22:29:35 +03:00
Lior Kaplan b5d1530e4f Upgrade bundled sqlite to 3.8.10.2
Includes fixes for CVE-2015-3414, CVE-2015-3415, CVE-2015-3416 done in 3.8.9
2015-06-08 22:29:10 +03:00
Lior Kaplan 33a9f01d36 NEWS entry for: Upgrade bundled sqlite to 3.8.10.2
Includes fixes for CVE-2015-3414, CVE-2015-3415, CVE-2015-3416
2015-06-08 22:23:22 +03:00
Lior Kaplan 7ced40e24e Upgrade bundled sqlite to 3.8.10.2
Includes fixes for CVE-2015-3414, CVE-2015-3415, CVE-2015-3416 done in 3.8.9
2015-06-08 22:17:06 +03:00
Lior Kaplan 4cc46b2a99 Add CVE used in PHP 5.4.39, 5.4.40, 5.4.41 2015-06-08 22:12:42 +03:00
Lior Kaplan 90a8ea9827 Add CVE to #68598 2015-06-08 22:04:42 +03:00
Anatol Belski c8cf54719f Merge branch 'PHP-5.6'
* PHP-5.6:
  fixed test related to fix for bug #67805
2015-06-08 13:28:53 +02:00
Anatol Belski 18b3508c3c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fixed test related to fix for bug #67805
2015-06-08 13:28:23 +02:00
Anatol Belski 17f2d1e8a7 fixed test related to fix for bug #67805 2015-06-08 13:27:22 +02:00
Anatol Belski bc305d9c05 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  Fix bug #67805 - SplFileObject setMaxLineLength.
2015-06-08 12:13:12 +02:00
Anatol Belski 4482c03622 updated NEWS 2015-06-08 12:12:24 +02:00
Anatol Belski 3c02e6f457 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  Fix bug #67805 - SplFileObject setMaxLineLength.
2015-06-08 12:11:58 +02:00
Anatol Belski b754e3ec4b updated NEWS 2015-06-08 12:11:29 +02:00
Willian Gustavo Veiga b470d9a0d6 Fix bug #67805 - SplFileObject setMaxLineLength. 2015-06-08 12:08:05 +02:00
Willian Gustavo Veiga 8e747f6833 Fix bug #67805 - SplFileObject setMaxLineLength. 2015-06-08 11:36:27 +02:00
Anatol Belski 0cd86f6b77 fix dir separator in test 2015-06-08 11:29:04 +02:00
Anatol Belski 4cdfbbd399 updated UPGRADING and NEWS 2015-06-08 10:15:03 +02:00
Christoph M. Becker b8d8c75c4c added LIBXML_BIGLINES constant 2015-06-08 09:59:37 +02:00
Christoph M. Becker a1951c2e0a added tests for bug #54138 2015-06-08 09:59:36 +02:00
Christoph M. Becker f661b10536 replaced / in filename with DIRECTORY_SEPARATOR according to performance warning on DOMDocument::load man page 2015-06-08 09:40:06 +02:00
Christoph M. Becker 03399721f4 added SKIPIF conditional to check for DOM availability 2015-06-08 09:40:05 +02:00
Christoph M. Becker 5fed10e109 added XFAIL test for bug #69753 2015-06-08 09:40:04 +02:00
Matteo Beccati 11ece75291 Merge remote-tracking branch 'mbeccati/reflection-typehints-sth-v5'
* mbeccati/reflection-typehints-sth-v5:
  Reflection support for type hints and return types
  Merge remote-tracking branch 'pollita/reflection.typehint'

As discussed on https://github.com/php/php-src/pull/1190
2015-06-08 08:49:15 +02:00
Matteo Beccati ec281fef48 Reflection support for type hints and return types 2015-06-08 08:46:30 +02:00
Sara Golemon cf8898fbd5 Merge remote-tracking branch 'pollita/reflection.typehint'
Conflicts:
	ext/reflection/php_reflection.c
	ext/reflection/tests/ReflectionExtension_getClasses_basic.phpt
2015-06-08 08:33:32 +02:00
Christoph M. Becker 9c8696e645 fixed language dependent Windows socket tests 2015-06-08 08:13:30 +02:00
Anatol Belski 349cf3229c add error message 2015-06-08 07:06:21 +02:00
Xinchen Hui 6c89d2d9de Also reflects the case change 2015-06-08 12:37:11 +08:00
Xinchen Hui cea801cce2 Fixed bug #69767 (Default parameter value with wrong type segfaults) 2015-06-08 11:47:22 +08:00
Jakub Zelenka 61de771afa Improve json parser code 2015-06-07 15:22:09 +01:00
Cameron Porter 3cf0bea098 Get oci8 extension compiling with php7. 2015-06-06 13:05:19 -05:00
Andrea Faulds 05ef3b7c0d Fix typo in Unicode escape test 2015-06-06 15:29:56 +01:00
Anatol Belski 11230328b5 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS for bug #69642
  updated NEWS for bug #69642 fix
2015-06-05 17:59:39 +02:00
Anatol Belski 9fde041a7d Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS for bug #69642 fix
2015-06-05 17:59:08 +02:00
Anatol Belski fb49ffe62e updated NEWS for bug #69642 2015-06-05 17:58:39 +02:00
Anatol Belski 75c2aa9d3a updated NEWS for bug #69642 fix 2015-06-05 17:56:57 +02:00
Dmitry Stogov 869f662cdd Use better zend_hash_* functions 2015-06-05 13:54:57 +03:00
Dmitry Stogov 3186f913eb Fixed incorrect ZEND_FILE_LINE_CC usage 2015-06-05 13:54:10 +03:00
Xinchen Hui 0655abef1a Improve the fix for bug #69756 2015-06-05 18:42:21 +08:00
Dmitry Stogov ed5fbf5e49 Fixed bug #69756 (Fatal error: Nesting level too deep - recursive dependency? with ===) 2015-06-05 10:04:58 +03:00
Xinchen Hui d251ced225 Merge branch 'master' of git.php.net:php-src 2015-06-05 11:54:53 +08:00
Xinchen Hui 497f9f2cda Fixed bug #69758 (Item added to array not being removed by array_pop/shift) 2015-06-05 11:54:22 +08:00
Dmitry Stogov 7f39ee7159 Delay checks for undefined CV variables after checks for fast paths. 2015-06-05 01:53:32 +03:00
Gunter Grodotzki 5f80da29ee fix typo, see #68476 2015-06-04 18:27:08 +02:00
Dmitry Stogov aca6a1a1c9 Convert "switch" into series of "if". This allows better fast-path placement, additional specialization and makes final code less. 2015-06-04 19:14:16 +03:00
Dmitry Stogov 0040efb170 Avoid useless copying and duplication 2015-06-04 19:13:40 +03:00
Dmitry Stogov f07d770f0b Specialize out useless checks. Only IS_VAR may be EG(error). 2015-06-04 17:20:37 +03:00
Bob Weinand 9ca564d5f3 fix bitwise object operations 2015-06-04 16:09:22 +02:00
Xinchen Hui c6db18f9ab Merge branch 'PHP-5.6' 2015-06-04 21:09:06 +08:00
Xinchen Hui 93b7ba4c9f Merge branch 'PHP-5.5' into PHP-5.6 2015-06-04 21:08:57 +08:00
Xinchen Hui 9a0bdd9069 Fixed invalid read druing apache reload 2015-06-04 21:08:36 +08:00
Dmitry Stogov adb5f93f85 Fixed bug #69755 (segfault in ZEND_CONCAT_SPEC_TMPVAR_CONST_HANDLER) 2015-06-04 09:38:22 +03:00
Bob Weinand 1d3f77d13d Fix Bug #69754 (Compile failure with ::class in array) 2015-06-03 23:59:59 +02:00
Dmitry Stogov 2fcdad6a58 Removed useless code (there is nothing to free for string offsets). 2015-06-03 22:23:06 +03:00
Dmitry Stogov 36c36ee56d Removed dead code (IS_CONST operand can't be IS_OBJECT) 2015-06-03 19:29:03 +03:00
Dmitry Stogov 544fb5c7bc Separate rare used increment/decrement/assign_op of overloaded properies into non inlined functions. 2015-06-03 18:44:25 +03:00
Dmitry Stogov 58dc22cc13 Reorder conditions to check for fast paths first 2015-06-03 17:20:47 +03:00
Dmitry Stogov ce2a78939d isset() micro-optimisation 2015-06-03 16:27:38 +03:00
Dmitry Stogov b21191ba78 Removed commented code 2015-06-03 14:49:29 +03:00
Dmitry Stogov 6bcf121f5b micro-optimization 2015-06-03 13:43:05 +03:00
Dmitry Stogov c09698753e CONCAT optimization 2015-06-03 11:15:28 +03:00
Bob Weinand 8a1c5d15d2 Use CG(one_char_string) if possible in bitwise string operations
emalloc() is not cheap... Also, a good part of bitwise string ops out there are on single bytes.
2015-06-03 02:57:16 +02:00
Anatol Belski 06332e6706 introduced DllMain for the main php DLL
The particular need on this is because of the current situation
with determining the background functionality for the
gettimeofday. DllMain allows to initialize stuff before the DLL
can be actually used. Thus, we use different time API on win7
and win8 and later, so the function pointer needs to be
initialized before anything in the DLL could even demand it.

The change also opens the door for the further optimizations,
as now we're able to do the very basic initializations for the
whole DLL before it could ever start to live. Fe on this way the
TLS initialization could be done, when utilizing the
DLL_THREAD_ATTACH/DETACH case. Whether it's really usable in
portable way should be synced with other platforms.

Be aware that it's dangerous as it possibly causes dead locks.
So to use with care. One willing to add items to DllMain should
better read the documentation twice and even then try to defer
the necessary action.
2015-06-02 15:56:32 +02:00
Anatol Belski 29a91e52ad a bit more clearness fir --with-mp 2015-06-02 15:56:30 +02:00
Dmitry Stogov 8a089e7e71 Call zend_array_dup() instead of zval_copy_ctor(). 2015-06-02 12:03:34 +03:00
Dmitry Stogov 0d054f5faf Avoid useless duplication. Constant values have to be duplicated only for internal constants in ZTS build, to prevent simultaneous modification of reference counters from different threads. 2015-06-02 12:01:34 +03:00
Stanislav Malyshev c0a54d62e2 fix test 2015-06-01 23:58:19 -07:00
Stanislav Malyshev 49ae1fe8d0 Merge branch 'pull-request/1310'
* pull-request/1310:
  Fix GD tests #69698
2015-06-01 22:57:05 -07:00
Stanislav Malyshev 75d16a4564 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #69737 - Segfault when SplMinHeap::compare produces fatal error

Conflicts:
	ext/spl/spl_heap.c
2015-06-01 22:55:16 -07:00
Stanislav Malyshev e96c64ed5e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #69737 - Segfault when SplMinHeap::compare produces fatal error
2015-06-01 22:53:56 -07:00
Stanislav Malyshev 1cbd25ca15 Fix bug #69737 - Segfault when SplMinHeap::compare produces fatal error 2015-06-01 22:07:16 -07:00
Dmitry Stogov ce862a25d5 Reorder conditions to check for fast paths first. 2015-06-01 17:22:04 +03:00
Dmitry Stogov 8bf76bae40 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #69732 (can induce segmentation fault with basic php code).
2015-06-01 12:21:48 +03:00
Dmitry Stogov f863d89b5c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #69732 (can induce segmentation fault with basic php code).

Conflicts:
	Zend/zend_vm_execute.h
2015-06-01 12:17:32 +03:00
Dmitry Stogov 9031a902e3 Fixed bug #69732 (can induce segmentation fault with basic php code). 2015-06-01 11:40:14 +03:00
Dmitry Stogov 1654442ac3 Fixed integer overflow during HashTable size calculation 2015-06-01 10:51:06 +03:00
Stanislav Malyshev c75ac9e456 Merge branch 'pull-request/1314'
* pull-request/1314:
  Fixed typos in UPGRADING.INTERNALS
2015-05-31 19:40:31 -07:00
Stanislav Malyshev 60e92a3b84 set initialized flag after actual initialization happened 2015-05-31 19:37:56 -07:00
Andrew Murray 00790467b7 Fixed typos in UPGRADING.INTERNALS 2015-06-01 11:13:09 +10:00
Stanislav Malyshev e0fb8c8b7f Merge branch 'PHP-5.6'
* PHP-5.6:
  improve fix for Bug #69545
2015-05-31 17:30:41 -07:00
Stanislav Malyshev 4758505b27 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  improve fix for Bug #69545
2015-05-31 17:30:29 -07:00
Stanislav Malyshev 8746163153 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  improve fix for Bug #69545
2015-05-31 17:29:53 -07:00
Stanislav Malyshev 0765623d69 improve fix for Bug #69545 2015-05-31 17:29:00 -07:00
Stanislav Malyshev 07241bbd70 FIx darwin build 2015-05-31 14:52:08 -07:00
Anatol Belski 8e54f91cc9 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix phpize mode for manifest embedding
2015-05-31 23:04:11 +02:00
Anatol Belski 6fea2f1dd7 fix phpize mode for manifest embedding 2015-05-31 23:03:47 +02:00
Anatol Belski 34bcd69f82 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix phpize mode for manifest embedding
2015-05-31 23:02:01 +02:00
Anatol Belski f029a2856b fix phpize mode for manifest embedding 2015-05-31 23:01:21 +02:00
Christoph M. Becker c1401ad7b6 split simplexml tests for 7 2015-05-31 21:35:21 +02:00
Anatol Belski 4309f16614 Merge branch 'PHP-5.6'
* PHP-5.6:
  split the original test to check behaviour diff on 32- and 64-bit
  recovered original meaning of SXE xpath test
2015-05-31 21:32:04 +02:00
Anatol Belski 6f1c006b6d Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  split the original test to check behaviour diff on 32- and 64-bit
  recovered original meaning of SXE xpath test
2015-05-31 21:30:46 +02:00
Christoph M. Becker b24fedbd24 split the original test to check behaviour diff on 32- and 64-bit 2015-05-31 21:28:44 +02:00
Christoph M. Becker e44b040faf recovered original meaning of SXE xpath test 2015-05-31 21:27:02 +02:00
Anatol Belski cbadc05d32 Merge branch 'PHP-5.6'
* PHP-5.6:
  backport the basic code to properly recognize win 8.1 and 10
  backport the manifest changes for makefile
  backport the manifest changes in js
  add default manifest
  add test
2015-05-31 19:33:34 +02:00
Anatol Belski 021effbe97 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  backport the basic code to properly recognize win 8.1 and 10
  backport the manifest changes for makefile
  backport the manifest changes in js
  add default manifest
  add test
2015-05-31 19:32:21 +02:00
Anatol Belski 1e9522021a backport the basic code to properly recognize win 8.1 and 10 2015-05-31 19:01:58 +02:00
Anatol Belski 31d59bf915 backport the manifest changes for makefile 2015-05-31 18:59:00 +02:00
Anatol Belski 50d4ea90b3 backport the manifest changes in js 2015-05-31 18:53:51 +02:00
Anatol Belski 7e731e4d9d add default manifest 2015-05-31 18:17:58 +02:00
Anatol Belski 05351f9ccb add test 2015-05-31 18:13:33 +02:00
Xinchen Hui d2649af6b9 Fixed Bug #69733 (PHP fails to build with --enable-phpdbg-debug) 2015-05-31 13:35:01 +08:00
Stanislav Malyshev 66153ba153 Merge branch 'PHP-5.6'
* PHP-5.6:
  Update PCRE version (bug #69689)
  move test
  NEWS 5.4
  fix new test
  Fixed Bug #69667 segfault in php_pgsql_meta_data
  5.4.42 next
2015-05-30 21:19:05 -07:00
Stanislav Malyshev 60c925fd41 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Update PCRE version (bug #69689)
  move test
  NEWS 5.4
  fix new test
  Fixed Bug #69667 segfault in php_pgsql_meta_data
  5.4.42 next
2015-05-30 21:18:50 -07:00
Stanislav Malyshev 930fb8b1f3 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Update PCRE version (bug #69689)
  move test
  NEWS 5.4
  fix new test
  Fixed Bug #69667 segfault in php_pgsql_meta_data
  5.4.42 next

Conflicts:
	configure.in
	main/php_version.h
2015-05-30 21:18:28 -07:00
Stanislav Malyshev f38ca75a3c Update PCRE version (bug #69689) 2015-05-30 21:17:16 -07:00
Anatol Belski 9237a0de1c run credits script 2015-05-30 09:43:10 +02:00
Anatol Belski a71dce77c6 updated UPGRADING 2015-05-30 09:37:08 +02:00
Anatol Belski d361c72168 removed sapi/nsapi 2015-05-30 09:26:40 +02:00
Anatol Belski 042ecad749 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  Refactored the fix for bug #66084, by cmb@php.net
  Merge the fix for #69703 to 5.5 per request from Julien
2015-05-29 21:19:31 +02:00
Anatol Belski ff30d0319a updated NEWS 2015-05-29 21:18:37 +02:00
Anatol Belski 8e02be16d7 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Refactored the fix for bug #66084, by cmb@php.net
  Merge the fix for #69703 to 5.5 per request from Julien
2015-05-29 21:18:04 +02:00
Anatol Belski 5683b6fa39 Refactored the fix for bug #66084, by cmb@php.net 2015-05-29 21:16:56 +02:00
Hannes Magnusson 8eea193470 Fix typos and add link to the phpng upgrading wiki page 2015-05-29 19:07:14 +00:00
Christoph M. Becker 36eb66692c removed test for unrelated bug #68946 2015-05-29 20:43:40 +02:00
Christoph M. Becker f27b9ead6b fixed whitespace dependend behavior of casting SimpleXMLElements to boolean 2015-05-29 20:43:38 +02:00
Christoph M. Becker 8e5b906459 added tests for bug #61335, bug #67572 and bug #68946 (the latter already passing, but better safe than sorry) 2015-05-29 20:43:36 +02:00
Christoph M. Becker db4a6def47 fixed whitespace depending (mis)behavior of var_dump'ing and print_r'ing SimpleXMLElements 2015-05-29 20:43:34 +02:00
Christoph M. Becker 1a3a674ee6 added failing tests for bug #62639, bug #67116, bug #69169 and bug #69491 2015-05-29 20:43:33 +02:00
Metalaka 5d8055e14d Fix GD tests #69698
May be take a look to [travis/compile.sh](https://github.com/php/php-src/blob/4b9299d155316e4e49d87d3941eab1ca95b2462a/travis/compile.sh#L60)
2015-05-29 19:18:53 +02:00
Antony Dovgal bcd5853a0b NEWS and UPGRADING entries for PR #1309 2015-05-29 18:16:07 +03:00
Antony Dovgal 110a146b88 add tests for proc_open() and pipes 2015-05-29 17:35:12 +03:00
Antony Dovgal ad60549958 remove hardcoded limit on number of pipes in proc_open() 2015-05-29 15:30:06 +03:00
Anatol Belski 6f46fa376b add test 2015-05-29 11:48:00 +02:00
Anatol Belski e76cf8432d fix windows version constants initialization with nts 2015-05-29 11:47:58 +02:00
Nikita Popov 39753fa222 Merge branch 'PHP-5.6'
Preserving HAS_RETURN_TYPE for __invoke() here as well.

Conflicts:
	Zend/zend_alloc.c
2015-05-29 11:11:02 +02:00
Nikita Popov 402f697068 Remove zend_init_list
No longer used - zend_add_to_list already covers this.

Also marked zend_add_to_list as static and dropped it from the header.
2015-05-29 11:07:51 +02:00
Nikita Popov 21a29b4be3 Drop unnecessary checks for op_array->filename
We always require a filename.
2015-05-29 11:07:51 +02:00
Nikita Popov e7d0ca39e5 Preserve VARIADIC flag for Closure::__invoke()
The 13 arguments are for the benefit of PHP 7, where the first
twelve use the bitmask.
2015-05-29 11:07:23 +02:00
Kalle Sommer Nielsen 7dcfdbbee4 Remove T1Lib support (see #69698)
# Also removes imagepscopyfont() which was never available (commented out)
2015-05-29 09:18:36 +02:00
Kalle Sommer Nielsen 0e079f9358 Note getrusage() for Windows in UPGRADING 2015-05-29 09:12:25 +02:00
Xinchen Hui d844e96464 Merge branch 'master' of git.php.net:php-src 2015-05-29 13:51:02 +08:00
Xinchen Hui ed8d1ba7dd Fixed bug #69723 (Passing parameters by reference and array_column) 2015-05-29 13:50:44 +08:00
Anatol Belski 7ab99ed4b0 manifest for the main php dll needs to be copied manually 2015-05-29 00:29:25 +02:00
Anatol Belski 66d57be2b0 pack the default manifest for devel 2015-05-28 23:23:36 +02:00
Anatol Belski 29ca3fad62 add *.manifest to cleanup 2015-05-28 23:23:33 +02:00
Anatol Belski 247fd93de9 correct manifest 2015-05-28 23:23:30 +02:00
Anatol Belski e4ca770f95 using correct manifest, GetVersionEx can recognise versions 2015-05-28 23:23:27 +02:00
Anatol Belski 4bbfa2469e take the default manifest
yet to be reworked for the case some custom manifest were supplied
2015-05-28 23:23:23 +02:00
Anatol Belski f17b732694 add default manifest 2015-05-28 23:23:21 +02:00
Anatol Belski 2802fdaf0c fixup default versions, just for the case 2015-05-28 23:23:17 +02:00
Kalle Sommer Nielsen 0a173501c8 Fix deplister with VC14, noticed by Jan Ehrhardt 2015-05-28 23:06:49 +02:00
Xinchen Hui 50e08d60b6 Attempt to fix #69643 2015-05-29 00:03:19 +08:00
Kalle Sommer Nielsen c4e9651b58 Merge the fix for #69703 to 5.5 per request from Julien 2015-05-28 16:54:02 +02:00
Kalle Sommer Nielsen 424005a301 Shouldn't have been committed, so revert 2015-05-28 14:37:52 +02:00
Kalle Sommer Nielsen de696d851f Fixed bug #69703 (Use __builtin_clzl on PowerPC) -- Patch by dja at axtens dot net
# Julien, even though 5.5 is still non security mode I don't think we should merge this patch but I leave the choice with you
2015-05-28 14:30:18 +02:00
Remi Collet 0437aa2abf Merge branch 'PHP-5.6'
* PHP-5.6:
  Relax a little this test, because random is not reliable
2015-05-28 10:37:52 +02:00
Remi Collet 7611d1c41b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Relax a little this test, because random is not reliable
2015-05-28 10:37:39 +02:00
Remi Collet 09b92a3a54 Relax a little this test, because random is not reliable
Usual values are 3500-3950, but >4000 can happen.
2015-05-28 10:35:19 +02:00
Ferenc Kovacs 864c171899 Merge branch 'PHP-5.6'
* PHP-5.6:
  empty commit to trigger a github mirror
2015-05-28 02:09:46 +02:00
Ferenc Kovacs 482c69bf63 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  empty commit to trigger a github mirror
2015-05-28 02:09:12 +02:00
Ferenc Kovacs 00d8e26d71 empty commit to trigger a github mirror 2015-05-28 02:08:48 +02:00
Ferenc Kovacs db3092d460 Merge branch 'PHP-5.6'
* PHP-5.6:
  move to 5.6.11-dev
2015-05-28 02:06:43 +02:00
Ferenc Kovacs 4d8ae36695 move to 5.6.11-dev 2015-05-28 02:05:50 +02:00
Anatol Belski 58ed12b1a2 update lib versions info 2015-05-27 18:15:43 +02:00
Kalle Sommer Nielsen 0a7f792b6f [16:45] <@bjori> salathe: http://git.php.net/?p=php-src.git;a=commit;h=d4324a5e4ba3ae668cf1a3c2426241fd6ac385a5 && http://git.php.net/?p=php-src.git;a=commit;h=9de8833bea9fe39556066e7ff77b136697652d02
[16:45] <@bjori> you should probably move philip to authors, and yourself out of the author list
2015-05-27 16:50:01 +02:00
Peter Cowburn d47815d5ee updated manual editor 2015-05-27 11:20:21 +01:00
Xinchen Hui 0e438a2783 Remove debug codes 2015-05-27 17:41:38 +08:00
Xinchen Hui c17029315f Fixed sapi/tests (maybe needs some run-test.php people's reviewing) 2015-05-27 17:37:34 +08:00
Xinchen Hui 2b41c04124 Seems useless now 2015-05-27 16:54:32 +08:00
Xinchen Hui 151e52f6eb Fixed the fix in f68dc94aa7 2015-05-27 16:47:15 +08:00
Xinchen Hui 90df7e75e6 Merge branch 'master' into merge-fastcgi
Conflicts:
	sapi/fpm/fpm/fpm_main.c
2015-05-27 16:36:15 +08:00
Reeze Xia f68dc94aa7 Remove useless cast 2015-05-27 10:45:19 +08:00
Xinchen Hui f972e219e4 Merge pull request #2 from weltling/merge-fastcgi
Simplify the windows side
2015-05-27 10:37:48 +08:00
Bob Weinand b73f87b1e4 Add test for memory leak with wrong return type 2015-05-27 01:37:00 +02:00
Bob Weinand f7f7d6e385 Fix memory leak with return types upon failure
TMP/VAR wasn't being freed in VERIFY_RETURN
2015-05-27 01:18:06 +02:00
Bob Weinand 5bec1490f9 Fix phpdbg class fetch / method opcodes 2015-05-27 00:55:26 +02:00
Dmitry Stogov 7dac4d449f Add targets to simplify building PHP with FDO (Feedback Directed Optimisation)
PHP should be built with the folowing steps:

make clean
make -j4 prof-gen
; now php should be trained with some scripts
; for example `sapi/cgi/php -T 1000 /var/www/http/wordpress/index.php > /dev/null`
make prof-clean
make -j4 prof-use

The "properly" trained build may give up to 10% real performance boost!
"Improprly" trained PHP might be even slower.
2015-05-26 17:33:25 +03:00
Reeze Xia ca31711625 Fixed phpdbg exit unexpected after signal SIGCONT on OS X 2015-05-26 22:04:50 +08:00
Anatol Belski 4faf7476f9 fix dir sep in test 2015-05-26 13:09:56 +02:00
Xinchen Hui 438d17e74e Even fake token better to be in upper case 2015-05-26 18:11:07 +08:00
Xinchen Hui 4a728227fc Merge branch 'PHP-5.6' 2015-05-26 16:26:23 +08:00
Xinchen Hui 1f077cc4f4 Merge branch 'PHP-5.5' into PHP-5.6 2015-05-26 16:24:39 +08:00
Xinchen Hui 76a290d0be Fixed C89 2015-05-26 16:24:18 +08:00
Anatol Belski 6d582c6a24 added the shared fcgi imp to sapi/cgi
This is yet a workaround, if another part of the source would need
the same object file, it'll end up producing duplicated nmake target.
Some additional implementation is needed so same object files can be
shared between different modules, to handle this situation better.
2015-05-26 09:44:41 +02:00
Anatol Belski fd256be671 remove fastcgi.c from the dll target 2015-05-26 09:03:52 +02:00
Anatol Belski cf0397ef06 reverted 0512b38 and 1411ca5 2015-05-26 09:02:19 +02:00
Xinchen Hui 49b10ee264 Merge branch 'master' into merge-fastcgi 2015-05-26 14:17:21 +08:00
Xinchen Hui 9f1788f00d Only link fastcgi into fpm and cgi 2015-05-26 13:55:39 +08:00
Xinchen Hui 5f753f9e2e Micro optimizations 2015-05-26 11:47:01 +08:00
Xinchen Hui 770a462943 implicit declaration of function ‘zend_multibyte_yyinput_again’ 2015-05-26 10:36:52 +08:00
Bob Weinand 1a7bf16dd6 Ran wrong tests, fixed bug in impl; simplified 2015-05-26 01:43:56 +02:00
Bob Weinand bb552908a0 Speed up implod()'ing between 5% and 30% (by time)
Significantly speed up implode()'ing on integers now...
Previously I accidentally committed the first part of the patch in 69b54ba926
2015-05-26 01:12:23 +02:00
Bob Weinand 31f3eeb0c5 Fix tokenizer test due to recent changes 2015-05-26 00:17:27 +02:00
Bob Weinand 8cd62071ab Add class to semi_reserved tests 2015-05-25 23:07:37 +02:00
Márcio Almada e67a129ea6 updates grammar tests with class members named as method modifiers \cc @bwoebi 2015-05-25 23:00:39 +02:00
Bob Weinand 69b54ba926 Also unreserve T_CLASS 2015-05-25 22:58:30 +02:00
Bob Weinand 36c3c47434 Set %expect to 0 in parser (Using %prec) 2015-05-25 20:26:57 +02:00
Bob Weinand 306a0f28d0 Merge branch 'master' of https://github.com/php/php-src 2015-05-25 19:00:53 +02:00
Bob Weinand 21ccdf6304 Rebuild scanner, add NEWS/UPGRADING 2015-05-25 19:00:08 +02:00
Dmitry Stogov 03f41f9b4d Prevent op_array->this_var setting when method uses auto globals 2015-05-25 19:59:25 +03:00
Bob Weinand 886cbea94f Merge context sensitive lexer RFC 2015-05-25 18:38:40 +02:00
Dmitry Stogov 18cd4b17cc Fixed typo 2015-05-25 19:20:52 +03:00
Anatol Belski cf50748f2b move S_IFLNK define into header 2015-05-25 18:07:47 +02:00
Anatol Belski c444c4172f further cleanups with S_IF* macros generalized declarations 2015-05-25 18:03:28 +02:00
Anatol Belski cfadcfc734 cleanup more redundant S_IS* declarations 2015-05-25 18:03:26 +02:00
Anatol Belski d713fcc14d cleanup redundant S_IFDIR declaration 2015-05-25 18:03:24 +02:00
Anatol Belski f4c07e7e76 cleanup duplicated stat declarations in ext/phar 2015-05-25 18:03:22 +02:00
Anatol Belski 5d1731b2fb move some stat declarations into zend_virtual_cwd.h
more cleanup to go
2015-05-25 18:03:21 +02:00
Dmitry Stogov c436e25fd5 Fixed bug #69700 (tests/lang/this_assignment.phpt memory errors) 2015-05-25 18:29:31 +03:00
Xinchen Hui 06483a98d6 Fixed va_list double used 2015-05-25 15:40:32 +08:00
Anatol Belski 404360f261 pick up sasl auth plugins if there was any in the deps 2015-05-24 23:49:45 +02:00
Anatol Belski c63467fe6e remove non-applicable comment 2015-05-24 23:49:43 +02:00
Anatol Belski d28ab1cba3 fix datetime tests with vc14
VC14 RC seems to support more format extensions, however some
difrerences do still persist.
2015-05-24 23:49:42 +02:00
Anatol Belski 9770553437 make the test more reliable 2015-05-24 23:49:40 +02:00
Nikita Popov a1ef8b418d Improve phpdbg opcode dump
Don't show <unused>, just don't display anything instead.

Dump nums used in op1/op2/result, e.g. for SEND, RECV etc.

Split the switch into three parts, one for each operand.
2015-05-24 20:29:57 +02:00
Remi Collet fc8143f58a Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  Fixed Bug #69479 GD fails to build with newer libvpx
2015-05-24 09:40:08 +02:00
Remi Collet c630779648 NEWS 2015-05-24 09:39:44 +02:00
Remi Collet 565de1ae64 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  Fixed Bug #69479 GD fails to build with newer libvpx
2015-05-24 09:39:20 +02:00
Remi Collet 4cab20bbb4 NEWS 2015-05-24 09:39:03 +02:00
Remi Collet e807e07bfa Fixed Bug #69479 GD fails to build with newer libvpx
From upstream https://github.com/libgd/libgd/commit/d41eb72cd4545c394578332e5c102dee69e02ee8

Fix build with latest libvpx 1.4.0

These new constants exist at least since 1.0.0
Compatibility ones have been droped in 1.4.0
2015-05-24 09:37:12 +02:00
Xinchen Hui 61f652a179 Merge branch 'master' into merge-fastcgi 2015-05-24 14:23:34 +08:00
Xinchen Hui 231f059d8c fcgi_is_allowed should not log error 2015-05-24 14:21:04 +08:00
Xinchen Hui 9dbf8794bb Merge pull request #1 from weltling/merge-fastcgi
Missing symbols to get it worky on Windows
2015-05-24 10:09:59 +08:00
Anatol Belski 35ba1601f5 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
2015-05-23 23:02:47 +02:00
Anatol Belski 4e002b4412 updated NEWS 2015-05-23 23:02:09 +02:00
Nikita Popov f3dde29394 Fixes for x32 ABI
I'm assuming that we want to have 64bit zend_longs on x32 here.

This fixes two typos in __x86_64__ macros and adds sign-extension
when assigning STREAM_COPY_ALL to zend_long.
2015-05-23 21:18:33 +02:00
Anatol Belski 0512b38309 add the remaining useful symbols to the export 2015-05-23 21:00:47 +02:00
Anatol Belski 1411ca58b1 implement necessary symbol exports 2015-05-23 20:55:20 +02:00
Xinchen Hui f20118aa66 Avoid multipy allocating of request env 2015-05-24 01:07:36 +08:00
Anatol Belski d5f695ce7b Merge branch 'PHP-5.6'
* PHP-5.6:
  increase the internal post data buffer
2015-05-23 18:47:26 +02:00
Anatol Belski f3cec08e65 increase the internal post data buffer
This brings speedup and fixes issues with var parsing. Default BUFSIZ
on Windows is 512 bytes which causes too much reallocation work.
2015-05-23 18:44:39 +02:00
Xinchen Hui 86de98caba Use weak function for fcgi_log 2015-05-23 19:19:48 +08:00
Xinchen Hui 18cf4e0a8a Fixed fpm-side (tests passes) 2015-05-23 19:01:41 +08:00
Levi Morrison e13803d15b Inline zend_find_builtin_type
This function was used only inside of zend_find_builtin_type_by_name,
which is also used only one time.
2015-05-23 11:12:13 +02:00
Levi Morrison e22ceb6e82 Remove duplication 2015-05-23 11:12:13 +02:00
Levi Morrison 339283c523 Rename some variables and functions
The way these are used have little to do with them being scalars;
they are just tuples with names, lengths and IS_* constants. We
will probably reuse these in the future with other types.
2015-05-23 11:12:12 +02:00
Radu Brănișcan 0c7634fcc7 Corrected line comment 5256
From the text "dectupt" to "decrypt"
2015-05-23 11:11:58 +02:00
Nikita Popov 8542befa7b Remove ZEND_BRK/ZEND_CONT from VM
These are no longer used at run-time now, only temporarily during
compilation.
2015-05-23 10:51:33 +02:00
Nikita Popov 7a88d16cf3 Use ZEND_JMP instead of ZEND_BRK/ZEND_CONT
Emit necessary FREEs during compilation, convert to JMP during
pass_two (we may not know target opline beforehand).
2015-05-23 10:51:33 +02:00
Nikita Popov 9325ada725 Embed break/continue depth into opline
Previously a separate lval literal was used - this is probably a
leftover from the time where the break level could still be
specified dynamically.
2015-05-23 10:51:33 +02:00
Nikita Popov 3cbe3903fa Move loop var stack management into begin/end loop
Also set start to -1 in begin_loop already, so the info that a
loop variable is not used is already available at compile-time.
2015-05-23 10:51:33 +02:00
Nikita Popov d0e265392f Drop FREE_ON_RETURN flag, check brk_cont->start instead
Start >= 0 already tells us whether or not the loop has a loop
variable, no need to add extra flags to opcodes.

Also added a test for a case where FREE_ON_RETURN is relevant,
we didn't seem to have any coverage for this.
2015-05-23 10:51:33 +02:00
Nikita Popov 1bee093eca Drop THIS_HASHVAL define
No longer used
2015-05-23 10:51:32 +02:00
Xinchen Hui fef18f4bea Merge branch 'master' into merge-fastcgi 2015-05-23 10:29:45 +08:00
Anatol Belski 8d7003f708 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix test
  Add entry for bug #69354, fixed in 5.5.25
  Add CVE for bugs in 5.6.9
  Add entry about PCRE upgrade (rev 95fa7279)
  Add CVE for bugs in 5.5.25

Conflicts:
	ext/phar/tests/bug69441.phpt
2015-05-22 21:32:40 +02:00
Anatol Belski 0bc3a74334 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix test
2015-05-22 21:27:19 +02:00
Anatol Belski d9c266f4c9 fix test
Sometimes the path is unixified, sometimes not, so better don't
care about the slash in this case.
2015-05-22 21:25:52 +02:00
Lior Kaplan 2e2cbcc926 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Add entry for bug #69354, fixed in 5.5.25
  Add entry about PCRE upgrade (rev 95fa7279)
  Add CVE for bugs in 5.5.25
2015-05-22 11:18:32 +03:00
Lior Kaplan 827d2c1415 Add entry for bug #69354, fixed in 5.5.25 2015-05-22 11:17:01 +03:00
Lior Kaplan f736934af0 Add CVE for bugs in 5.6.9 2015-05-22 11:15:36 +03:00
Lior Kaplan 7ecab5d23f Add entry about PCRE upgrade (rev 95fa7279) 2015-05-22 11:02:01 +03:00
Lior Kaplan c9ac441fe8 Add CVE for bugs in 5.5.25 2015-05-22 10:58:28 +03:00
Xinchen Hui 50688e3984 Forgot the test for bug #69688 2015-05-22 11:50:55 +08:00
Xinchen Hui 95da6b76f3 Fixed test 2015-05-22 11:49:15 +08:00
Xinchen Hui 8c0ba65d6a Fixed bug #69688 (segfault with eval and opcache fast shutdown) 2015-05-22 11:48:13 +08:00
Anthony Ferrara ed4052f1d5 Fixed bug #69686 password_verify reports back error on PHP7 will null string.
The deprecation of DES salts created a warning when trying to verify them with password_hash. This bug fix adds a quiet mode to php_crypt() which is used by password_verify.
2015-05-21 17:12:51 -04:00
Nikita Popov 3dba00bc31 Fix scope_is_known() for class constants
Here the active_op_array is still the surrounding file, but we
do know the scope.
2015-05-21 21:07:05 +02:00
Dmitry Stogov f186d4b8b1 Fixed build with DEBUG_COMPACT_LITERALS=1 2015-05-21 17:57:06 +03:00
Dmitry Stogov 58c484a0bb Fixed typo in ZEND_GCC_GLOBAL_REGS configure test (Albert) 2015-05-21 16:34:59 +03:00
Peter Cowburn 474e4220ef removed old news item
This change was introduced in PHP 5.5.21 and 5.6.5
2015-05-21 13:17:27 +01:00
Remi Collet aec039cc6e Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  Fixed bug #69680 (phar symlink in binary directory broken).
  Make the phar symlink relative
2015-05-21 14:07:14 +02:00
Remi Collet 68e368ed34 NEWS 2015-05-21 14:07:02 +02:00
Remi Collet 17d5ebe76e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #69680 (phar symlink in binary directory broken).
  Make the phar symlink relative
2015-05-21 14:06:26 +02:00
Remi Collet a7de68f98a Fixed bug #69680 (phar symlink in binary directory broken).
Relative symlink are better, as relative to link directory.
2015-05-21 14:05:15 +02:00
ponce c3d983f3af Make the phar symlink relative
or we got a symlink pointing to the build files
thanks also to remicollet
2015-05-21 14:03:18 +02:00
Anatol Belski 5acddf898f Merge branch 'PHP-5.6'
* PHP-5.6:
  remove duplicated declaration, fix build
2015-05-21 10:57:30 +02:00
Anatol Belski 4fe938b0a9 remove duplicated declaration, fix build 2015-05-21 10:56:14 +02:00
Anatol Belski 928e9e980b Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  added missing GLOB_BRACE support check
  added SKIPIF section to test to make sure that GLOB_BRACE is supported
  fix #69628: complex GLOB_BRACE fails on Windows
  added PHPT to check for bug #69628
2015-05-21 09:49:18 +02:00
Anatol Belski e85653051a updated NEWS 2015-05-21 09:47:59 +02:00
Anatol Belski fc94fb3e5b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  added missing GLOB_BRACE support check
  added SKIPIF section to test to make sure that GLOB_BRACE is supported
  fix #69628: complex GLOB_BRACE fails on Windows
  added PHPT to check for bug #69628
2015-05-21 09:47:30 +02:00
Anatol Belski c507c533bd updated NEWS 2015-05-21 09:47:02 +02:00
Christoph M. Becker 96629091a6 added missing GLOB_BRACE support check 2015-05-21 09:44:18 +02:00
Christoph M. Becker 6895ae4553 added SKIPIF section to test to make sure that GLOB_BRACE is supported 2015-05-21 09:44:17 +02:00
Christoph M. Becker 8c6e8e7870 fix #69628: complex GLOB_BRACE fails on Windows 2015-05-21 09:44:15 +02:00
Christoph M. Becker 90aee01c85 added PHPT to check for bug #69628 2015-05-21 09:44:14 +02:00
Anatol Belski eef762d576 Merge branch 'pull-request/1278' 2015-05-21 08:52:41 +02:00
Anatol Belski 360d8fd712 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix handling VAR vs VAR= in putenv
2015-05-21 08:22:30 +02:00
Anatol Belski ad4d022bdf Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix handling VAR vs VAR= in putenv
2015-05-21 08:21:53 +02:00
Anatol Belski 75286ece1a fix handling VAR vs VAR= in putenv
using _putenv_s eliminates behavior diff in TS/NTS
2015-05-21 08:19:54 +02:00
Bob Weinand 9b6bb2d451 Add support for string dictionaries, fix array dictionaries ({de,in}flate) 2015-05-21 04:17:17 +02:00
Dmitry Stogov ca64b41b99 Fixed zend_update_class_constants() to always resolve all constants.
Call zend_update_class_constants() only when necessary.
2015-05-21 04:13:10 +03:00
Adam Harvey 0c50f49710 Add documentation contribution information. 2015-05-20 19:26:20 -05:00
Adam Harvey 81f4a7dfc1 Add a bare bones CONTRIBUTING.md.
I was not at all guilted into this by the open source summit at php[tek]. Not
at all.

(such guilt)

This is based mostly on information already on our Web site, and is primarily a
set of links to other pages. Still, if we can encourage more contributors,
let's do it!
2015-05-20 19:13:52 -05:00
Dmitry Stogov 0da206e4b7 Set proper type_info flags. 2015-05-21 00:51:34 +03:00
Dmitry Stogov cf6ac5c665 Fixed SHM+FILE cache with opcache.protect_memory=1 2015-05-20 23:33:55 +03:00
Dmitry Stogov 5ff5201543 Improved script copyining from SHM to process memory 2015-05-20 23:12:04 +03:00
Dmitry Stogov d6bcf2bf2e Micro optimization 2015-05-20 22:51:45 +03:00
Dmitry Stogov e57aceed42 Fixed access to wrong opline (it may be the last ZEND_THROW in op_array->opcodes) 2015-05-20 22:49:37 +03:00
Christoph M. Becker 99d7852d18 added missing GLOB_BRACE support check 2015-05-20 20:23:21 +02:00
Anatol Belski 5ea429494e add license header 2015-05-20 19:14:09 +02:00
Anatol Belski fad25c9306 add license header 2015-05-20 19:14:07 +02:00
Anatol Belski 514aa4ef53 remove dead code 2015-05-20 19:14:06 +02:00
Anatol Belski a6190359ad add vim modelines 2015-05-20 19:14:05 +02:00
Anatol Belski a233af16b9 add vim modeline 2015-05-20 19:14:04 +02:00
Anatol Belski 5dc7db8ee7 disable unused members in struct rusage 2015-05-20 19:14:02 +02:00
Christoph M. Becker b654aa4606 added SKIPIF section to test to make sure that GLOB_BRACE is supported 2015-05-20 18:39:07 +02:00
Nikita Popov b081da657e Expose pdo stmt ctor args to gc
These very commonly contain a reference to the PDO object itself.
2015-05-20 18:28:09 +02:00
Nikita Popov 4e03ba4a6e Add GC support for ArrayObject
gc_024 test changes because the array that ArrayObject holds is
now counted separately from the ArrayObject.
2015-05-20 18:28:09 +02:00
Nikita Popov 4ea1d8a9c7 Show argument causing TypeException in trace
Not sure why that check was there, did I miss something?
2015-05-20 18:28:09 +02:00
Kalle Sommer Nielsen e60c119695 Merge branch 'master' of https://git.php.net/push/php-src 2015-05-20 16:15:40 +02:00
Kalle Sommer Nielsen 958d9505aa long > zend_long (Thanks Anatol) 2015-05-20 16:15:11 +02:00
Anatol Belski 8dbd39d96e fixed test 2015-05-20 15:56:16 +02:00
Kalle Sommer Nielsen e634f07f1e Merge branch 'master' of https://git.php.net/push/php-src 2015-05-20 15:50:00 +02:00
Kalle Sommer Nielsen 22fc3baa7a Windows support for getrusage()
* See getrusage.c/h for implementation details and limitations
* Tests passes and have had their SKIPIF updated
* psapi.lib is now linked to by default
2015-05-20 15:45:37 +02:00
Remi Collet 88aab478bf move test 2015-05-20 14:03:41 +02:00
Remi Collet e0cd1823ec Merge branch 'PHP-5.6'
* PHP-5.6:
  move test
2015-05-20 14:03:01 +02:00
Remi Collet 59a78d48f0 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  move test
2015-05-20 14:02:25 +02:00
Remi Collet 3be4e5d71a move test 2015-05-20 14:02:13 +02:00
Xinchen Hui c4129694a8 Merge branch 'patch-5' of https://github.com/ovr/php-src 2015-05-20 16:56:28 +08:00
Remi Collet 593c4b9b00 NEWS 5.4 2015-05-20 08:47:04 +02:00
Remi Collet 3ee3066bd0 fix new test 2015-05-20 08:46:14 +02:00
Remi Collet f93d24aa67 Fixed Bug #69667 segfault in php_pgsql_meta_data
Incomplete fix for #68741
2015-05-20 08:46:01 +02:00
Remi Collet f7bfeac419 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix new test
2015-05-20 08:31:46 +02:00
Remi Collet f228bc5230 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix new test
2015-05-20 08:30:44 +02:00
Remi Collet 716fe10d97 fix new test 2015-05-20 08:30:27 +02:00
Remi Collet 8ad4a21c44 Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS 5.6
  NEWS 5.5
  Fixed Bug #69667 segfault in php_pgsql_meta_data
  fix test output (32bits)

Conflicts:
	ext/pgsql/pgsql.c
2015-05-20 08:14:02 +02:00
Remi Collet 6da4feac35 NEWS 5.6 2015-05-20 08:11:55 +02:00
Remi Collet e41a2009d6 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS 5.5
  Fixed Bug #69667 segfault in php_pgsql_meta_data
  fix test output (32bits)
2015-05-20 08:11:24 +02:00
Remi Collet 4bda39b81d NEWS 5.5 2015-05-20 08:11:14 +02:00
Remi Collet 2cc4e69cc6 Fixed Bug #69667 segfault in php_pgsql_meta_data
Incomplete fix for #68741
2015-05-20 08:08:41 +02:00
Anatol Belski 890a28d4b9 Fixed bug #69511 Off-by-one bufferoverflow in php_sys_readlink 2015-05-19 15:44:55 +02:00
Dmitry Patsura b6f8b4e949 [Math] ceil, floor added FAST_ZPP parameters pass 2015-05-19 21:19:13 +08:00
Dmitry Stogov eebab8282b Improved hash table copying 2015-05-19 13:23:13 +03:00
Dmitry Stogov 6c8d49b6b0 Improved hash table copying 2015-05-19 13:22:58 +03:00
Kalle Sommer Nielsen 27b83079fe This shouldn't have been a part of the previous commit 2015-05-19 12:20:25 +02:00
Kalle Sommer Nielsen 7017fcdb38 Merge branch 'master' of https://git.php.net/push/php-src 2015-05-19 12:13:19 +02:00
Kalle Sommer Nielsen dd527806e9 * Make ext/dba compile with newer versions of Oracle's Berkeley (in my case 6.1)
* Make the db3 driver work with 4.3+
2015-05-19 12:12:24 +02:00
Remi Collet a861019b7f Add consistency check in FAST_ZPP call
So ensure Z_PARAM_OPTIONAL is correctly call at the right place
Only in DEBUG build

Will raise 'Assertion `_i > _min_num_args || _optional==0' failed.'
or         'Assertion `_i <= _min_num_args || _optional==1' failed.'
Thus will allow to detect bad code early.
2015-05-19 10:54:10 +02:00
Xinchen Hui ba5ecf355f Use logger pointer 2015-05-19 16:34:08 +08:00
Dmitry Stogov b3d053b036 Eliminated useless check in FAST_ZPP (this also fixed few wrong -Wmaybe-uninitialized compilation warnings) (Remi) 2015-05-19 11:06:01 +03:00
Xinchen Hui e383cb4493 Move fastcgi.c to main 2015-05-19 16:04:35 +08:00
Anatol Belski f378b9a998 fix test title 2015-05-18 22:37:31 +02:00
Anatol Belski 6fe4f18dcd fork test for ICU >= 55.1 compat 2015-05-18 22:37:29 +02:00
Anatol Belski 8af0de914f sync test with exception currently thrown 2015-05-18 22:37:28 +02:00
Anatol Belski d3515bdef0 fork test for ICU >= 55.1 compat 2015-05-18 22:37:26 +02:00
Anatol Belski bb27f4ca8b fork test for ICU >= 55.1 compat 2015-05-18 22:37:25 +02:00
Anatol Belski 83f98277c2 skip test for ICU >= 55.1, a newer test is available and passes 2015-05-18 22:37:23 +02:00
Anatol Belski 3658412814 fork test for ICU >= 55.1 compat 2015-05-18 22:37:22 +02:00
Anatol Belski 30be2e654e fork test for ICU >= 55.1 compat 2015-05-18 22:37:21 +02:00
Anatol Belski 0f766a28cb fix mbrlen prototype availability 2015-05-18 22:37:19 +02:00
Dmitry Stogov fb8891d9fc Reset heap usage statistics on request shutdown 2015-05-18 23:06:23 +03:00
Aaron Piotrowski 5c54bf015d Throwable method signatures. 2015-05-18 14:29:51 -05:00
Aaron Piotrowski 99640cd013 Merge branch 'master' into throwable-interface 2015-05-18 13:34:46 -05:00
Dmitry Stogov cee88571d9 Fixed bug #69649 (segfault with --enable-dtrace) 2015-05-18 12:44:40 +03:00
Reeze Xia 104f6c5ec6 Avoid possible uninitialized value assignment 2015-05-18 12:49:42 +08:00
Xinchen Hui ab680e7f6e Added Test (the lineno should be fixed) 2015-05-18 11:16:57 +08:00
Xinchen Hui a5f408c91b 1. Fixed bug #69640 Unhandled EngineExceptions thrown from userland do not produce any output
2. Fixed Segfault introduced by latest changes
2015-05-18 11:13:55 +08:00
Reeze Xia d02deee677 Prefer isfinite to finite
Since finite() is not part of ANSI C

@see http://bytes.com/topic/c/answers/217761-finite-ansi-c
2015-05-18 10:44:42 +08:00
Aaron Piotrowski e97d5fab35 Update exception names in tests after formatting changes. 2015-05-17 17:31:43 -05:00
Aaron Piotrowski 7e18df82a3 Merge exception formatting changes. 2015-05-17 17:31:06 -05:00
Aaron Piotrowski fb7206e452 Merge branch 'master' into throwable-interface 2015-05-17 16:15:35 -05:00
Nikita Popov 440481fb3e Display TypeExceptions like normal exceptions
We currently don't show the argument at which the error actually
occured in the trace - should probably either add it or don't
display args on incomplete frames altogether, otherwise this'll
probably be confusing.
2015-05-17 19:54:12 +02:00
Aaron Piotrowski 0eba6f597a Merge branch 'master' into throwable-interface 2015-05-17 12:12:02 -05:00
Aaron Piotrowski 26b35cab46 Make zend_get_exception_base static.
Soap extension can use other API functions.
2015-05-17 11:52:41 -05:00
Nikita Popov 3ae995f03c Tweak uncaught exception message display
This implements a reduced variant of #1226 with just the following
change:

-Fatal error: Uncaught exception 'EngineException' with message 'Call to private method foo::bar() from context ''' in %s:%d
+Fatal error: Uncaught EngineException: Call to private method foo::bar() from context '' in %s:%d

The '' wrapper around messages is very weird if the exception
message itself contains ''. Futhermore having the message wrapped
in '' doesn't work for the "and defined" suffix of
TypeExceptions.
2015-05-17 18:47:06 +02:00
Nikita Popov 0df2f470fa Don't write prop if read prop threw exception 2015-05-17 13:46:54 +02:00
Aaron Piotrowski 434a46612e Fix a few missed tests. 2015-05-16 22:04:16 -05:00
Aaron Piotrowski b965bab9f1 Fix handler double copy. 2015-05-16 19:48:59 -05:00
Aaron Piotrowski 64b167d201 Updated tests to reflect exception class changes. 2015-05-16 16:49:14 -05:00
Stanislav Malyshev 2660fb96aa Merge branch 'pull-request/1277'
* pull-request/1277:
  fix typos
2015-05-16 14:20:41 -07:00
Aaron Piotrowski d042d08807 Remodel exceptions based on Throwable interface
Added Throwable interface that exceptions must
implement in order to be thrown. BaseException
was removed, EngineException renamed to
Error, and TypeException and ParseException
renamed to TypeError and ParseError. Exception
and Error no longer extend a common base
class, rather they both implement the Throwable
interface.
2015-05-16 15:30:59 -05:00
Nikita Popov c9f27ee422 Display EngineExceptions like ordinary exceptions
TypeException stays as-is for now because it uses messages that are
incompatible with the way exception messages are displayed.

closure_038.phpt and a few others now show that we're generating
too many exceptions for compound operations on undefined properties
-- this needs to be fixed in a followup.
2015-05-15 23:40:32 +02:00
Bob Weinand 34e6fbbfed Merge branch 'master' of https://github.com/php/php-src 2015-05-15 22:45:35 +02:00
Nikita Popov 230b435ed4 Fix exception leak in interactive console
Shows up there because it throws at E_WARNING severity level and
as such leak detection is not suppressed.
2015-05-15 22:43:13 +02:00
Xinchen Hui 2eab211379 Fixed segfault 2015-05-16 00:33:49 +08:00
Xinchen Hui 249d4c7fdb code standard 2015-05-16 00:19:43 +08:00
Xinchen Hui 7cead987bd Merge branch 'master' of git.php.net:php-src 2015-05-15 22:57:36 +08:00
Xinchen Hui 48f3f44f32 Hint the compiler 2015-05-15 22:57:17 +08:00
Bob Weinand 6868b56e25 Fix unrelated tests and zlib window size 2015-05-15 13:59:47 +02:00
Anatol Belski 2027b949ea remove version check
the cause of the recursive inclusion is fixed, it's not compiler
version dependent
2015-05-15 08:20:33 +02:00
Matteo Beccati 3bbe81286d Updated test to include ReflectionGenerator 2015-05-15 06:52:04 +02:00
Dmitry Stogov a464045726 Improve strtr() 2015-05-15 04:03:30 +03:00
Bob Weinand 00ea48ad43 Minor typo in warning message 2015-05-15 02:42:11 +02:00
Bob Weinand 227a21b297 Add strategy option to deflate_init() 2015-05-15 02:28:38 +02:00
Bob Weinand dd17e18f41 Add dictionary option to {in,de}flate_init() 2015-05-15 02:28:38 +02:00
Bob Weinand a129ded3c1 Add window option to {de,in}flate_init() 2015-05-15 02:28:37 +02:00
Ferenc Kovacs 738c71aa9a Merge branch 'PHP-5.6'
* PHP-5.6:
  fix NEWS
2015-05-15 01:09:45 +02:00
Ferenc Kovacs 4c5efc7456 fix NEWS 2015-05-15 01:08:50 +02:00
Anatol Belski 55f6687237 added the inclusion guard
the vc check can be likely removed, to be checked
2015-05-15 00:15:01 +02:00
Dmitry Stogov 196b951728 Optimized === and !== with NULL, FALSE, TRUE. 2015-05-15 01:11:29 +03:00
Bob Weinand 06693c3d43 Add NEWS/UPGRADING for ReflectionGenerator class 2015-05-14 22:30:01 +02:00
Bob Weinand aa3c7aa438 Add ReflectionGenerator class 2015-05-14 20:10:35 +02:00
Bob Weinand c6a6b9746d Fix memleak in generators using symtable 2015-05-14 17:17:39 +02:00
Dmitry Stogov fc75d07652 Fixed memory leak 2015-05-14 17:07:32 +03:00
Dmitry Stogov 0604df8a82 Fixed phpdbg build 2015-05-14 16:47:22 +03:00
Dmitry Stogov 8e9b4b5aa7 Refactored custom storage API. 2015-05-14 14:56:13 +03:00
Remi Collet 58e5e006e5 fix test output (32bits) 2015-05-14 10:28:59 +02:00
Christoph M. Becker e42aae1e9b fix #69628: complex GLOB_BRACE fails on Windows 2015-05-13 23:47:54 +02:00
Christoph M. Becker 43315f32e7 added PHPT to check for bug #69628 2015-05-13 22:37:33 +02:00
olshevskiy87 8bdec7a248 fix typos
Signed-off-by: olshevskiy87 <olshevskiy87@bk.ru>
2015-05-13 22:28:35 +04:00
Dmitry Stogov abb616ae20 Merged fastcgi.* reated changes from sapi/cgi 2015-05-13 18:54:41 +03:00
Dmitry Stogov f51e4ae42e Fixed build 2015-05-13 18:53:58 +03:00
Julien Pauli 40d8432138 Updated NEWS 2015-05-13 15:43:03 +02:00
Antony Dovgal 2fa4e79e8a fix tests 2015-05-13 15:34:17 +02:00
Antony Dovgal 5c02e7e7fb merge similar if conditions 2015-05-13 15:34:17 +02:00
Antony Dovgal 7e0e88820a add rusage support to wait() and waitpid()
patch by Anton Stepanenko
2015-05-13 15:34:17 +02:00
Ferenc Kovacs 917f292dc4 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix release dates for 5.6.9/5.6.10. spotted by @Jan-E on github
2015-05-13 15:30:01 +02:00
Ferenc Kovacs e09a0b74d9 fix release dates for 5.6.9/5.6.10. spotted by @Jan-E on github 2015-05-13 15:29:08 +02:00
Anatol Belski b312a7ee38 extend libxml exports 2015-05-13 15:20:20 +02:00
Anatol Belski 17d4be0cb7 fix libxml2 headers lookup 2015-05-13 15:20:19 +02:00
Julien Pauli 96d9a5589d Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS
  Updated NEWS
2015-05-13 14:30:11 +02:00
Julien Pauli 8fc4c9444f Updated NEWS 2015-05-13 14:29:53 +02:00
Julien Pauli 7c5de1e99e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Updated NEWS
2015-05-13 14:29:29 +02:00
Julien Pauli dcd230de11 Updated NEWS 2015-05-13 14:29:02 +02:00
Julien Pauli 420961524d Merge branch 'PHP-5.6'
* PHP-5.6:
  Close fd at the end, otherwise people complain
  Add file descriptor caching to mcrypt_create_iv()

Conflicts:
	ext/mcrypt/mcrypt.c
2015-05-13 14:21:19 +02:00
Julien Pauli c09fad97d6 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Close fd at the end, otherwise people complain
  Add file descriptor caching to mcrypt_create_iv()
2015-05-13 14:19:04 +02:00
Leigh f7952b90ca Close fd at the end, otherwise people complain
Even though it's closed when the process terminates!
2015-05-13 14:18:32 +02:00
Leigh c02c4aca00 Add file descriptor caching to mcrypt_create_iv()
This improves performance for applications that make repeated calls to
mcrypt_create_iv()
2015-05-13 14:18:32 +02:00
Julien Pauli 4f5ab6fca4 Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS
2015-05-13 13:06:19 +02:00
Julien Pauli 1b12982d39 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Updated NEWS
2015-05-13 13:06:08 +02:00
Julien Pauli 43c24da166 Updated NEWS 2015-05-13 13:05:46 +02:00
Dmitry Stogov d72a94468e Merged FE_FETCH_R[W] with the following ASSIGN[_REF] when assigne to CV. 2015-05-13 12:55:42 +03:00
Anatol Belski 6254184a4d ups, it should have used Zend MM 2015-05-13 11:11:37 +02:00
Dmitry Stogov 0d3a24c3f7 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  fix build, catch up with linux part for #66048
2015-05-13 10:10:14 +03:00
Dmitry Stogov 7e5aa6b2ea Removed deprecated conditions 2015-05-13 10:09:06 +03:00
Anatol Belski 890d482197 fix build, catch up with linux part for #66048 2015-05-13 09:05:58 +02:00
Dmitry Stogov f69b30eaae Partial revert of 6a819bba40. 2015-05-13 09:43:05 +03:00
Stanislav Malyshev 4ceb7b46ad 5.4.42 next 2015-05-12 22:30:43 -07:00
Stanislav Malyshev 5a1bef8eef Merge branch 'PHP-5.6'
* PHP-5.6:
  fix format
  update NEWS
  Add test for bug #69522
  Update tests
  Fix bug #69522 - do not allow int overflow
  Forgot test file
  Fix bug #69403 and other int overflows
  Fixed bug #69418 - more s->p fixes for filenames
  Fixed bug #69364 - use smart_str to assemble strings
  Fix bug #69453 - don't try to cut empty string
  Fix bug #69545 - avoid overflow when reading list

Conflicts:
	Zend/zend_alloc.c
	Zend/zend_operators.c
	ext/ftp/ftp.c
	ext/pcntl/pcntl.c
	ext/standard/basic_functions.c
	ext/standard/dir.c
	ext/standard/file.c
	ext/standard/pack.c
	ext/standard/string.c
	main/rfc1867.c
2015-05-12 15:00:24 -07:00
Stanislav Malyshev 587ddf6ddc Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix format
  update NEWS
  Add test for bug #69522
  Update tests
  Fix bug #69522 - do not allow int overflow
  Forgot test file
  Fix bug #69403 and other int overflows
  Fixed bug #69418 - more s->p fixes for filenames
  Fixed bug #69364 - use smart_str to assemble strings
  Fix bug #69453 - don't try to cut empty string
  Fix bug #69545 - avoid overflow when reading list

Conflicts:
	ext/standard/pack.c
2015-05-12 14:26:06 -07:00
Stanislav Malyshev c08f9c2c78 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix format
  update NEWS
  Add test for bug #69522
  Update tests
  Fix bug #69522 - do not allow int overflow
  Forgot test file
  Fix bug #69403 and other int overflows
  Fixed bug #69418 - more s->p fixes for filenames
  Fixed bug #69364 - use smart_str to assemble strings
  Fix bug #69453 - don't try to cut empty string
  Fix bug #69545 - avoid overflow when reading list

Conflicts:
	ext/pcntl/pcntl.c
	ext/standard/basic_functions.c
	ext/standard/pack.c
	ext/standard/tests/dir/opendir_variation1-win32.phpt
2015-05-12 14:24:15 -07:00
Stanislav Malyshev f473ea5464 fix format 2015-05-12 12:37:28 -07:00
Stanislav Malyshev 2f83797a0c update NEWS 2015-05-12 12:17:54 -07:00
Julien Pauli 468e37fe02 fix #66048 for PHP7
* fix-66048:
  Fix for #66048
2015-05-12 16:15:10 +02:00
Julien Pauli 6a819bba40 Fix for #66048 2015-05-12 16:15:01 +02:00
Julien Pauli ff66eec482 Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS
  Fix for #66048
2015-05-12 16:14:07 +02:00
Julien Pauli adbb301a70 Updated NEWS 2015-05-12 16:13:39 +02:00
Julien Pauli 2ddb560c2e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix for #66048
2015-05-12 16:12:51 +02:00
Julien Pauli c117548ea9 Fix for #66048 2015-05-12 16:12:29 +02:00
Nikita Popov c6b986b4e7 Merge branch 'PHP-5.6'
Conflicts:
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2015-05-12 15:09:25 +02:00
Nikita Popov e1cb22a23e Fix bug #69599 2015-05-12 15:08:12 +02:00
Dmitry Stogov 0586702d32 Mark first call frames of stack segment with ZEND_CALL_ALLOCATED flag to simplify checks on stack deallocation. 2015-05-12 15:56:42 +03:00
Julien Pauli 653e8c58c8 Updated NEWS 2015-05-12 14:34:14 +02:00
Christoph M. Becker c3c87e4996 return FALSE instead of NULL from ZipArchive::getStream when php_stream_zip_open() fails (fixes #67161) 2015-05-12 14:32:05 +02:00
Adil Ilhan c9c2794fe6 HTTP 506 status code added.
HTTP 506 status code added in main http status codes file. Reference: RFC 2295
2015-05-12 14:08:17 +02:00
Matthias Breddin 3b6381125c Update www.conf.in 2015-05-12 13:52:49 +02:00
Matthias Breddin 6bd4c3e17d Detailed information about the strftime access.log format
More descriptive usage of a custom timeformat
2015-05-12 13:52:49 +02:00
Julien Pauli 0f422fc467 Updated NEWS 2015-05-12 13:36:13 +02:00
Aaron Piotrowski 071111ecfc Add support for $callable() sytnax with 'Class::method'
Using the $callable() syntax when used with a string of
the form 'Class::method' would error as an undefined
function, even if the string passed is_callable() or the
callable type-hint. The fix adds support for the $callable()
syntax for any string accepted by is_callable() or the
callable type-hint.

Fix bug 68475 test with deprecated notice

Reduced scope of unit test.

Added tests with arguments.
2015-05-12 13:33:28 +02:00
Julien Pauli f4d6596283 Reworked NEWS for PHP 7 2015-05-12 13:29:29 +02:00
Dmitry Stogov 06ef3aa6b0 Fixed string handling (string cached in SHM marked as permanent, strings stored in CG(arena) as not)
Fixed anonymous class support
2015-05-12 13:45:52 +03:00
Xinchen Hui 3c027e1e4e Merge branch 'phpize-zts-display' of https://github.com/monque/php-src 2015-05-12 17:42:23 +08:00
Yuchen Wang 2bd097c9f6 Fix wrong display in ZTS checking 2015-05-12 17:32:01 +08:00
Julien Pauli 79fc9662a3 Updated NEWS 2015-05-12 11:29:47 +02:00
Mats Lindh 7a57061a1f Add comment about SEARCH HTTP Verb being possible as well 2015-05-12 11:24:27 +02:00
Mats Lindh b6018144cd Add test for the SEARCH HTTP verb in the CLI HTTP server. 2015-05-12 11:24:27 +02:00
Mats Lindh 98d015c5b7 Add "SEARCH" as supported HTTP verb.
The "SEARCH" HTTP request method is described in RFC5323 as part of
WebDAV, and allows a client to initiate a server side search.
2015-05-12 11:24:27 +02:00
Julien Pauli 7ff82e2020 Updated UPGRADING 2015-05-12 11:20:12 +02:00
Julien Pauli 0b22cf04e3 Fixed tests 2015-05-12 11:18:35 +02:00
Stanislav Malyshev ef8bb69a14 Ban rebinding closures to different internal classes 2015-05-12 10:54:59 +02:00
Julien Pauli 649b82ce4c Updated UPGRADING 2015-05-12 10:47:35 +02:00
Christoph M. Becker 613f747579 prohibit empty cookie names for setcookie() 2015-05-12 10:47:35 +02:00
Xinchen Hui 1b9a88ed1c Merge branch 'fpm-trace' of https://github.com/laruence/php-src 2015-05-12 16:38:40 +08:00
Xinchen Hui 16265a59ac Use explicit type here 2015-05-12 16:35:57 +08:00
Andreas Heigl 983b101f8e Implements extended error messages
This commit introduces a new constant that can be used to retrieve more
detailed error messages.

This fixes #47222

The new constant LDAP_OPT_DIAGNOSTIC_MESSAGE is defined in PHP when the
underlying library provides (and understands) it. This is the case in
the current OpenLDAP-implementation.

Tanks to Johnny Willer who provided the solution at http://stackoverflow.com/questions/28765077/get-number-of-ad-errors-with-ldap-and-php-ldap-function-return-unprecise-error/28816473#28816473
2015-05-12 10:06:54 +02:00
Loïck Piera 5cf78b81ea Fix typo in INSTALL 2015-05-12 09:58:08 +02:00
Josef Šimánek 413d23f6f0 Remove MSIE 5-specific Cache-Control fields.
reverts 04daa55
2015-05-12 09:53:17 +02:00
Stanislav Malyshev 9c0813fd48 Add test for bug #69522 2015-05-11 01:10:35 -07:00
Stanislav Malyshev 634aa0a2db Update tests 2015-05-11 00:12:39 -07:00
Stanislav Malyshev ba1d9cc4b7 Fix bug #69522 - do not allow int overflow 2015-05-10 23:06:08 -07:00
Xinchen Hui 81049cdf06 Implemented fpm_trace for PHP7 2015-05-11 11:22:38 +08:00
Anatol Belski 0be37148ad catch more places for libxml headers search 2015-05-10 22:22:05 +02:00
Anatol Belski becfdeb2ff improve searchability for libxml2 headers
and bring the configs inline with the current libxml2 build
2015-05-10 22:22:03 +02:00
Anatol Belski e570bb430d fix snprintf redefinition in libxmlrpc under vc14 2015-05-10 22:22:02 +02:00
Anatol Belski f22a5bd710 fix timezone usage in soap for vc14 2015-05-10 22:22:01 +02:00
Jakub Zelenka 359df4dea8 Tidy up and regenerate json parser with latest bison version 2015-05-10 18:08:16 +01:00
Anatol Belski c93a360661 fix _timezone usage for vc14 2015-05-10 18:17:24 +02:00
Lauri Kenttä cf7e5357a4 random_int: Fix power of two check.
(x & ~x) is always 0.
((x & (~x + 1)) != x) works.
((x & (x - 1)) != 0) works too.
2015-05-10 13:00:45 +02:00
Stanislav Malyshev e2bbf0a2df Forgot test file 2015-05-10 02:24:29 -07:00
Stanislav Malyshev c591f022f8 Fix bug #69403 and other int overflows 2015-05-10 02:20:08 -07:00
Stanislav Malyshev be9b2a95ad Fixed bug #69418 - more s->p fixes for filenames 2015-05-10 02:09:38 -07:00
Stanislav Malyshev 4605d536d2 Fixed bug #69364 - use smart_str to assemble strings 2015-05-09 23:04:25 -07:00
Stanislav Malyshev 8c8889e7d4 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix #48147 - implement manual handling of  //IGNORE for broken libc

Conflicts:
	ext/iconv/iconv.c
2015-05-09 19:00:40 -07:00
Stanislav Malyshev 1ceacc813a Merge branch 'fix48147'
* fix48147:
  Fix #48147 - implement manual handling of  //IGNORE for broken libc
2015-05-09 18:59:10 -07:00
Stanislav Malyshev 33594b78ec Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix #48147 - implement manual handling of  //IGNORE for broken libc
2015-05-09 18:57:18 -07:00
Stanislav Malyshev 473ec539a1 Fix #48147 - implement manual handling of //IGNORE for broken libc
Conflicts:
	ext/iconv/iconv.c
2015-05-09 18:54:40 -07:00
SammyK dd2692621d Add tests for CSPRNG, fix C99 comments
Also replace one return; with RETURN_FALSE; for consistency.
2015-05-09 22:29:26 +02:00
Leigh 5f1b83e9bb Improve CSPRNG implementation 2015-05-09 21:57:59 +02:00
SammyK bc54d139aa Initial implementation for CSPRNG API 2015-05-09 21:57:50 +02:00
Stanislav Malyshev f8f1d275cf Fix #48147 - implement manual handling of //IGNORE for broken libc 2015-05-08 12:55:39 -07:00
Nikita Popov 8f9f21e8d2 Fix static closure error in call_user_func opcode
I'm assuming this is the only error that is_callable() can generate
with retval=1.

This problem manifested after making closures in static methods
not implicitly static, but would also occur when binding any non-static
closure to a scope without a $this.
2015-05-08 15:17:15 +02:00
Xinchen Hui 9d4465e480 Sorry, missed here should be checked 2015-05-08 14:03:08 +08:00
Xinchen Hui 33097bcff6 Remove not necessary checks 2015-05-08 13:54:28 +08:00
Xinchen Hui f05baec0db Reorder fields of curl 2015-05-08 13:36:55 +08:00
Xinchen Hui 0c92538e6f revert previously change to this 2015-05-08 10:33:19 +08:00
Daniel Lowrey c488172975 Improve ZBLOCK handling with zlib < 1.2.4
The original commit for this issue (62b1293) assumed Z_BLOCK was
only defined in < 1.2.4. However, this flush type *is* defined but
is only unavailable for use with deflate().

This new commit correctly checks the ZLIB_VERNUM constant to
determine if Z_BLOCK flush is available for the current deflate()
operation and triggers an appropriate error as needed.

New ZLIB_VERSION and ZLIB_VERNUM constants are also exposed in
userland to allow testing this behavior in environments running
zlib < 1.2.4 (ZLIB_VERNUM check is needed).
2015-05-07 10:31:41 -04:00
Dmitry Stogov 3cc59b3fa0 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Add some NEWS entries
  Allow self etc in eval / file scope
  fix typo in php.ini
2015-05-07 17:27:29 +03:00
Dmitry Stogov a989c0a1a9 Improved fast path locality 2015-05-07 17:26:35 +03:00
Dmitry Stogov bdbe121098 Fixed $this release 2015-05-07 17:26:01 +03:00
Xinchen Hui d258b7a5e4 Merge branch 'php-ini-typo' of https://github.com/lazysoundsystem/php-src 2015-05-07 22:24:21 +08:00
Nikita Popov 34100be688 Add some NEWS entries 2015-05-07 15:38:16 +02:00
Nikita Popov 6ef8ae65a2 Allow self etc in eval / file scope
This fixes a regression from 16a9bc1ec2.
Together with the recent closure related changes this should allow
all usages of self etc, while previously (in PHP 5) some things like
self::class did not work.
2015-05-07 15:38:16 +02:00
Dmitry Stogov ab4ccffc4c Avoid unnecessary reference counter incrementation on $this when call methods 2015-05-07 16:28:23 +03:00
Daniel Lowrey 62b1293e3d Fix Z_BLOCK breakage when built against zlib < 1.2.4 2015-05-07 09:02:38 -04:00
Xinchen Hui fbd1f1f282 Merge branch 'master' of git.php.net:php-src 2015-05-07 19:25:41 +08:00
Xinchen Hui 460e2e6a04 Fixed test in some cases(for more children, needs more time) 2015-05-07 19:25:04 +08:00
Dmitry Stogov e5ea3f362c Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  set ext/zip version to 1.13 (as we have new methods... semver...)
2015-05-07 12:19:33 +03:00
Dmitry Stogov e6976e9ba2 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #69549 (Memory leak with opcache.optimization_level=0xFFFFFFFF)
2015-05-07 12:17:55 +03:00
Dmitry Stogov 329513c3a7 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #69549 (Memory leak with opcache.optimization_level=0xFFFFFFFF)

Conflicts:
	NEWS
2015-05-07 12:16:40 +03:00
Dmitry Stogov 8026001943 Fixed bug #69549 (Memory leak with opcache.optimization_level=0xFFFFFFFF) 2015-05-07 12:14:14 +03:00
Remi Collet f122cc257c set ext/zip version to 1.13 (as we have new methods... semver...) 2015-05-07 10:41:48 +02:00
Dmitry Stogov 9e9170bd07 Strings and other pointers should be handled differently 2015-05-07 11:36:01 +03:00
Dmitry Stogov e96616739c Fixed redundand internal constructor behavior (they shouldn't return NULL anymore) 2015-05-07 10:38:47 +03:00
Rasmus Lerdorf dd0b602381 Fix build 2015-05-06 22:46:56 -07:00
Xinchen Hui 809616c9da Temporary fix for SIGFPE 2015-05-07 11:25:04 +08:00
Dmitry Stogov 3abde43231 Added experimental (disabled by default) file based opcode cache. 2015-05-06 23:46:49 +03:00
Dmitry Stogov 500b884f17 Fixed return without value 2015-05-06 22:53:48 +03:00
Dmitry Stogov 2a9f9860d7 Fixed bug #69534 (Cycle leaks through declared properties on internal classes) 2015-05-06 21:33:49 +03:00
Nikita Popov ab97606b8a Fix compiler assumptions about self/etc wrt closures
* Don't throw an error if self/parent/static are used in a closure
  (outside a class).
* Don't propagate self:: constants into closures
* Use runtime fetch for self::class in closures

Fixes bug #66811.
2015-05-06 18:13:19 +02:00
Nikita Popov bc2ff4a299 Don't implicitly make closures in static methods static
It makes no sense that you can't write a closure using $this in a
static method, even though you can write one outside a class.

Now only closures that have been marked as static will be considered
to be static.

Fixes bug #65598.
2015-05-06 17:29:05 +02:00
Remi Collet d1363e30fd better fix (also fix i386 build) 2015-05-06 16:59:50 +02:00
Remi Collet 31f95eaefb try to fix build when LONG_MAX not defined 2015-05-06 16:24:21 +02:00
Remi Collet 9f2ce6b685 NEWS 2015-05-06 15:24:41 +02:00
Remi Collet 3a55ea02aa add ZipArchive::setCompressionName and ZipArchive::setCompressionIndex methods 2015-05-06 15:16:43 +02:00
Remi Collet 3638ac2300 don't use deprecated libzip call 2015-05-06 15:16:43 +02:00
Remi Collet 9e0cc7a1d9 update libzip to version 1.0.1 2015-05-06 15:16:43 +02:00
Xinchen Hui 31f516b488 Use fast zpp for frequently used gettext(_) 2015-05-06 14:29:19 +08:00
Xinchen Hui 76fb02123f Optimized json_parser
1. use zend_string in key
2. use faster APIs
3. use ZVAL_COPY_VALUE instead of assignment (save u2 copy)
2015-05-06 11:37:30 +08:00
Xinchen Hui 9f0dbdf6c8 Use Z_ARRVAL_P since we already know it's an array 2015-05-06 11:10:33 +08:00
Xinchen Hui c734587303 Fixed comment 2015-05-06 11:03:44 +08:00
Xinchen Hui 13eb630eeb use zval_get_long 2015-05-06 10:58:01 +08:00
Xinchen Hui 55d94a4532 Merge branch 'master' of git.php.net:php-src 2015-05-06 10:51:52 +08:00
Dmitry Stogov 63282d3321 Fixed returning void instead of NULL 2015-05-05 23:50:50 +03:00
Nikita Popov c0c68a9406 Fix build 2015-05-05 21:40:28 +02:00
Nikita Popov d9c2959c27 Fix LSB handling for closures
Closures will now use the called_scope from their instantiation
site. If they are rebound either the class of $this is used or if
no $this is provided the bound scope is used.

With this change the scope for static closures can be changed back
to use EG(scope) rather than EX(called_scope), thus fixing
bug #69568.
2015-05-05 21:14:03 +02:00
Nikita Popov dc546bdc4d Throw exception from FETCH_CLASS_NAME
Instead of empty strings.

This does not affect the existing case of __CLASS__ in traits as
a scope will always exists in that case.
2015-05-05 21:14:03 +02:00
Nikita Popov dd1fdfb17c Use ZEND_FETCH_CLASS_NAME for dynamic self::class etc
Extend the opcode to support getting the parent and static name and
then use it for dynamic ::class resolution.
2015-05-05 21:14:03 +02:00
Dmitry Stogov d7351a5c74 Use Fast ZPP 2015-05-05 21:38:52 +03:00
Dmitry Stogov f6663c7201 Loop splitting and specialization 2015-05-05 18:51:08 +03:00
Dmitry Stogov a8172353ba Micro optimization 2015-05-05 18:50:47 +03:00
Dmitry Stogov 81dd375b5f Fixed compilation warning 2015-05-05 16:28:54 +03:00
Dmitry Stogov b1d486c7d7 e more efficient zend_hash_*() functions 2015-05-05 16:20:29 +03:00
Dmitry Stogov 70c86732cb Use zend_string to represent pdo_column_data.name and avoid duplication. 2015-05-05 16:19:51 +03:00
Dmitry Stogov 275afbacd1 Use zend heap instead of system 2015-05-05 16:06:10 +03:00
Xinchen Hui 9b3a92a1ca micro optimizations 2015-05-05 18:22:38 +08:00
Dmitry Stogov a610e8c4c6 Use better zend_hash_*() functions. 2015-05-05 12:58:11 +03:00
Dmitry Stogov 17e4c62872 Removed check for count() in SXE class 2015-05-05 12:57:30 +03:00
Xinchen Hui 5f8bc73fc3 fixed comment 2015-05-05 17:37:42 +08:00
Remi Collet d754be166e Merge branch 'PHP-5.6'
* PHP-5.6:
  Relax tests failing on i386 with new zic

Conflicts:
	ext/date/tests/getdate_variation7.phpt
	ext/date/tests/localtime_variation3.phpt
2015-05-05 11:37:03 +02:00
Xinchen Hui 7b9e4e19e1 Unused macros 2015-05-05 17:25:25 +08:00
Xinchen Hui c380b2813a Merge branch 'master' of git.php.net:php-src 2015-05-05 17:24:17 +08:00
Xinchen Hui 8c0ebb4c5d Optimize cast simplexml to IS_BOOL 2015-05-05 17:23:54 +08:00
Remi Collet ac3ca0280a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Relax tests failing on i386 with new zic
2015-05-05 11:23:13 +02:00
Remi Collet 33e2aa452d Relax tests failing on i386 with new zic 2015-05-05 11:22:29 +02:00
Xinchen Hui b6e893c143 Unused var 2015-05-05 17:02:54 +08:00
Remi Collet 204e37ab3a Merge branch 'PHP-5.6'
* PHP-5.6:
  Remove SSLv3 test dependencies SSLv3 is going away. Debian8 already ships with an openssl with no SSLv3 support which was causing these tests to fail.
2015-05-05 10:41:47 +02:00
Rasmus Lerdorf 741382d968 Remove SSLv3 test dependencies
SSLv3 is going away. Debian8 already ships with an openssl
with no SSLv3 support which was causing these tests to fail.

Conflicts:
	ext/openssl/tests/session_meta_capture.phpt
2015-05-05 10:40:55 +02:00
Dmitry Stogov 859aa06205 Avoid repeatable lookups for count() method in the same class entry. 2015-05-05 11:10:21 +03:00
Dmitry Stogov 5fc88a9968 Inline IS_LONG value calculation and avoid strtol() call. 2015-05-05 11:09:18 +03:00
Xinchen Hui c50994dc0b Merge branch 'PHP-5.6'
Conflicts:
	ext/opcache/ZendAccelerator.h
2015-05-05 11:07:02 +08:00
Xinchen Hui ba1c78c410 Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6 2015-05-05 11:06:23 +08:00
Xinchen Hui 24992a1422 Merge branch 'PHP-5.5' into PHP-5.6 2015-05-05 11:06:14 +08:00
Xinchen Hui cf3e976c3b Update version 2015-05-05 11:06:04 +08:00
Anatol Belski 8f2b0e64d7 add config vars for phpize where conf opts aren't enabled 2015-05-04 16:07:27 +02:00
Anatol Belski 6f917e279f Merge branch 'PHP-5.6'
* PHP-5.6:
  add config vars for phpize
2015-05-04 16:06:23 +02:00
Anatol Belski c4f8dd9071 add config vars for phpize 2015-05-04 15:59:14 +02:00
Anatol Belski 110ce301e0 fix compiler check for phpize 2015-05-04 15:13:58 +02:00
Xinchen Hui ce9248b6ef Merge branch 'PHP-5.6' 2015-05-04 19:26:07 +08:00
Xinchen Hui 7289981c61 Merge branch 'PHP-5.5' into PHP-5.6 2015-05-04 19:22:22 +08:00
Xinchen Hui 7af9ba23a7 Saving the latter checking in most cases 2015-05-04 19:21:54 +08:00
Xinchen Hui 6b5ca7202f Fixed #69566 in master 2015-05-04 10:35:55 +08:00
Xinchen Hui 02110bdfaa Merge branch 'PHP-5.6' 2015-05-04 10:34:57 +08:00
Xinchen Hui e49a0e17b7 Merge branch 'PHP-5.5' into PHP-5.6 2015-05-04 10:34:48 +08:00
Xinchen Hui fff921d7a3 Update NEWS 2015-05-04 10:34:39 +08:00
John Boehr 9708378d13 Fix uninitialized value with extension traits 2015-05-04 10:33:39 +08:00
John Boehr 56fdae9018 Fix uninitialized value with extension traits 2015-05-04 10:33:26 +08:00
Christopher Jones 7ba353ef69 Add unique prefix to exported function 2015-05-02 10:03:30 -07:00
Christopher Jones 0a02cdf775 First pass migrating PDO_OCI to PHP 7 2015-05-01 18:22:41 -07:00
Christopher Jones be806eba80 Export free_statement to replace php_pdo_stmt_delref which was deleted in 9fe8531309 along with php_pdo_stmt_addref 2015-05-01 18:17:34 -07:00
Andy Footner ed87d16c38 fix typo in php.ini 2015-05-01 12:38:07 +02:00
Márcio Almada c2f3091b98 add missing SKIPIF section on test 2015-04-30 03:03:29 -03:00
Márcio Almada 110759386e ext tokenizer port + cleanup unused lexer states
we basically added a mechanism to store the token stream during parsing
and exposed the entire parser stack on the tokenizer extension through
an opt in flag: token_get_all($src, TOKEN_PARSE).

this change allows easy future language enhancements regarding context
aware parsing & scanning without further maintance on the tokenizer
extension while solves known inconsistencies "parseless" tokenizer
extension has when it handles `__halt_compiler()` presence.
2015-04-30 03:03:29 -03:00
Márcio Almada 02a9eb4f8c fix indentation + remove c++ comments 2015-04-30 03:03:29 -03:00
Márcio Almada a75decd452 implement context sensitive language with lexical feedback
The implementation has no regression risks, has an even smaller footprint
compared to the previous attempt involving a pure lexical approach, is higly
predictable and higly configurable.

To turn a word semi-reserved you only need to edit the "SEMI_RESERVED" parser rule,
it's an inclusive list of all the words that should be matched as T_STRING on specific contexts.
Example:

```
method_modifiers function returns_ref indentifier '(' parameter_list ')' ...
```

instead of:

```
method_modifiers function returns_ref T_STRING '(' parameter_list ')' ...
```

TODO: port ext tokenizer
2015-04-30 03:03:29 -03:00
Márcio Almada a54e1237ec add tests for semi reserved words and remove obsolete ones 2015-04-30 03:03:29 -03:00
Stanislav Malyshev c27f012b7a Fix bug #69453 - don't try to cut empty string 2015-04-29 22:51:43 -07:00
Stanislav Malyshev ac28329354 Fix bug #69545 - avoid overflow when reading list 2015-04-29 22:50:18 -07:00
Stanislav Malyshev 98fe9405e2 Merge branch 'PHP-5.6'
* PHP-5.6:
  Upgrade to PCRE 8.37 due to various bugfixes

Conflicts:
	ext/pcre/config.w32
	ext/pcre/config0.m4
	ext/pcre/pcrelib/pcre_jit_compile.c
	ext/pcre/pcrelib/sljit/sljitConfig.h
	ext/pcre/pcrelib/sljit/sljitConfigInternal.h
	ext/pcre/pcrelib/sljit/sljitLir.c
	ext/pcre/pcrelib/sljit/sljitLir.h
	ext/pcre/pcrelib/sljit/sljitNativeARM_32.c
	ext/pcre/pcrelib/sljit/sljitNativeARM_64.c
	ext/pcre/pcrelib/sljit/sljitNativeARM_T2_32.c
	ext/pcre/pcrelib/sljit/sljitNativeMIPS_common.c
	ext/pcre/pcrelib/sljit/sljitNativePPC_common.c
	ext/pcre/pcrelib/sljit/sljitNativeSPARC_common.c
	ext/pcre/pcrelib/sljit/sljitNativeTILEGX_64.c
	ext/pcre/pcrelib/sljit/sljitNativeX86_32.c
	ext/pcre/pcrelib/sljit/sljitNativeX86_64.c
	ext/pcre/pcrelib/sljit/sljitNativeX86_common.c
	ext/pcre/pcrelib/sljit/sljitUtils.c
2015-04-29 22:34:54 -07:00
Stanislav Malyshev 428d0983cd Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Upgrade to PCRE 8.37 due to various bugfixes
2015-04-29 22:28:04 -07:00
Stanislav Malyshev ce6db558f9 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Upgrade to PCRE 8.37 due to various bugfixes
2015-04-29 22:27:21 -07:00
Stanislav Malyshev 95fa727992 Upgrade to PCRE 8.37 due to various bugfixes 2015-04-29 22:27:07 -07:00
Ferenc Kovacs 972e94a24d Merge branch 'PHP-5.6'
* PHP-5.6:
  5.6.10 will be next
2015-04-30 00:03:46 +02:00
Ferenc Kovacs 9c7496e0dd 5.6.10 will be next 2015-04-30 00:01:55 +02:00
Nikita Popov 16a9bc1ec2 Disallow self etc outside classes at compile-time
Also fix a bug with return types where "self" was rejected inside
a class, but not on a method.

Fallout: A couple of tests changed to more generic error messages.
2015-04-29 20:51:08 +02:00
Dmitry Stogov d880ead8a7 Improve fast_is_[not_]identical() functions to teturn value instead of takeing additional arguments.
Pair INSTANCEOF with the following JMPZ/JMPNZ.
2015-04-29 16:43:23 +03:00
Dmitry Stogov 1d718fe859 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  5.5.26 now
2015-04-29 14:21:29 +03:00
Dmitry Stogov 762a774c40 Fixed repeatable opcodes on CALL VM without global registers 2015-04-29 14:20:44 +03:00
Julien Pauli f1fa3c4b92 Merge branch 'PHP-5.6'
* PHP-5.6:
  5.5.26 now
2015-04-29 11:22:05 +02:00
Julien Pauli d004c1d5ff Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  5.5.26 now

Conflicts:
	configure.in
	main/php_version.h
2015-04-29 11:21:18 +02:00
Julien Pauli 775d0707ca 5.5.26 now 2015-04-29 11:16:06 +02:00
Dmitry Stogov 690440771a Paired instuctions frequientiy used together (e.g. comparisons + conditional jumps) 2015-04-29 04:17:59 +03:00
Derick Rethans c2ef8a9acc Merge branch 'PHP-5.6' 2015-04-29 00:29:04 +01:00
Derick Rethans ce9b6e5ee8 Merge branch 'PHP-5.5' into PHP-5.6 2015-04-29 00:28:56 +01:00
Derick Rethans 6a5798d990 Use new structures for tzdb header here as well 2015-04-29 00:28:50 +01:00
Derick Rethans 0f4d527722 Merge branch 'PHP-5.6' 2015-04-29 00:28:20 +01:00
Derick Rethans 66c7eea659 Merge branch 'PHP-5.5' 2015-04-29 00:28:04 +01:00
Derick Rethans 7d6d8a3369 Merge branch 'PHP-5.5' into PHP-5.6 2015-04-29 00:27:55 +01:00
Derick Rethans df49ce3d5a This doesn't work in PHP 5.5 - sigh, I wish the libs were kept in sync 2015-04-29 00:25:29 +01:00
Derick Rethans f179852f83 Merge branch 'PHP-5.6'
Conflicts:
	ext/date/lib/parse_tz.c
2015-04-29 00:10:40 +01:00
Derick Rethans a1fef89abe Merge branch 'PHP-5.5' into PHP-5.6 2015-04-29 00:09:00 +01:00
Derick Rethans 912e42fc23 Split header reading in 32bit and 64bit variants.
We need to use the 64bit header for the second set of transitions, as there
could be a different amount of transitions. This also opens up the way towards
real 64bit support.
2015-04-29 00:08:28 +01:00
Dmitry Stogov d271d2cf7b Make ZEND_RECV_INIT and ZEND_BIND_GLOBALS opcodes to be "repeatabe" with inner-loop instead of main interpreter loop. 2015-04-29 00:40:43 +03:00
Dmitry Stogov 3057034608 Optimize opcodes for fast path 2015-04-28 23:57:21 +03:00
Dmitry Stogov 388c2cbdbc Micro optimizations 2015-04-28 19:11:45 +03:00
Dmitry Stogov 612de5214f Simplified code 2015-04-28 19:11:23 +03:00
Anatol Belski 27a6ab5bc5 updated NEWS and fixed a typo 2015-04-28 17:08:03 +02:00
Derick Rethans 54f016ad77 Merge branch 'PHP-5.6'
Conflicts:
	ext/date/lib/parse_iso_intervals.re
	ext/date/lib/timelib.h
2015-04-28 15:58:30 +01:00
Derick Rethans 43c69443bb Merge branch 'PHP-5.5' into PHP-5.6 2015-04-28 15:57:35 +01:00
Derick Rethans cdd2b8a79f Merge whitespace changes that have been made to timelib and PHP-5.6 and master 2015-04-28 15:57:26 +01:00
Anatol Belski 25a353f231 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  backported patch for bug #69472
2015-04-28 15:35:01 +02:00
Anatol Belski c4739897e7 updated NEWS 2015-04-28 15:34:11 +02:00
Anatol Belski 4af9ca544e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  backported patch for bug #69472
2015-04-28 15:32:22 +02:00
Anatol Belski 3cd3881574 backported patch for bug #69472 2015-04-28 15:31:47 +02:00
Jan Starke 6e4a1b7862 Fixed bug #69472 php_sys_readlink ignores misc errors from GetFinalPathNameByHandleA 2015-04-28 15:28:57 +02:00
Anatol Belski 7857b8a253 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  Fixed bug #69381 out of memory with sage odbc driver
2015-04-28 15:15:30 +02:00
Anatol Belski 5cfb81d5b0 updated NEWS 2015-04-28 15:14:45 +02:00
Anatol Belski b78f8220e7 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  Fixed bug #69381 out of memory with sage odbc driver
2015-04-28 15:13:46 +02:00
Anatol Belski 1c7a902d8a updated NEWS 2015-04-28 15:13:19 +02:00
Frederic Marchal f505d11207 Fixed bug #69381 out of memory with sage odbc driver
This is just a hotfix as there are still drivers with no full
ODBC 3.x support. This patch origins from bug #68350 which was
solved by the proper 3.0 migration, another driver (Sage)
turned out to have the real issue.
2015-04-28 15:08:53 +02:00
Anatol Belski 268eb1999b fix bug #69381
a simpler version is to be backported
2015-04-28 15:02:48 +02:00
Anatol Belski ac275f9e31 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix VC9 build with PCRE
  Revert "Fix segfault in ext/date since 957aa2"
  Revert "Fix segfault in ext/date since 957aa2"
2015-04-28 14:39:30 +02:00
Anatol Belski 7ccafe40c2 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix VC9 build with PCRE
  Revert "Fix segfault in ext/date since 957aa2"
2015-04-28 14:38:45 +02:00
Anatol Belski 768bbedf82 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix VC9 build with PCRE
2015-04-28 14:38:21 +02:00
Anatol Belski 9c5c3ff022 fix VC9 build with PCRE 2015-04-28 13:15:39 +02:00
Matteo Beccati e645837ba1 Revert "Fix segfault in ext/date since 957aa2"
This reverts commit b5e5098c50.

A proper fix from Derick is underway. I apologise for stepping on his toes ;)
2015-04-28 12:56:15 +02:00
Matteo Beccati 4cabbf9781 Revert "Fix segfault in ext/date since 957aa2"
This reverts commit b5e5098c50.

A proper fix from Derick is underway. I apologise for stepping on his toes ;)
2015-04-28 12:56:11 +02:00
Matteo Beccati 7778a5a9b4 Revert "Fix segfault in ext/date since 957aa2"
This reverts commit b5e5098c50.

A proper fix from Derick is underway. I apologise for stepping on his toes ;)
2015-04-28 12:56:05 +02:00
Remi Collet f4b2ce08c4 Merge branch 'PHP-5.6'
* PHP-5.6:
  relax tests with huge year (new zic)
  ignore second value for huge timestamp test (new zic)
  relax test for date < INT32_MIN (new zic)
  relax bigbang content (new zic)
  Make date transitions tests more flexible
2015-04-28 12:50:30 +02:00
Remi Collet 4131f6bf39 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  relax tests with huge year (new zic)
  ignore second value for huge timestamp test (new zic)
  relax test for date < INT32_MIN (new zic)
  relax bigbang content (new zic)
  Make date transitions tests more flexible
2015-04-28 12:50:09 +02:00
Remi Collet 97fcbf041a relax tests with huge year (new zic) 2015-04-28 12:48:47 +02:00
Remi Collet c1e84a3bde ignore second value for huge timestamp test (new zic) 2015-04-28 12:48:38 +02:00
Remi Collet 194e64982e relax test for date < INT32_MIN (new zic) 2015-04-28 12:48:30 +02:00
Remi Collet ba41b340c2 relax bigbang content (new zic) 2015-04-28 12:48:23 +02:00
Remi Collet c39e777722 Make date transitions tests more flexible
zic in recent glibc (2.20) introduce a new transitionn
so use a range to avoid failure when total number
of transitions is different (243/244)
2015-04-28 12:48:13 +02:00
Dmitry Stogov 89be15c56d Micro optimizations 2015-04-28 12:41:39 +03:00
Matteo Beccati 94f0b940f9 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix segfault in ext/date since 957aa2
2015-04-28 11:08:46 +02:00
Matteo Beccati df490dcf0c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix segfault in ext/date since 957aa2
2015-04-28 10:57:52 +02:00
Matteo Beccati b5e5098c50 Fix segfault in ext/date since 957aa2 2015-04-28 10:57:18 +02:00
Stanislav Malyshev c34aba472c Merge branch 'PHP-5.6'
* PHP-5.6:
  Upgrade PCRE to 8.36, it fixes some crashes

Conflicts:
	ext/pcre/pcrelib/config.h
	ext/pcre/pcrelib/pcre_ucd.c
2015-04-27 23:41:18 -07:00
Stanislav Malyshev 19ad1389aa Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Upgrade PCRE to 8.36, it fixes some crashes
2015-04-27 23:30:57 -07:00
Stanislav Malyshev 13c32a102c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Upgrade PCRE to 8.36, it fixes some crashes
2015-04-27 23:25:32 -07:00
Stanislav Malyshev 23917b451b Upgrade PCRE to 8.36, it fixes some crashes
We probably will need to go to 8.37 once it is released.
2015-04-27 23:16:54 -07:00
Xinchen Hui 33e32cbe5b Make it inline 2015-04-28 11:30:25 +08:00
Xinchen Hui 38d79e9449 Drop unused num index 2015-04-28 11:26:58 +08:00
Xinchen Hui e563386582 Fixed interned string leaks after new STATIC_KEY flag is introduced 2015-04-28 11:14:21 +08:00
Nikita Popov 422de8a7a7 Drop compile_class_decl return value
Was introduced for anon classes, but no longer needed.
2015-04-27 22:54:02 +02:00
Dmitry Stogov 98e9296f34 Restored accedently removed line that caused memory leak 2015-04-27 23:05:24 +03:00
hakre 6551f996b9 Minor Typo in Comment 2015-04-27 20:06:55 +02:00
Nikita Popov fc264da0e5 Cleanup substr_replace 2015-04-27 18:58:47 +02:00
Nikita Popov 40e465e357 Clean up some type conversions
While at it also fix some type checks in iconv and drop dead and
unported code in standard/filters.
2015-04-27 18:50:08 +02:00
Dmitry Stogov 1800bed104 Micro optimizations 2015-04-27 18:30:33 +03:00
Dmitry Stogov ecaf49eb29 Added news entry 2015-04-27 17:21:16 +03:00
Dmitry Stogov 5af7743cf5 Merge branch 'anon'
* anon:
  Pass class_entry through IS_VAR to avoid hash lookup in ZEND_NEW.
  Use "safe" anonymous class names. Don't show the mangled names through var_dump().
  Refactored using specialized opcodes
  Fix implementing_class handling
  More cleanup (mainly retab)
  Don't issue FETCH_CLASS for anon classes
  More retab
  Simply anon class name generation
  Retab
  Revert unrelated changes / rebase fixup
  Rebase Joe's anon classes implementation
2015-04-27 17:18:35 +03:00
Dmitry Stogov ffe804a50c Use new hash iteration API. 2015-04-27 16:50:47 +03:00
Dmitry Stogov 0182eb4717 Eliminate useless checks 2015-04-27 15:54:41 +03:00
Dmitry Stogov 8acd7f49da Pass class_entry through IS_VAR to avoid hash lookup in ZEND_NEW. 2015-04-27 14:16:29 +03:00
Dmitry Stogov 2a1b0b1121 Use "safe" anonymous class names. Don't show the mangled names through var_dump(). 2015-04-27 13:08:22 +03:00
Dmitry Stogov 94245bc14c Refactored using specialized opcodes 2015-04-27 12:24:39 +03:00
Nikita Popov 8361893444 Fix implementing_class handling 2015-04-26 16:03:58 +02:00
Nikita Popov f2f890a256 More cleanup (mainly retab) 2015-04-26 15:54:30 +02:00
Nikita Popov 03d7042d5c Don't issue FETCH_CLASS for anon classes 2015-04-26 15:44:48 +02:00
Nikita Popov 929fdc1c1a More retab 2015-04-26 15:28:55 +02:00
Nikita Popov 4a7061b0e3 Simply anon class name generation
Drop dead "parent" code
2015-04-26 15:24:13 +02:00
Nikita Popov f16eca58a2 Retab 2015-04-26 15:17:53 +02:00
Nikita Popov 9a1797d48e Revert unrelated changes / rebase fixup 2015-04-26 15:13:49 +02:00
krakjoe 49608e0608 Rebase Joe's anon classes implementation 2015-04-26 15:04:22 +02:00
Derick Rethans 1a4d3e4855 Merge branch 'PHP-5.6' 2015-04-26 11:04:54 +01:00
Derick Rethans 1e18ffd2f8 Merge branch 'PHP-5.5' into PHP-5.6 2015-04-26 11:04:35 +01:00
Derick Rethans 957aa220aa Fixed location reading due to file format changes 2015-04-26 11:04:16 +01:00
Bob Weinand 49bd5eaabf Print should be in *current* context (stack) 2015-04-25 19:15:08 +02:00
Bob Weinand a9a6799964 Add line_start/end info to main op_array 2015-04-25 19:10:58 +02:00
Nikita Popov 300b1db09f Tweak new deflate/inflate implementations
Return NULL on zpp.
Don't manually cast zvals to long.
2015-04-25 19:00:41 +02:00
Nikita Popov 75b4fa079f Fix bug #69532
Partial revert of ea2fc7f935.
2015-04-25 18:47:26 +02:00
Nikita Popov e0a39eecf1 Respect USE_OTHER in spl_array_is_object
Also a bit of code cleanup in get_hash_table.
2015-04-25 16:13:39 +02:00
Nikita Popov 66ce7cc083 Don't store $this reference for IS_SELF AO
The var_dump output changes in array_022.phpt were wrong previously,
the "storage" that was referenced there was not the actually used
storage.
2015-04-25 16:13:37 +02:00
Nikita Popov 3140d0c0c8 Drop ArrayObject IS_REF flag 2015-04-25 16:13:32 +02:00
Derick Rethans 0cfbdb7200 - Updated to version 2015.4 (2015d) 2015-04-24 22:56:26 +01:00
Derick Rethans 6f3483c8a4 Empty merge 2015-04-24 22:56:26 +01:00
Dmitry Stogov b250f46703 Optimized HashTable copy and cleanup function for cases without holes. 2015-04-24 22:43:50 +03:00
Derick Rethans ad9aaf8093 - Updated to version 2015.4 (2015d) 2015-04-24 17:22:33 +01:00
Derick Rethans 73a07522ef Empty merge 2015-04-24 17:22:32 +01:00
Derick Rethans 53c49994f2 - Updated to version 2015.4 (2015d) 2015-04-24 17:22:31 +01:00
Nikita Popov 2a87a42cd4 Dropped CN_match and SNI_server_name context options 2015-04-24 18:18:18 +02:00
Nikita Popov 4694e1c020 Remove PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT
Use the generic ATTR_EMULATE_PREPARES instead.
2015-04-24 18:08:18 +02:00
Daniel Lowrey 38ea6a827e Fix vim folding block 2015-04-24 09:27:24 -06:00
Daniel Lowrey 3973f5df5c UPGRADING 2015-04-24 09:25:21 -06:00
Daniel Lowrey 32dcbd10ee Update NEWS/UPGRADING 2015-04-24 09:19:58 -06:00
Daniel Lowrey 852904173e Merge branch 'deflate'
* deflate:
  Add inflate_*() test cases
  Add incremental zlib inflate API
  Add deflate_*() test cases
  Several deflate_* changes (more after the jump)
  Add incremental zlib deflate API
2015-04-24 09:02:59 -06:00
Dmitry Stogov ef36d8a91e Optimized zend_hash_rehash(), added some exoectations to generate better code 2015-04-24 13:00:56 +03:00
Yasuo Ohgaki e881017a75 Merge branch 'PHP-5.6'
* PHP-5.6:
  Set NULL after efree
2015-04-24 16:06:41 +09:00
Yasuo Ohgaki 02ff308e27 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Set NULL after efree
2015-04-24 16:05:50 +09:00
Yasuo Ohgaki 4c711200b4 Set NULL after efree 2015-04-24 16:04:01 +09:00
Dmitry Stogov 6265687768 Added HashTable flag HASH_FLAG_STATIC_KEYS that is maintaned to be set if all hash table keys are numbers or interned strings.
Take this flag into account when copy or destroy HashTable to avoud useless checks for each key.
2015-04-24 09:34:50 +03:00
Daniel Lowrey 0e62416101 Add inflate_*() test cases 2015-04-23 23:50:59 -06:00
Daniel Lowrey 585037c196 Add incremental zlib inflate API 2015-04-23 23:50:56 -06:00
Daniel Lowrey 4d5324088c Add deflate_*() test cases 2015-04-23 23:49:41 -06:00
Daniel Lowrey daecc32618 Several deflate_* changes (more after the jump)
- Remove deflate_flush()
- Add ZLIB_FINISH constant for use with deflate_add()
- Use options array at parameter 2 of deflate_add() to insulate
  against future API changes
- Minor bug fixes
- deflate_init() and deflate_add() now always return FALSE in the
  event of an error
2015-04-23 23:49:35 -06:00
Dmitry Stogov 000d5d7ec9 Dont't use DO_ICALL for internal functions returned by reference 2015-04-24 00:34:11 +03:00
Dmitry Stogov fc80305e48 Cleanup comments and add related tests. 2015-04-23 17:52:05 +03:00
Xinchen Hui ea2fc7f935 Slight improvement 2015-04-23 21:50:38 +08:00
Kalle Sommer Nielsen f2435bd252 Fixed compiler warning 2015-04-23 12:31:02 +02:00
Dmitry Stogov 49cf7c5d12 Don't propogate "fake" EX(called_scope) and EX(This) into each internal function.
They need quite seldom and it's cheaper to get them from corresponfing upper stack frame.
2015-04-23 12:16:37 +03:00
Dmitry Stogov 801768f72c Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  libpq versions older than 9.3 do not have lo_lseek64
  fix include with vc14
  fix compilation with vc14
  improve zpp readme
2015-04-23 03:43:55 +03:00
Dmitry Stogov 6d4da2db8a Make internal non-static methods to be executed in context of class. Set EG(scope) accordingly. 2015-04-23 03:41:50 +03:00
Rasmus Lerdorf 1ce2206244 libpq versions older than 9.3 do not have lo_lseek64 2015-04-22 16:15:28 -07:00
Anatol Belski 4923d23469 fix include with vc14 2015-04-22 22:26:06 +02:00
Anatol Belski 6a1bf93ad9 fix compilation with vc14 2015-04-22 22:25:33 +02:00
Anatol Belski 64114e405a improve zpp readme 2015-04-22 22:25:00 +02:00
Dmitry Stogov 15a5f61cf4 Use fast method to check if first arguments should be passed by reference (not tested onbig endian). 2015-04-22 21:46:13 +03:00
Dmitry Stogov af33279a6c Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Fix "invalid opcode" error
2015-04-22 20:40:47 +03:00
Lior Kaplan 4fd3c8aebb Add entry for bug #69152 in 5.6.8 2015-04-22 19:40:56 +03:00
Lior Kaplan b35c02e2df Add entry for bug #69152 in 5.5.24 2015-04-22 19:38:26 +03:00
Nikita Popov 62aabf5d9f Fix "invalid opcode" error
Method call can happen on CONST, it'll just throw an error.

Not forbidding this at compile-time, so this can be overridden in
an extension.
2015-04-22 17:46:25 +02:00
Lior Kaplan bfa7e11c9c Format alignment 2015-04-22 18:19:45 +03:00
Lior Kaplan e48305cdb5 Bug #68846 was fixed in 5.6.8 by 934d6ed9 2015-04-22 18:10:37 +03:00
Lior Kaplan 59f6d7cd4f Add merged bug fixes into 5.5.24
Done in commits 25cb6f00 and 363e6ce6
2015-04-22 17:41:34 +03:00
Bob Weinand e0e1d99c71 Add incremental zlib deflate API 2015-04-22 06:04:13 -06:00
Dmitry Stogov d71105b90a Use string primitive 2015-04-22 14:23:22 +03:00
Dmitry Stogov a2d87429d5 Removred temporary code 2015-04-22 13:14:03 +03:00
Dmitry Stogov 8ef7e14117 Improved property inheritance code 2015-04-22 12:53:54 +03:00
Xinchen Hui b59275bac1 Merge branch 'master' of git.php.net:php-src 2015-04-22 16:37:19 +08:00
Xinchen Hui 0b8d6bd9ad Merge branch 'PHP-5.6' 2015-04-22 16:36:29 +08:00
Kalle Sommer Nielsen ceb1ea37ad Windows support for sysvshm
A little background:
* key_t is an int, like ext/shmop
* There is no ftok() (from ext/standard), so tests have a new check to see whether or not it is available. This however means that the 7 tests will all be skipped for Windows. I know we cannot properly implement an ftok() function since there is no inodes for NTFS, maybe we should look into using the GetFileInfoByHandle() or similar to use the system unique ID for a file to get the same functionality, Anatol?
* Despite the lack of phpt's, local testing works flawlessly but we better look into a solution for this if we are to keep this patch
2015-04-22 09:29:45 +02:00
Xinchen Hui 9db4e25927 Since 5.6 stat.cwd using emalloc (Thanks to Remi) 2015-04-22 15:14:00 +08:00
Xinchen Hui af3c72bc80 fixed warning & test pushing 2015-04-22 10:53:49 +08:00
Dmitry Stogov c61bf4bc11 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  FAST_RET opcode also returns
  Also consider specific catches when checking for uncaught
  Break on uncaught exceptions in current frame in phpdbg
2015-04-22 02:30:10 +03:00
Dmitry Stogov 770cb1da71 Keep realpath and PCRE caches in consistency with opcache SHM. 2015-04-22 02:29:06 +03:00
Bob Weinand 0ec3a6ff33 FAST_RET opcode also returns 2015-04-22 01:11:59 +02:00
Bob Weinand e09a0bfc9e Also consider specific catches when checking for uncaught 2015-04-22 01:08:08 +02:00
Bob Weinand 73d31d44e8 Break on uncaught exceptions in current frame in phpdbg 2015-04-22 01:08:07 +02:00
Dmitry Stogov c9da004a18 Slight zend_hash_find() optimization. 2015-04-21 23:27:44 +03:00
Dmitry Stogov a0c07c90f2 Fixed zend_string related inconsistencies 2015-04-21 23:26:34 +03:00
Bob Weinand 76b1d755fc Fix first frame in backtrace 2015-04-21 22:20:11 +02:00
Bob Weinand 4376373da3 Fix yield from with iterator (first element missing) 2015-04-21 19:42:23 +02:00
Bob Weinand 05f896eefd Add next command docs 2015-04-21 19:42:23 +02:00
Nikita Popov d2607a0110 Move more stuff to file_context
Introduce helper macro FC(x) for CG(file_context).x.

end_compilation() now handled by file_context_end().

While at it, dropped zval wrapper for ticcks.
2015-04-21 17:39:07 +02:00
Xinchen Hui a18c4c99ea Merge branch 'PHP-5.6' 2015-04-21 22:45:19 +08:00
Xinchen Hui 29c449ce98 Merge branch 'PHP-5.5' into PHP-5.6 2015-04-21 22:44:45 +08:00
Xinchen Hui a508693874 Remove tail blank which is committed by accident 2015-04-21 22:44:22 +08:00
Xinchen Hui a090977419 Merge branch 'PHP-5.6'
Conflicts:
	Zend/zend_compile.c
2015-04-21 22:39:46 +08:00
Xinchen Hui ceb992501b Update NEWS 2015-04-21 22:37:25 +08:00
Xinchen Hui 9d9ba493a2 Merge branch 'PHP-5.5' into PHP-5.6 2015-04-21 22:37:00 +08:00
Xinchen Hui c667c26f61 Fixed Bug #69467 (Wrong checked for the interface by using Trait) 2015-04-21 22:36:32 +08:00
Xinchen Hui e121ccaaad Fixed warnings and folder marks mess 2015-04-21 21:53:12 +08:00
Xinchen Hui 8362aebdbf Fixed mem leak in assign_to_obj with reference 2015-04-21 21:04:20 +08:00
Bob Weinand f83ee6a05d Add next command / Fix recursion/exceptions with u/F/L 2015-04-21 12:31:57 +02:00
Dmitry Stogov ca76a86fe6 Removed deprecated code 2015-04-21 11:48:43 +03:00
Dmitry Stogov 81a9505742 Compact HashTables to reduce SHM usage 2015-04-21 00:27:21 +03:00
Bob Weinand 54018ada7d Adapt test for new format 2015-04-20 21:05:10 +02:00
Bob Weinand 5f10e84208 Shrink phpdbg opcode dump output a bit more 2015-04-20 20:59:13 +02:00
Nikita Popov 0381c1b79e Fixed bug #69388
Renamed compiler_context to oparray_context. Introduced per-file
file_context. Moved import tables into the file_context.

context_stack no longer exists, instead keeping backups of contexts
on C stack. Same for file contexts.

TODO: Move more things out of CG into file_context. There should be
a number of other things that we should not try to reuse in nested
compilations.
2015-04-20 18:18:52 +02:00
Dmitry Stogov b99174136c Fixed reference counting 2015-04-20 18:49:17 +03:00
Dmitry Stogov b1a03d7d39 Removed invalid code 2015-04-20 16:48:49 +03:00
Bob Weinand 61ba269f4c Show full stacktraces for exceptions in phpdbg 2015-04-20 14:12:47 +02:00
Bob Weinand 890212866d Fix uncaught exception in phpdbg 2015-04-20 13:55:09 +02:00
Bob Weinand 5f35e571fa show opcode count 2015-04-20 13:04:56 +02:00
Bob Weinand 1a249bd674 Shorten opline dump lines and show literals 2015-04-20 12:23:11 +02:00
Xinchen Hui 1c3b99c4ff Throw exception will override EX(opline) 2015-04-20 11:58:23 +08:00
Xinchen Hui d66045fe73 Fixed bug #69485 (Double free on zend_list_dtor). 2015-04-20 11:48:21 +08:00
Xinchen Hui a819404e9e Refix opline usage 2015-04-20 10:53:58 +08:00
Bob Weinand b1bd6f502f Properly define ZEND_OP_DATA in zend_vm_def.h
This allows zend_vm_gen.php to define them in zend_vm_opcodes.{c,h} without further hacks.
2015-04-19 23:21:57 +02:00
Bob Weinand 31e98386db Provide method to access opcodes via command line argument 2015-04-19 21:54:09 +02:00
Anatol Belski 4a38f51857 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  fix more dir separators
2015-04-19 20:34:36 +02:00
Anatol Belski 160bf9c072 updated NEWS 2015-04-19 20:33:09 +02:00
Anatol Belski 0ec5477fbd Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  fix more dir separators
2015-04-19 20:32:37 +02:00
Anatol Belski 35baf71466 updated NEWS 2015-04-19 20:30:43 +02:00
Anatol Belski a0accfa59f fix more dir separators 2015-04-19 20:27:28 +02:00
Bob Weinand 2c2d1a79ce Hmm, zend.assertions is not really on/off, but -1/0/1 2015-04-19 14:42:31 +02:00
Bob Weinand 306f9123d6 Add zend.assertions and assert.exception to php.ini-* 2015-04-19 13:27:28 +02:00
Bob Weinand 740c86bcbd Stabilize watchpoints 2015-04-19 12:53:29 +02:00
Stanislav Malyshev 4eb375320e Merge branch 'pull-request/1239'
* pull-request/1239:
  fixes confusing SQLDescribeParam error message
2015-04-18 20:45:16 -07:00
Stanislav Malyshev dd56598d0d Merge branch 'pull-request/1238'
* pull-request/1238:
  apply a patch
2015-04-18 19:51:22 -07:00
Stanislav Malyshev 80bd148cc9 Merge branch 'pull-request/1235'
* pull-request/1235:
  modify skeleton confirm_extname_compiled
  modify skeleton.c function
2015-04-18 19:36:37 -07:00
Stanislav Malyshev cb9f58d046 Merge branch 'pull-request/1203'
* pull-request/1203:
  Update openssl.c
2015-04-18 19:32:14 -07:00
Stanislav Malyshev 8fa7800ce1 Merge branch 'PHP-5.6'
* PHP-5.6:
  Remove unused code from ext/json.

Conflicts:
	ext/json/config.m4
	ext/json/config.w32
	ext/json/json.dsp
	ext/json/package.xml
2015-04-18 17:57:18 -07:00
Stanislav Malyshev d66cb721d4 Merge remote-tracking branch 'github/pr/637' into PHP-5.6
* github/pr/637:
  Remove unused code from ext/json.
2015-04-18 17:56:33 -07:00
Stanislav Malyshev 494870fded Restore fix for bug #69337 2015-04-18 15:48:09 -07:00
Nikita Popov aef96d5169 Partially enable leak reports for objects
Cycle leaks are currently not reported, because this needs further
work.

The last GC run has been moved to run earlier (before the object
store free), so that array cycles that hold references to objects
don't show up as leaks. Fingers crossed that this doesn't adversely
affect anything else.
2015-04-18 17:31:11 +02:00
Nikita Popov f616a6f1eb Fix intdiv() test 2015-04-18 17:30:28 +02:00
Bob Weinand a302d51695 Better throw an exception in intdiv() for PHP_INT_MIN/-1 2015-04-18 15:50:29 +02:00
Nikita Popov 9f0f93b00f Fix CALL_TRAMPOLINE without global regs
The opline needs to be loaded here in any case. However
LOAD_OPLINE() is a no-op if global VM registers are not used.
2015-04-18 15:44:04 +02:00
Remi Collet 1f0a6241b4 Merge branch 'PHP-5.6'
* PHP-5.6:
  relax tests with huge year (new zic)
2015-04-18 10:00:24 +02:00
Remi Collet 1302eb7f72 relax tests with huge year (new zic) 2015-04-18 10:00:15 +02:00
Remi Collet 982cfd3db9 Merge branch 'PHP-5.6'
* PHP-5.6:
  ignore second value for huge timestamp test (new zic)

Conflicts:
	ext/date/tests/getdate_variation7.phpt
2015-04-18 09:41:49 +02:00
Remi Collet 3bbfb96e1a ignore second value for huge timestamp test (new zic) 2015-04-18 09:37:06 +02:00
Remi Collet 81d01809a2 Merge branch 'PHP-5.6'
* PHP-5.6:
  relax test for date < INT32_MIN (new zic)
2015-04-18 09:28:39 +02:00
Remi Collet 3c81e945a3 relax test for date < INT32_MIN (new zic) 2015-04-18 09:28:29 +02:00
Remi Collet f877bdac72 Merge branch 'PHP-5.6'
* PHP-5.6:
  relax bigbang content (new zic)
2015-04-18 09:11:48 +02:00
Remi Collet 984f4b09e0 relax bigbang content (new zic) 2015-04-18 09:11:39 +02:00
Remi Collet 971441cfe5 Merge branch 'PHP-5.6'
* PHP-5.6:
  Make date transitions tests more flexible
2015-04-18 07:50:31 +02:00
Remi Collet cd93b120c3 Make date transitions tests more flexible
zic in recent glibc (2.20) introduce a new transitionn
so use a range to avoid failure when total number
of transitions is different (243/244)
2015-04-18 07:47:47 +02:00
Nikita Popov 9a0cb734a3 Fix memory error when throwing into a generator
throw_exception_internal will access opline+1, which is not always
defined at the current opline of the generator. To avoid this
decrement the opline before throwing (so the throw occurs at the
YIELD opcode instead of one after it).
2015-04-17 22:19:41 +02:00
Nikita Popov ffa285ca73 Fix filter_var leak of object without __toString() 2015-04-17 21:51:49 +02:00
Nikita Popov 38da85f313 Initialize VAR_FLAGS for generators 2015-04-17 21:51:49 +02:00
Hannes Magnusson cac2f7ebaa Merge branch 'PHP-5.6'
* PHP-5.6:
  phpweb now publishes SHA256s -- and please don't cc php-announce@ - make it seperate mail
  Fixed res leak
2015-04-17 10:14:31 -07:00
Hannes Magnusson ffb788800f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  phpweb now publishes SHA256s -- and please don't cc php-announce@ - make it seperate mail
  Fixed res leak
2015-04-17 10:14:12 -07:00
Hannes Magnusson b5b8cd5074 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  phpweb now publishes SHA256s -- and please don't cc php-announce@ - make it seperate mail
  Fixed res leak
2015-04-17 10:06:31 -07:00
Hannes Magnusson 983f155e1c phpweb now publishes SHA256s -- and please don't cc php-announce@ - make it seperate mail 2015-04-17 10:05:32 -07:00
Dmitry Stogov 736b7cf419 Added test 2015-04-17 18:45:46 +03:00
Dmitry Stogov 3e203ecea5 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  fix column name attribute with ODBC 3.0
  migrate SQLAllocStmt for ODBC 3.0 compliance
2015-04-17 18:38:03 +03:00
Dmitry Stogov 6718b56e45 Change the GC approach to inner-loops handling. Switch to less efficient but more robust algorithm. Destructors handling is still not completely accurate. 2015-04-17 18:35:57 +03:00
Anatol Belski 8192d645db Merge branch 'PHP-5.6'
* PHP-5.6:
  fix column name attribute with ODBC 3.0
  migrate SQLAllocStmt for ODBC 3.0 compliance
2015-04-17 17:14:18 +02:00
Anatol Belski 042fa25896 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix column name attribute with ODBC 3.0
  migrate SQLAllocStmt for ODBC 3.0 compliance
2015-04-17 17:13:45 +02:00
Anatol Belski e09febb286 fix column name attribute with ODBC 3.0 2015-04-17 17:10:46 +02:00
Anatol Belski db1596c8b1 migrate SQLAllocStmt for ODBC 3.0 compliance 2015-04-17 17:06:00 +02:00
Remi Collet 9340c5b347 Merge branch 'PHP-5.6'
* PHP-5.6:
  skip test when xml not available
2015-04-17 15:21:03 +02:00
Remi Collet 342acbe1c6 skip test when xml not available 2015-04-17 15:20:22 +02:00
Nikita Popov e74b84a9fe Fix Intl constructor leaks
Drop the Z_OBJ(return_value) = NULL hack and return status code
from ctor function instead.
2015-04-17 10:33:59 +02:00
Nikita Popov 25affa8a0f Fix leak in transliterator_transliterate() 2015-04-17 10:33:58 +02:00
Nikita Popov 8138756295 Fix leak in IntlDateFormatter::getTimeZone() 2015-04-17 09:28:38 +02:00
Nikita Popov 4e2be45309 Fix leak in IntlCalendar::fromDateTime() 2015-04-17 09:28:36 +02:00
Dmitry Stogov 276080ec3a Added GC checks and improvements 2015-04-17 03:55:37 +03:00
Dmitry Stogov 10d4fdb34a Fixed memory-leak 2015-04-17 01:27:54 +03:00
Nikita Popov 6202e2860d Fix leak of Pdo object if query() fails
Decref the DBH object when storing the errored query statement --
the DBH owns the stmt, so it will live long enough.
2015-04-16 21:08:29 +02:00
Nikita Popov 32ab26182b Fix leak of FETCH_INTO object 2015-04-16 21:08:29 +02:00
Nikita Popov 3d7959c87b Fix PdoRow leak
PdoStatement should only hold a weakref to the PdoRow.
2015-04-16 21:08:29 +02:00
Dmitry Stogov 5b0d86edcc Safe destruction (variables and arguments may need to be cuptured by exception) 2015-04-16 21:45:40 +03:00
Dmitry Stogov e44ccde39a "C" is the default locale 2015-04-16 21:44:50 +03:00
Kalle Sommer Nielsen 3159a967d8 Merge branch 'master' of https://git.php.net/push/php-src 2015-04-16 16:37:56 +02:00
Kalle Sommer Nielsen 4e41decdf2 Fixed Windows build after Dmitry's smart_str change 2015-04-16 16:37:00 +02:00
Nikita Popov c669aaac71 Merge branch 'PHP-5.6'
Conflicts:
	ext/gmp/gmp.c
2015-04-16 16:31:53 +02:00
Nikita Popov 25e45a9350 Run gmp_random tests more quickly 2015-04-16 16:29:57 +02:00
Nikita Popov 7e049b0427 Normalize gmp_remroot() behavior to GMP 5.1 2015-04-16 16:27:42 +02:00
Nikita Popov 8e167a2a00 Fix leak in gmp_pow() 2015-04-16 16:04:19 +02:00
Nikita Popov feaabd09d0 Fix leak in gmp_pow() 2015-04-16 16:00:47 +02:00
Nikita Popov c77d97f356 Implement GC for spl dll
As far as I can discern this should be safe, because the rc on the
linked list elements is only > 1 if an iterator points to it and
the iterator will also hold a reference to the list object.

The implementation for mangagement of the GC array is the same as
with the spl object storage.
2015-04-16 15:46:28 +02:00
Nikita Popov 018bcc6388 Use temporary debug_info for closures 2015-04-16 15:33:47 +02:00
Nikita Popov 6c98024f87 Drop unused is_self member 2015-04-16 15:33:47 +02:00
Dmitry Stogov 2ca2d0938b Micro optimizations for the more frequently paths 2015-04-16 14:46:54 +03:00
Dmitry Stogov e38ed4c28f Changed zend_smart_str allocation granularity to do the better job together with Zend MM and avoid useless calls to erealloc().
The actual reallocation routiones are seprated from inlined code to reduce code size.
2015-04-16 14:45:08 +03:00
Dmitry Stogov 05232cc810 Revert "Changed zend_smart_str allocation granularity to do the better job together with Zend MM and avoid useless calls to erealloc()." That commit significantly increased the code size because of intensive inlining and more expensive reallocation code.
This reverts commit 5275e5560b.
2015-04-16 13:11:54 +03:00
Dmitry Stogov 5275e5560b Changed zend_smart_str allocation granularity to do the better job together with Zend MM and avoid useless calls to erealloc(). 2015-04-16 12:32:56 +03:00
Dmitry Stogov a759967dd1 Mark call frames to closures with ZEND_CALL_CLOSURE flag to avoid expensive check at zend_leave_helper() 2015-04-16 12:16:03 +03:00
Xinchen Hui ec8671d429 Remove duplicated assignment 2015-04-16 11:58:50 +08:00
Christoph M. Becker d9de707311 fixes confusing SQLDescribeParam error message 2015-04-16 04:12:11 +02:00
Nikita Popov 685ccd61c2 Add list of reserved classes to UPGRADING 2015-04-15 22:38:50 +02:00
Nikita Popov 5c214fc10d Add test for recursive __debugInfo()
This also got fixed by switching to object apply count.
2015-04-15 22:38:50 +02:00
Bob Weinand 7c2fbdf58d Remove some redundant exception checking/continuing VM instructions 2015-04-15 22:18:05 +02:00
Nikita Popov 86152b18a3 Add GC support to SPL heap and PQ
ctor/dtor are now no longer called for insert/delete_top operations,
only for cloning and freeing of the object. Otherwise elements will
have a minimum rc of 2 and GC won't be able to free them.
2015-04-15 22:00:12 +02:00
Nikita Popov dc764bf644 Use object apply count in var_dump / print_r
Instead of using the array apply count on the debug_info array, use
the object apply count for recursion detection when dumping. This
handles recursion in a more generic way and does not require each
debug_info handler to deal with this.

This allows returning a temporary debug_info array, instead of
having to store it in the object (thus delaying destruction of the
values).

Switch SPL debug_info handlers to use a temporary array.
2015-04-15 22:00:12 +02:00
Bob Weinand 3dcad2eea2 Fix bug #69458 2015-04-15 21:56:11 +02:00
Bob Weinand 4e76d58b2b Fix object leak for yield from (added proper refcounting) 2015-04-15 21:42:27 +02:00
Bob Weinand 27033f9818 Forgot to transform some errors to engine exceptions 2015-04-15 21:42:26 +02:00
Nikita Popov eed18f0ee8 Return null on zpp failure in Array::exchangeArray()
Method was still returning a value despite zpp failing previously...
2015-04-15 20:43:41 +02:00
Nikita Popov e10be0d0fd Remove unnecessary retval members in SPL
This is what the rv params are for. Avoid holding onto values
longer than necessary.
2015-04-15 20:39:08 +02:00
Ferenc Kovacs 47590aba9b Merge branch 'PHP-5.6'
* PHP-5.6:
  this was reverted
2015-04-15 20:04:47 +02:00
Ferenc Kovacs 60830f49c0 this was reverted 2015-04-15 20:04:03 +02:00
Nikita Popov b4b872f4c9 Fix leak in RecursiveRegexIterator::getChildren() 2015-04-15 20:03:15 +02:00
Ferenc Kovacs 26d995fa8e Merge branch 'PHP-5.6'
* PHP-5.6:
  66550 will be part of 5.6.8
  66550 will be part of 5.5.24
2015-04-15 20:01:13 +02:00
Dmitry Stogov 92f2ee0973 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Fix leaks in recursive iterator construction
2015-04-15 20:55:38 +03:00
Ferenc Kovacs 4ddb92be45 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  66550 will be part of 5.5.24
2015-04-15 19:54:30 +02:00
Ferenc Kovacs ef5f4ef81f 66550 will be part of 5.6.8 2015-04-15 19:54:25 +02:00
Ferenc Kovacs b75e30c667 66550 will be part of 5.5.24 2015-04-15 19:53:38 +02:00
Dmitry Stogov d5d2032898 eliminate unnecessary EX(opline) <-> opline reloading 2015-04-15 20:53:27 +03:00
Nikita Popov 7605e02e3b Fix leaks in recursive iterator construction 2015-04-15 19:51:02 +02:00
Ferenc Kovacs 08e1174139 Merge branch 'PHP-5.6'
* PHP-5.6:
  reorder entries, Core is always the first block
2015-04-15 18:53:39 +02:00
Ferenc Kovacs 272805c898 reorder entries, Core is always the first block 2015-04-15 18:53:22 +02:00
Ferenc Kovacs 481b3338ca Merge branch 'PHP-5.6'
* PHP-5.6:
  add missing NEWS entry
  add missing space to the NEWS entries to align properly
2015-04-15 18:39:30 +02:00
Ferenc Kovacs ad5723acf2 add missing NEWS entry 2015-04-15 18:39:16 +02:00
Ferenc Kovacs a07f3ed2a6 add missing space to the NEWS entries to align properly 2015-04-15 18:38:48 +02:00
Ferenc Kovacs a03089ac45 Merge branch 'PHP-5.6'
* PHP-5.6:
  add missing space to the NEWS entries to align properly
2015-04-15 18:37:20 +02:00
Ferenc Kovacs 7abb318beb add missing space to the NEWS entries to align properly 2015-04-15 18:36:52 +02:00
Anatol Belski b9732a37c5 fix possible int overflow 2015-04-15 17:57:27 +02:00
Anatol Belski 7a88cfe44d fix datatype mismatches 2015-04-15 17:57:26 +02:00
Anatol Belski 0c6753bf6b optimize structs 2015-04-15 17:57:25 +02:00
Anatol Belski a01e8c1fe9 fix data type and 64-bit compat 2015-04-15 17:57:23 +02:00
Remi Collet c48bf6e55c Merge branch 'PHP-5.6'
* PHP-5.6:
  bump zip release to match pecl version
2015-04-15 17:38:01 +02:00
Remi Collet 60b3526bfb bump zip release to match pecl version 2015-04-15 17:37:12 +02:00
Dmitry Stogov 6aee1ee4a1 Optimization of stack-frame construction 2015-04-15 17:02:21 +03:00
Julien Pauli 696c64503c Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS
2015-04-15 14:41:41 +02:00
Julien Pauli d3d5e3db2c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Updated NEWS
2015-04-15 14:40:33 +02:00
Julien Pauli 8827a56cb4 Updated NEWS 2015-04-15 14:40:00 +02:00
Dmitry Stogov ec077328fd Make valgrind happy 2015-04-15 14:20:59 +03:00
Dmitry Stogov 8144795133 Avoid double refcounting 2015-04-15 13:34:23 +03:00
Anatol Belski b816266223 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix dir separator in test
2015-04-15 11:10:29 +02:00
Anatol Belski e53947609a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix dir separator in test
2015-04-15 11:09:54 +02:00
Anatol Belski 8947c7aa0d fix dir separator in test 2015-04-15 11:07:13 +02:00
Xinchen Hui 0d562a8f44 Fixed res leak 2015-04-14 21:15:50 -07:00
Xinchen Hui 556e6f6cb1 Merge branch 'PHP-5.6'
Conflicts:
	Zend/zend_exceptions.c
2015-04-15 10:44:51 +08:00
Xinchen Hui caf4beab2d Merge branch 'PHP-5.5' into PHP-5.6 2015-04-15 10:39:17 +08:00
Xinchen Hui 82ec0d5fc5 Fixed res leak 2015-04-15 10:38:55 +08:00
Xinchen Hui be504995c3 Fixed warnings 2015-04-15 10:37:35 +08:00
Nikita Popov 108ae7961e Fix leak when calling ->get() on tmp property 2015-04-14 22:16:18 +02:00
Nikita Popov 10756522a7 Fix leak in timezone_open when instantiation fails 2015-04-14 21:44:33 +02:00
Nikita Popov a5f2be38d4 Regenerate tokenizer data 2015-04-14 21:36:17 +02:00
Nikita Popov 38eb3cdf67 Drop ??? for AST_ZNODE in ast pretty printer 2015-04-14 21:35:38 +02:00
Stanislav Malyshev 6c39ce2bf2 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed recently introduced memory leak
  Fix Bug #69402: Reading empty SSL stream hangs until timeout
2015-04-14 11:13:17 -07:00
Stanislav Malyshev 9d7b5e30eb Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed recently introduced memory leak
  Fix Bug #69402: Reading empty SSL stream hangs until timeout
2015-04-14 11:12:58 -07:00
Stanislav Malyshev df33731812 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed recently introduced memory leak
2015-04-14 11:12:48 -07:00
Dmitry Stogov cee9722028 Fixed recently introduced memory leak 2015-04-14 11:08:38 -07:00
Nikita Popov acd61be985 Add "yield from" support to ast pretty printer 2015-04-14 19:15:40 +02:00
Dmitry Stogov 7bf5b341e4 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Add NEWS/UPGRADING and some implementation notes
2015-04-14 19:54:30 +03:00
Dmitry Stogov 00445ba22d Fixed bug #69446 (GC leak relating to removal of nested data after dtors run) 2015-04-14 19:53:56 +03:00
Bob Weinand a029ec9ee0 Add NEWS/UPGRADING and some implementation notes 2015-04-14 18:35:47 +02:00
Bob Weinand 2256dbfb21 Merge branch 'master' of https://github.com/php/php-src 2015-04-14 18:02:18 +02:00
Bob Weinand f3e124d58d Merge branch 'coroutineDelegation' of https://github.com/bwoebi/php-src 2015-04-14 17:58:58 +02:00
Levi Morrison dad622bf42 Fix bug #69448
ReflectionClass::newInstanceWithoutConstructor should not call
object_init_ex when the class is internal and final. This is because
the class dtor may rely on the ctor being called and in some cases
this will cause a segfault.
2015-04-14 09:45:41 -06:00
Daniel Lowrey 8dfb35eae0 Merge branch 'PHP-5.6'
* PHP-5.6:
  Update NEWS
2015-04-14 09:42:01 -06:00
Daniel Lowrey b9940ab1bd Update NEWS 2015-04-14 09:37:17 -06:00
Daniel Lowrey 4f07330e79 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix Bug #69402: Reading empty SSL stream hangs until timeout

Conflicts:
	ext/openssl/xp_ssl.c
2015-04-14 09:27:37 -06:00
Daniel Lowrey 81f356b4ae Fix Bug #69402: Reading empty SSL stream hangs until timeout 2015-04-14 09:25:11 -06:00
Daniel Lowrey 601d60a978 Fix Bug #69402: Reading empty SSL stream hangs until timeout 2015-04-14 09:24:40 -06:00
Nikita Popov a7059f1eac Merge branch 'PHP-5.6'
Conflicts:
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2015-04-14 16:38:09 +02:00
Nikita Popov ed7e6d4758 Merge branch 'PHP-5.5' into PHP-5.6 2015-04-14 16:36:36 +02:00
Nikita Popov 95650d0942 Fixed bug #69419 2015-04-14 16:35:23 +02:00
Dmitry Stogov 65baab7741 Merge branch 'PHP-5.6'
* PHP-5.6:
  Bug #63336 is not a bug
  fix test

Conflicts:
	Zend/tests/bug63336.phpt
2015-04-14 17:18:55 +03:00
Dmitry Stogov e8fb5201ba Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Bug #63336 is not a bug
2015-04-14 17:16:57 +03:00
Dmitry Stogov dc024f0bdc Bug #63336 is not a bug 2015-04-14 17:15:50 +03:00
Dmitry Stogov b7d8edca1f Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  fix test
2015-04-14 16:42:35 +03:00
Dmitry Stogov 3037665f04 Fixed use after free 2015-04-14 16:42:02 +03:00
Anatol Belski 63c92a6e96 fix test 2015-04-14 15:24:46 +02:00
Anatol Belski bc63491da8 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix test
2015-04-14 15:21:47 +02:00
Anatol Belski 3803bbde24 fix test 2015-04-14 15:20:44 +02:00
Dmitry Stogov 6762fcfa90 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed recently introduced memory leak
2015-04-14 15:49:44 +03:00
Dmitry Stogov e1821090ef Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed recently introduced memory leak
2015-04-14 15:48:20 +03:00
Dmitry Stogov dfffa0ba5b Fixed recently introduced memory leak 2015-04-14 15:47:26 +03:00
Dmitry Stogov 753fa0c593 Partial revert of 1a7798c786 that introduced wrong memory access 2015-04-14 15:35:33 +03:00
Masaki Kagaya 8d219f5307 apply a patch 2015-04-14 21:17:08 +09:00
Xinchen Hui 5db1a56705 Merge branch 'master' of https://git.php.net/repository/php-src 2015-04-14 19:50:03 +08:00
Xinchen Hui a4d5a78f89 Fixed test in PHP7 2015-04-14 19:49:00 +08:00
Dmitry Stogov 28011fd14f Fixed recently introduced memory leak 2015-04-14 14:46:26 +03:00
Xinchen Hui e68b851217 Merge branch 'PHP-5.6'
Conflicts:
	Zend/zend_exceptions.c
2015-04-14 19:33:46 +08:00
Xinchen Hui 5fc635548e Merge branch 'PHP-5.5' into PHP-5.6 2015-04-14 19:32:28 +08:00
Xinchen Hui 4b27569dc3 codes standard 2015-04-14 19:32:01 +08:00
Dmitry Stogov 26a6d707a1 Fixed memory leak in ext/standard/tests/array/compact_variation1.phpt 2015-04-14 13:45:05 +03:00
Dmitry Stogov 0d18aa8610 Use Z_TYPE_INFO_P() instead Z_TYPE_P() when we check for few scalar types. This allow C compiler to generate the better code. 2015-04-14 13:09:31 +03:00
Derick Rethans 66bd59225b - Updated to version 2015.3 (2015c) 2015-04-14 10:51:15 +01:00
Derick Rethans 9f815c9201 Empty merge 2015-04-14 10:51:15 +01:00
Derick Rethans d887ef5a04 - Updated to version 2015.3 (2015c) 2015-04-14 10:51:12 +01:00
Derick Rethans 8f384473b4 Empty merge 2015-04-14 10:51:11 +01:00
Derick Rethans 043f8ac51e - Updated to version 2015.3 (2015c) 2015-04-14 10:51:10 +01:00
Stanislav Malyshev a6f5fb0120 Merge remote-tracking branch 'origin/master'
* origin/master:
  What should we version the bundled opcache?
2015-04-14 01:30:59 -07:00
Stanislav Malyshev b3709bfc52 Merge branch 'PHP-5.6'
* PHP-5.6: (27 commits)
  fix non-standard C
  update NEWS
  5.4.41 next
  fix CVE num
  update NEWS
  Fix bug #69441 (Buffer Overflow when parsing tar/zip/phar in phar_set_inode)
  fix test
  fix type in fix for #69085
  fix memory leak & add test
  Fix tests
  fix CVE num
  Fix bug #69337 (php_stream_url_wrap_http_ex() type-confusion vulnerability)
  Fix test
  Additional fix for bug #69324
  More fixes for bug #69152
  Fixed bug #69353 (Missing null byte checks for paths in various PHP extensions)
  Fixed bug #69324 (Buffer Over-read in unserialize when parsing Phar)
  Fixed bug #69316 (Use-after-free in php_curl related to CURLOPT_FILE/_INFILE/_WRITEHEADER)
  Fix bug #68486 and bug #69218 (segfault in apache2handler with apache 2.4)
  Fix bug #68819 (Fileinfo on specific file causes spurious OOM and/or segfault)
  ...

Conflicts:
	Zend/zend_exceptions.c
	ext/curl/interface.c
	ext/dom/document.c
	ext/fileinfo/libmagic/softmagic.c
	ext/gd/gd.c
	ext/hash/hash.c
	ext/pgsql/pgsql.c
	ext/phar/phar.c
	ext/phar/phar_internal.h
	ext/standard/http_fopen_wrapper.c
	ext/standard/link.c
	ext/standard/streamsfuncs.c
	ext/xmlwriter/php_xmlwriter.c
	ext/zlib/zlib.c
2015-04-14 01:28:06 -07:00
Xinchen Hui 5255ea42b5 What should we version the bundled opcache? 2015-04-14 16:20:01 +08:00
Stanislav Malyshev 5776fceb16 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5: (27 commits)
  fix non-standard C
  update NEWS
  5.4.41 next
  fix CVE num
  update NEWS
  Fix bug #69441 (Buffer Overflow when parsing tar/zip/phar in phar_set_inode)
  fix test
  fix type in fix for #69085
  fix memory leak & add test
  Fix tests
  fix CVE num
  Fix bug #69337 (php_stream_url_wrap_http_ex() type-confusion vulnerability)
  Fix test
  Additional fix for bug #69324
  More fixes for bug #69152
  Fixed bug #69353 (Missing null byte checks for paths in various PHP extensions)
  Fixed bug #69324 (Buffer Over-read in unserialize when parsing Phar)
  Fixed bug #69316 (Use-after-free in php_curl related to CURLOPT_FILE/_INFILE/_WRITEHEADER)
  Fix bug #68486 and bug #69218 (segfault in apache2handler with apache 2.4)
  Fix bug #68819 (Fileinfo on specific file causes spurious OOM and/or segfault)
  ...

Conflicts:
	ext/standard/http_fopen_wrapper.c
2015-04-14 01:05:01 -07:00
Stanislav Malyshev 4782ceea80 Merge branch 'PHp-5.4' into PHP-5.5
* PHp-5.4:
  fix non-standard C
2015-04-14 00:49:23 -07:00
Stanislav Malyshev 9af582bbe0 fix non-standard C 2015-04-14 00:46:47 -07:00
Stanislav Malyshev 7b3cce0ba0 update NEWS 2015-04-14 00:43:19 -07:00
Stanislav Malyshev e21f87e957 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  5.4.41 next
  fix CVE num
  update NEWS
  Fix bug #69441 (Buffer Overflow when parsing tar/zip/phar in phar_set_inode)
  fix type in fix for #69085
  fix CVE num

Conflicts:
	configure.in
	main/php_version.h
2015-04-14 00:34:02 -07:00
Stanislav Malyshev 100614da27 Merge branch 'PHP-5.5.24' into PHP-5.5
* PHP-5.5.24:
  fix test
  fix memory leak & add test
  Fix tests
  Fix bug #69337 (php_stream_url_wrap_http_ex() type-confusion vulnerability)
  Fix test
  Additional fix for bug #69324
  More fixes for bug #69152
  Fixed bug #69353 (Missing null byte checks for paths in various PHP extensions)
  Fixed bug #69324 (Buffer Over-read in unserialize when parsing Phar)
  Fixed bug #69316 (Use-after-free in php_curl related to CURLOPT_FILE/_INFILE/_WRITEHEADER)
  Fix bug #68486 and bug #69218 (segfault in apache2handler with apache 2.4)
  Fix bug #68819 (Fileinfo on specific file causes spurious OOM and/or segfault)
  Fixed bug #68901 (use after free)
  Fixed bug #69316 (Use-after-free in php_curl related to CURLOPT_FILE/_INFILE/_WRITEHEADER)
  Fix bug #68486 and bug #69218 (segfault in apache2handler with apache 2.4)
  Fix bug #68819 (Fileinfo on specific file causes spurious OOM and/or segfault)
  Updated NEWS
  Fixed bug #69336 (Issues with "last day of <monthname>").
  5.5.24RC1
2015-04-14 00:33:04 -07:00
Stanislav Malyshev e10272c628 5.4.41 next 2015-04-14 00:30:58 -07:00
Stanislav Malyshev d3aeb8a204 Merge branch 'PHP-5.4.40' into PHP-5.4
* PHP-5.4.40:
  update NEWS
  Fix bug #69441 (Buffer Overflow when parsing tar/zip/phar in phar_set_inode)
  fix memory leak & add test
  Fix tests
  fix CVE num
  Fix bug #69337 (php_stream_url_wrap_http_ex() type-confusion vulnerability)
  Fix test
  Additional fix for bug #69324
  More fixes for bug #69152
  Fixed bug #69353 (Missing null byte checks for paths in various PHP extensions)
  Fixed bug #69324 (Buffer Over-read in unserialize when parsing Phar)
  Fixed bug #69316 (Use-after-free in php_curl related to CURLOPT_FILE/_INFILE/_WRITEHEADER)
  Fix bug #68486 and bug #69218 (segfault in apache2handler with apache 2.4)
  Fix bug #68819 (Fileinfo on specific file causes spurious OOM and/or segfault)
2015-04-14 00:26:53 -07:00
Stanislav Malyshev ae46d1ce19 fix CVE num 2015-04-14 00:25:55 -07:00
Stanislav Malyshev d734e75599 update NEWS 2015-04-14 00:22:09 -07:00
Stanislav Malyshev aa2eca2e48 Merge branch 'PHP-5.4' into PHP-5.4.40
* PHP-5.4:
  fix CVE num
2015-04-14 00:08:57 -07:00
Stanislav Malyshev f59b67ae50 Fix bug #69441 (Buffer Overflow when parsing tar/zip/phar in phar_set_inode) 2015-04-14 00:03:50 -07:00
Stanislav Malyshev be34c82bfd fix test 2015-04-13 16:10:05 -07:00
Dmitry Stogov cddb5eb3e9 Fixed memory leak 2015-04-14 00:57:45 +03:00
Dmitry Stogov 9806a62545 GC improved to support inner-cycles. 2015-04-14 00:16:27 +03:00
Dmitry Stogov b8fa90f10f GC tweaks 2015-04-13 18:53:02 +03:00
Remi Collet 5216da2f01 fix merge 2015-04-13 14:49:43 +02:00
Remi Collet ff70b40dc9 fix type in fix for #69085 2015-04-13 14:41:39 +02:00
Remi Collet dc0f2a5bad Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix type in fix for #69085
2015-04-13 14:40:43 +02:00
Remi Collet c61ceef779 fix type in fix for #69085
(cherry picked from commit 085e9ddc26f37ce556b8fd787044746e726264b2)
2015-04-13 14:40:05 +02:00
Lauri Kenttä 533c4be0d5 Fix compile error when oniguruma is not available 2015-04-13 10:11:38 +02:00
Stanislav Malyshev ba15e8dfd0 Merge branch 'PHP-5.4.40' into PHP-5.5.24
* PHP-5.4.40:
  fix memory leak & add test
  Fix tests
2015-04-12 23:49:16 -07:00
Stanislav Malyshev 45facd15fb fix memory leak & add test 2015-04-12 22:38:34 -07:00
Stanislav Malyshev a643ccfb90 Fix tests 2015-04-12 20:55:35 -07:00
Stanislav Malyshev 9bed19a1e0 fix CVE num 2015-04-12 20:47:27 -07:00
Stanislav Malyshev ed7d4977bb Merge branch 'PHP-5.4.40' into PHP-5.5.24
* PHP-5.4.40:
  Fix bug #69337 (php_stream_url_wrap_http_ex() type-confusion vulnerability)
  Fix test
2015-04-12 20:13:00 -07:00
Stanislav Malyshev 9bbd995679 Merge branch 'PHP-5.5-security' into PHP-5.5.24
* PHP-5.5-security: (22 commits)
  Fixed bug #69316 (Use-after-free in php_curl related to CURLOPT_FILE/_INFILE/_WRITEHEADER)
  Fix bug #68486 and bug #69218 (segfault in apache2handler with apache 2.4)
  Fix bug #68819 (Fileinfo on specific file causes spurious OOM and/or segfault)
  updated NEWS
  added test for bug #69354
  revert skipif, this should run everywhere
  further ODBC 3.0 compliance
  more compliance with the ODBC 3.0
  test fixes
  Prevent GC from changing zval or object 'color' before they are actually inserted into possible roots buffer.
  sigh, can't even copypaste without screwing up
  oop, put both the error number and message for both db object to the error message
  test fixes
  Fixed bug #69281 (opcache_is_script_cached no longer works)
  Fix typo: unitialized -> uninitialized
  Fix typo: unitialized -> uninitialized
  Fixed bug #68739 (Missing break / control flow). Fixed bug #68740 (NULL Pointer Dereference). Fixed bug #68677 (Use After Free).
  Fixed bug #68739 (Missing break / control flow in curl)
  Fixed bug #68740 (NULL Pointer Dereference)
  Fixed bug #68677 (Use After Free in OPcache)
  ...

Conflicts:
	configure.in
	ext/curl/tests/bug69316.phpt
	main/php_version.h
2015-04-12 20:12:38 -07:00
王星星 73a0c96ac3 modify skeleton confirm_extname_compiled 2015-04-12 20:59:11 +08:00
王星星 22bef96315 modify skeleton.c function 2015-04-12 20:35:48 +08:00
Stanislav Malyshev d82d68742c Fix bug #69337 (php_stream_url_wrap_http_ex() type-confusion vulnerability) 2015-04-12 01:30:33 -07:00
Stanislav Malyshev 1defbb25ed Fix test 2015-04-12 00:56:02 -07:00
Xinchen Hui 0981345734 Merge branch 'PHP-5.6' 2015-04-12 12:12:38 +08:00
Xinchen Hui dd50ec1538 Remove failing test
<nikic> [19:57:28] debian has a libmcrypt patch that makes it work
<nikic> [19:57:43] but not all other distros have it
2015-04-12 12:12:16 +08:00
Stanislav Malyshev 0cb9d75cb6 Merge branch 'PHP-5.4.40' into PHP-5.5.24
* PHP-5.4.40:
  Additional fix for bug #69324
  More fixes for bug #69152
  Fixed bug #69353 (Missing null byte checks for paths in various PHP extensions)
  Fixed bug #69324 (Buffer Over-read in unserialize when parsing Phar)
  Fixed bug #69316 (Use-after-free in php_curl related to CURLOPT_FILE/_INFILE/_WRITEHEADER)
  Fix bug #68486 and bug #69218 (segfault in apache2handler with apache 2.4)
  Fix bug #68819 (Fileinfo on specific file causes spurious OOM and/or segfault)
  Fixed bug #68901 (use after free)
  Fixed bug #68740 (NULL Pointer Dereference)
  Fix bug #66550 (SQLite prepared statement use-after-free)
  Better fix for #68601 for perf https://bitbucket.org/libgd/gd-libgd/commits/81e9a993f2893d651d225646378e3fd1b7465467
  Fix bug #68601 buffer read overflow in gd_gif_in.c
  Revert "Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4"
  Fixed bug #69293
  Add ZEND_ARG_CALLABLE_INFO to allow internal function to type hint against callable.
2015-04-11 16:56:12 -07:00
Stanislav Malyshev 12d3bdee3d Additional fix for bug #69324
Not so happy about duplication but needed due to bug #69429
2015-04-11 16:53:22 -07:00
Stanislav Malyshev a894a8155f More fixes for bug #69152 2015-04-11 16:53:22 -07:00
Stanislav Malyshev 4435b9142f Fixed bug #69353 (Missing null byte checks for paths in various PHP extensions) 2015-04-11 16:53:22 -07:00
Stanislav Malyshev 9faaee66fa Fixed bug #69324 (Buffer Over-read in unserialize when parsing Phar) 2015-04-11 16:53:21 -07:00
Stanislav Malyshev 0ea75af9be Fixed bug #69316 (Use-after-free in php_curl related to CURLOPT_FILE/_INFILE/_WRITEHEADER) 2015-04-11 16:53:21 -07:00
Stanislav Malyshev 809610f5ea Fix bug #68486 and bug #69218 (segfault in apache2handler with apache 2.4) 2015-04-11 16:53:21 -07:00
Stanislav Malyshev f938112c49 Fix bug #68819 (Fileinfo on specific file causes spurious OOM and/or segfault) 2015-04-11 16:53:21 -07:00
Xinchen Hui 920a0afbf8 Fixed bug #68901 (use after free) 2015-04-11 16:28:07 -07:00
Nikita Popov 71ccbf77a0 Add support for more debug output during CC
Compile with ZEND_DEBUG_GC=2
2015-04-11 18:29:36 +02:00
Xinchen Hui cefad04f0d Fixed bug #69427 (Segfault on magic method __call of private method in superclass) 2015-04-11 23:57:42 +08:00
Xinchen Hui 5da41790f7 Improve words 2015-04-11 17:48:05 +08:00
Xinchen Hui f08414ce1d Temporary fix inifite loop in gc 2015-04-11 17:40:29 +08:00
Xinchen Hui 45c3112726 Add some missed entry 2015-04-11 09:48:09 +08:00
Dmitry Stogov 5e8133f453 Squashed commit of the following:
commit 2399fc84c541da9c2176c5b7f6dd039a3c84dc64
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Apr 10 12:38:08 2015 +0300

    Removed useless assignment

commit 796b6338174348eee0d74a67706d77b7ce1a60c3
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Apr 10 12:35:31 2015 +0300

    Fixed execution with overriden zend_execute_ex()

commit 4a9fb125aa999059f8bc42ebb6ee573c7866b35b
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Apr 10 02:02:58 2015 +0300

    Fixed executor without global registers

commit d456c30e00589ccda35a4b57ae903ef2d3c07d95
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Apr 10 01:30:35 2015 +0300

    Restored original behavior for tests/classes/__call_004.phpt

commit 479646d37fef050536f1afb12b082618f1f1a3d0
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Apr 10 00:32:17 2015 +0300

    Fixed test. We don't keep stack frame for fake function anymore.

commit 9ae61e33e24b2c811d4ab1ca4ab22847c64a780e
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Apr 10 00:30:09 2015 +0300

    Use ZEND_ACC_CALL_VIA_TRAMPOLINE instead of ZEND_ACC_CALL_VIA_HANDLER. Keep ZEND_ACC_CALL_VIA_HANDLER for compatibility.

commit 0a8403a2a0c27aa3db271774f8559739a6b8400e
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Apr 10 00:05:43 2015 +0300

    Rename PROXY_CALL into CALL_TRAMPLINE.
    Generalize API to allow reuse EG(trampline) for other purposes.

commit 4ea0525c10554e36185a0b8b6303106813b6a1c2
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Thu Apr 9 23:22:25 2015 +0300

    Reuse EG(proxy_call_op) for all proxy. Move proxy related functions from zend_objects_API to zend_object_handlers.

commit 529bf737ca388ad56fb4ae20ccb81e6276f25ec0
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Thu Apr 9 21:42:23 2015 +0300

    Accurate use of proxy_call

commit 5d62837d5ba3855743fe1981786ebd65d9da0b63
Merge: 83e749f 690843f
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Thu Apr 9 19:40:00 2015 +0300

    Merge branch 'master' into opcodefy-call

    * master:
      Fixed GOTO executor
      Fixed typo
      Changed ArrayIterator implementation using zend_hash_iterator_... API. Allowed modification of itterated ArrayObject using the same behavior as proposed in `Fix "foreach" behavior`. Removed "Array was modified outside object and internal position is no longer valid" hack.

commit 83e749ff3b6623e39b236a72e9b907d5b788ae5e
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Thu Apr 9 19:39:10 2015 +0300

    Improved ZEND_PROXY_CALL

commit 0c829afc534e6d5ff27a0dea3a4815da303bd1ef
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Thu Apr 9 15:14:49 2015 +0300

    Reverted white-space changes

commit df65144488afa3e9020d75e1ada5529b138afc5a
Merge: 5fd2f97 97756d9
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Thu Apr 9 14:37:07 2015 +0300

    Merge branch 'opcodefy-call' of github.com:laruence/php-src into opcodefy-call

    * 'opcodefy-call' of github.com:laruence/php-src:
      Ready for PR
      Fixed static call
      Improve performance by using prealloated op_arrray
      Respect called_scope
      Support internal magical __call/__callStatic
      opcode-fy magical __callStatic
      Opcode-fy magical __call

commit 97756d9190e07a072a7b48135304dc25a964845f
Author: Xinchen Hui <laruence@gmail.com>
Date:   Thu Apr 9 19:07:59 2015 +0800

    Ready for PR

commit 74f993084627061e783645a866390b68e2981698
Author: Xinchen Hui <laruence@gmail.com>
Date:   Thu Apr 9 19:03:00 2015 +0800

    Fixed static call

commit ec1d9eb592db0c3b7b0e3d21e7f445ed8bccfd4d
Author: Xinchen Hui <laruence@gmail.com>
Date:   Thu Apr 9 18:23:17 2015 +0800

    Improve performance by using prealloated op_arrray

commit df7fbbf949c99f2c5ae3da2a1199235651c7cc82
Author: Xinchen Hui <laruence@gmail.com>
Date:   Thu Apr 9 15:10:02 2015 +0800

    Respect called_scope

commit 769d1d59fb48b6f7f93d7412eefbf26135fa3e59
Author: Xinchen Hui <laruence@gmail.com>
Date:   Thu Apr 9 12:19:23 2015 +0800

    Support internal magical __call/__callStatic

commit a980fedd5b0e0683713dd4f6eaad62adf4b4732f
Author: Xinchen Hui <laruence@gmail.com>
Date:   Wed Apr 8 18:35:41 2015 +0800

    opcode-fy magical __callStatic

commit 73855f7d53baa2efc2b8a88314f51c784c81b59d
Author: Xinchen Hui <laruence@gmail.com>
Date:   Wed Apr 8 14:21:55 2015 +0800

    Opcode-fy magical __call
2015-04-10 23:01:00 +03:00
Dmitry Stogov 8eaa09887c Added GC debug code and some small optimizations. 2015-04-10 22:06:01 +03:00
Xinchen Hui c5903e79be Merge branch 'PHP-5.6'
Conflicts:
	Zend/zend_compile.c
2015-04-10 22:50:15 +08:00
Xinchen Hui 8ebc443120 Update NEWs 2015-04-10 22:48:48 +08:00
Xinchen Hui fa0608077b Merge branch 'PHP-5.5' into PHP-5.6 2015-04-10 22:48:36 +08:00
Xinchen Hui 429f411eb3 Fixed bug #69420 (Invalid read in zend_std_get_method) 2015-04-10 22:47:06 +08:00
Nikita Popov 94bea670de Fix bug #69413 2015-04-10 09:49:07 +02:00
Anthony Ferrara 858ca975c4 Add NEWS file for password_hash salt deprecation 2015-04-09 16:01:12 -04:00
Anthony Ferrara 94e222c14d Deprecate password_hash salt option 2015-04-09 15:51:04 -04:00
Kalle Sommer Nielsen 156ac232cb Fix test for systems where openssl's time_t have an offset set 2015-04-09 19:57:44 +02:00
Di Wu c7492ed224 Fix undeclared identifier 'PHP_STREAM_KEEP_RSRC'
Identifier named `PHP_STREAM_FREE_KEEP_RSRC`  but use `PHP_STREAM_KEEP_RSRC`

Reference Line 131
2015-04-09 18:16:53 +02:00
Dmitry Stogov 690843fa37 Fixed GOTO executor 2015-04-09 18:18:10 +03:00
Dmitry Stogov ea0b14fe22 Fixed typo 2015-04-09 15:47:34 +03:00
Dmitry Stogov 2b6a568df1 Changed ArrayIterator implementation using zend_hash_iterator_... API. Allowed modification of itterated ArrayObject using the same behavior as proposed in Fix "foreach" behavior. Removed "Array was modified outside object and internal position is no longer valid" hack. 2015-04-09 15:40:17 +03:00
Xinchen Hui 5fd2f975ee Unnecessary UNDEF 2015-04-09 14:16:04 +08:00
Kalle Sommer Nielsen 8d3c4e5988 Fix test on systems where EOL isn't "\n", like Windows 2015-04-08 23:56:29 +02:00
Dmitry Stogov 5ba72e5f80 Fixed resource leak 2015-04-08 23:37:05 +03:00
Dmitry Stogov 851a219226 Fixed typo 2015-04-08 23:15:43 +03:00
Dmitry Stogov 7c86ea88fb Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Fix leak of closure used as generator
2015-04-08 22:19:24 +03:00
Dmitry Stogov e1d6b24da8 Addef test for bug #63734 (Garbage collector can free zvals that are still referenced) 2015-04-08 22:18:10 +03:00
Nikita Popov fc378a609a Fix leak of closure used as generator
Also remove obsolete code for copying the closure op_array. It
should no longer be possible for the closure object to be destroyed
while the generator is still live.
2015-04-08 21:11:42 +02:00
Dmitry Stogov 91e84bb168 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #67314 (Segmentation fault in gc_remove_zval_from_buffer)

Conflicts:
	NEWS
	Zend/zend_execute_API.c
2015-04-08 21:26:45 +03:00
Dmitry Stogov 1f5f78d4aa Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #67314 (Segmentation fault in gc_remove_zval_from_buffer)
  Fixed bug #67314 (Segmentation fault in gc_remove_zval_from_buffer)
2015-04-08 21:24:24 +03:00
Dmitry Stogov 741c5e4c0c Fixed bug #67314 (Segmentation fault in gc_remove_zval_from_buffer) 2015-04-08 21:22:25 +03:00
Dmitry Stogov 174b9ee634 Fixed bug #67314 (Segmentation fault in gc_remove_zval_from_buffer) 2015-04-08 21:20:35 +03:00
Ferenc Kovacs efa6a2657b Merge branch 'PHP-5.6'
* PHP-5.6:
  fix irc notification for build failure/recover
2015-04-08 19:00:35 +02:00
Ferenc Kovacs f5c8a79fa5 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix irc notification for build failure/recover
2015-04-08 19:00:21 +02:00
Ferenc Kovacs 923102230b fix irc notification for build failure/recover 2015-04-08 19:00:03 +02:00
Rasmus Lerdorf 32484e3f5f Remove SSLv3 test dependencies
SSLv3 is going away. Debian8 already ships with an openssl
with no SSLv3 support which was causing these tests to fail.
2015-04-08 09:55:55 -07:00
Dmitry Stogov 151b4ea3cd Fixed unsigned underflow 2015-04-08 17:06:03 +03:00
Dmitry Stogov b71fbade32 Fixed test 2015-04-08 16:29:29 +03:00
Dmitry Stogov 7649a35d52 Fixed access to uninitialized value (in case of exception) 2015-04-08 16:01:22 +03:00
Dmitry Stogov bf7d3e0c23 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed typo
2015-04-08 15:54:47 +03:00
Dmitry Stogov ec0b888a82 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed typo
2015-04-08 15:54:10 +03:00
Dmitry Stogov 1955403ed5 Fixed typo 2015-04-08 15:53:28 +03:00
Dmitry Stogov fa348dcdfa Fixed reference counting 2015-04-08 15:47:31 +03:00
Dmitry Stogov 4d9a1883aa Fixed bug #68887 (resources are not freed correctly) 2015-04-08 13:29:42 +03:00
Xinchen Hui fa795b0553 Fixed bug #69325 (php_copy_file_ex does not pass the argument) 2015-04-08 14:33:01 +08:00
Xinchen Hui f23f7dfed0 Use new macros 2015-04-08 14:30:47 +08:00
Xinchen Hui 54e8c91614 Merge branch 'master' of https://github.com/bixuehujin/php-src 2015-04-08 14:26:57 +08:00
matason 52145ef8c6 Fix zend_hash_find documentation. 2015-04-07 22:26:16 +01:00
Andrey Hristov 871ff65fd1 Rename prefixed mysqlnd functions - prefixed with undescore, which were
accessible through a macro. Also removing the access macros.
These prefixed functions were used, similarly to many functions in Zend2,
because of TSRMLS - the macro was adding the the tsrm pointer to the call.
However, as in Zend3 no TSRM pointers are passed down the stack, because of
the usage of cached TSRM pointer in a real thread local variable, these
macros and prefixed naming have lost their purpose.
2015-04-07 21:48:08 +02:00
Andrey Hristov ed0f134a64 Split mysqlnd_stmt::execute in 2 logical parts :
- mysqlnd_stmt::send_execute() which just creates the wire message by using
  an aux function and sends it to the server
- mysqlnd_stmt::parse_execute_respose() which is responsible for handling
  the bytes sent from the server in response to COM_EXECUTE.
This makes it possible to implement finer method overwriting in mysqlnd
plugins.
2015-04-07 21:39:29 +02:00
Andrey Hristov a970ae76e2 Add more info to the calls:
- let the callee knows whether it was called directly or indirectly
- two NULL zval * parameters for future extension in a pecl plugin
2015-04-07 20:45:17 +02:00
Jin Hu 1f28da0225 Added RETURN_ARR and RETVAL_ARR macros 2015-04-08 00:33:11 +08:00
Reeze Xia 624552c3d7 Fixed implicit declaration of function warning 2015-04-07 22:22:42 +08:00
Dmitry Stogov b8ba3203e5 Cleanup 2015-04-07 14:19:12 +03:00
Dmitry Stogov 55cdde3dd6 Fixed bug #69376 (Wrong ref counting). 2015-04-07 02:35:52 +03:00
Dmitry Stogov 5bd71e9713 Avoid reallocation 2015-04-07 02:35:21 +03:00
Nikita Popov f53e20e595 Merge branch 'PHP-5.6'
Conflicts:
	Zend/zend_compile.c
	Zend/zend_compile.h
	Zend/zend_language_parser.y
2015-04-06 22:09:22 +02:00
Nikita Popov 7e9a1c1e3f Merge branch 'PHP-5.5' into PHP-5.6
Conflicts:
	Zend/zend_compile.c
	Zend/zend_compile.h
2015-04-06 22:06:48 +02:00
Nikita Popov cc70a46525 Fix bug #60022 2015-04-06 22:03:04 +02:00
Nikita Popov 23c7f19e41 Undef results for new arithmetic exceptions
For the compound assing case (e.g. $a <<= $b) the result is going
to be dtored, so we have to set *some* value.
2015-04-06 21:52:20 +02:00
Nikita Popov 78e1885b7d Merge branch 'PHP-5.6' 2015-04-06 21:45:42 +02:00
Nikita Popov d819b45597 Merge branch 'PHP-5.5' into PHP-5.6 2015-04-06 21:44:52 +02:00
Nikita Popov 160dbe91a9 Fix static member destruction 2015-04-06 21:37:19 +02:00
Dmitry Stogov 1cfc9db0d6 Fixed test 2015-04-06 22:07:18 +03:00
Dmitry Stogov 5820be029a 0.0 / 0.0 = NaN 2015-04-06 22:03:44 +03:00
Dmitry Stogov 9a57379024 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #68652 (segmentation fault in destructor)

Conflicts:
	NEWS
2015-04-06 18:19:07 +03:00
Dmitry Stogov 812106d0c6 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #68652 (segmentation fault in destructor)

Conflicts:
	NEWS
2015-04-06 18:16:08 +03:00
Dmitry Stogov 21bb33cc72 Fixed bug #68652 (segmentation fault in destructor) 2015-04-06 18:11:41 +03:00
Dmitry Stogov a62896783f Removed wrong error messages 2015-04-06 18:10:45 +03:00
Dmitry Stogov d77950902e Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  catch up with INF handling under VS
2015-04-06 18:10:34 +03:00
Anatol Belski d3f1abc27d catch up with INF handling under VS 2015-04-06 17:01:19 +02:00
Dmitry Stogov 9e2c14c121 Fixed error messages 2015-04-06 17:24:32 +03:00
Anatol Belski f0c533f421 fix build 2015-04-06 13:56:47 +02:00
Dmitry Stogov cae0147ed3 Fixed weird operators behavior. Division by zero now emits warning and returns +/-INF, modulo by zero and intdid() throws an exception, shifts by negative offset throw exceptions. Compile-time evaluation of division by zero is disabled. 2015-04-06 14:30:05 +03:00
Nikita Popov caf9219dea Fix EH_THROW replacement in PDO constructor
Needs to happen for the "goto options" case as well, otherwise
will try to restore error handling that was never replaced.
2015-04-06 12:15:04 +02:00
Nikita Popov 122d759618 Always throw TypeException on throwing zpp failures
Introduces a ZEND_PARSE_PARAMS_THROW flag for zpp, which forces to
report FAILURE errors using a TypeException instead of a Warning,
like it would happen in strict mode.

Adds a zend_parse_parameters_throw() convenience function, which
invokes zpp with this flag.

Converts all cases I could identify, where we currently have
throwing zpp usage in constructors and replaces them with this API.
Error handling is still replaced to EH_THROW in some cases to handle
other, domain-specific errors in constructors.
2015-04-06 11:27:34 +02:00
Stanislav Malyshev 884b0365db Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #68740 (NULL Pointer Dereference)
2015-04-05 22:49:06 -07:00
Stanislav Malyshev 6a7a03644a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #68740 (NULL Pointer Dereference)
2015-04-05 22:48:37 -07:00
Stanislav Malyshev 890195f85c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #68740 (NULL Pointer Dereference)
2015-04-05 22:48:27 -07:00
Xinchen Hui 9a404df382 Fixed bug #68740 (NULL Pointer Dereference)
(cherry picked from commit 124fb22a13)
2015-04-05 22:48:10 -07:00
Stanislav Malyshev ff740f16f9 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #66550 (SQLite prepared statement use-after-free)

Conflicts:
	ext/sqlite3/sqlite3.c
2015-04-05 22:45:16 -07:00
Stanislav Malyshev 2a81733c87 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #66550 (SQLite prepared statement use-after-free)
2015-04-05 22:38:20 -07:00
Stanislav Malyshev 66b853d426 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #66550 (SQLite prepared statement use-after-free)
2015-04-05 22:37:51 -07:00
Stanislav Malyshev 5ae20c6247 Fix bug #66550 (SQLite prepared statement use-after-free) 2015-04-05 22:36:26 -07:00
Stanislav Malyshev 8976e8d9f0 Merge branch 'PHP-5.6'
* PHP-5.6:
  Better fix for #68601 for perf https://bitbucket.org/libgd/gd-libgd/commits/81e9a993f2893d651d225646378e3fd1b7465467
  Fix bug #68601 buffer read overflow in gd_gif_in.c
  Revert "Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4"
  Fixed bug #69293
  Add ZEND_ARG_CALLABLE_INFO to allow internal function to type hint against callable.
2015-04-05 17:37:44 -07:00
Stanislav Malyshev c167029eb6 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Better fix for #68601 for perf https://bitbucket.org/libgd/gd-libgd/commits/81e9a993f2893d651d225646378e3fd1b7465467
  Fix bug #68601 buffer read overflow in gd_gif_in.c
  Revert "Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4"
  Fixed bug #69293
  Add ZEND_ARG_CALLABLE_INFO to allow internal function to type hint against callable.
2015-04-05 17:37:12 -07:00
Stanislav Malyshev 96f5be53f6 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Better fix for #68601 for perf https://bitbucket.org/libgd/gd-libgd/commits/81e9a993f2893d651d225646378e3fd1b7465467
  Fix bug #68601 buffer read overflow in gd_gif_in.c
  Revert "Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4"
  Fixed bug #69293
  Add ZEND_ARG_CALLABLE_INFO to allow internal function to type hint against callable.
2015-04-05 17:36:52 -07:00
Remi Collet bd31cb7563 Better fix for #68601 for perf
https://bitbucket.org/libgd/gd-libgd/commits/81e9a993f2893d651d225646378e3fd1b7465467
2015-04-05 17:36:47 -07:00
Remi Collet afbf725e73 Fix bug #68601 buffer read overflow in gd_gif_in.c 2015-04-05 17:33:52 -07:00
Ferenc Kovacs f1aa1dcb54 Merge branch 'PHP-5.6'
* PHP-5.6:
  add travis failure/recover notification for our irc room
2015-04-05 22:55:28 +02:00
Ferenc Kovacs e78552f3aa Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  add travis failure/recover notification for our irc room
2015-04-05 22:54:57 +02:00
Ferenc Kovacs 829ea23d34 add travis failure/recover notification for our irc room 2015-04-05 22:54:30 +02:00
Ferenc Kovacs a978a5eb49 fix build 2015-04-05 22:45:58 +02:00
Anatol Belski 92324b2719 fix nts windows_version_info and reorganize 2015-04-05 19:46:38 +02:00
Xinchen Hui b6aeab1b91 Fixed bug #69371 (Hash table collision leads to inaccessible array keys) 2015-04-05 18:45:14 +08:00
Stanislav Malyshev d19842f613 Merge branch 'PHP-5.4.40' into PHP-5.5-security
* PHP-5.4.40:
  Fixed bug #69316 (Use-after-free in php_curl related to CURLOPT_FILE/_INFILE/_WRITEHEADER)
  Fix bug #68486 and bug #69218 (segfault in apache2handler with apache 2.4)
  Fix bug #68819 (Fileinfo on specific file causes spurious OOM and/or segfault)
  Revert "Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4"
  Fixed bug #69293
  Add ZEND_ARG_CALLABLE_INFO to allow internal function to type hint against callable.
2015-04-05 00:45:58 -07:00
Stanislav Malyshev cb0d325066 Fixed bug #69316 (Use-after-free in php_curl related to CURLOPT_FILE/_INFILE/_WRITEHEADER) 2015-04-05 00:32:13 -07:00
Stanislav Malyshev af1cd45d17 Fix bug #68486 and bug #69218 (segfault in apache2handler with apache 2.4) 2015-04-04 15:09:34 -07:00
Stanislav Malyshev 80e2632776 Fix bug #68819 (Fileinfo on specific file causes spurious OOM and/or segfault) 2015-04-04 15:01:37 -07:00
Kalle Sommer Nielsen a5a7db8a6a Fix build 2015-04-04 22:11:37 +02:00
Kalle Sommer Nielsen fe58896638 Merge branch 'master' of https://git.php.net/push/php-src 2015-04-04 22:05:21 +02:00
Kalle Sommer Nielsen 118a2fa8d9 This part here was moved to the EG constructor by Anatol in f51a9c71dd 2015-04-04 22:04:32 +02:00
Anatol Belski 7263297121 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  added test for bug #69354
  revert skipif, this should run everywhere
  further ODBC 3.0 compliance
  more compliance with the ODBC 3.0
  test fixes
2015-04-04 21:52:35 +02:00
Anatol Belski c585b4845c updated NEWS 2015-04-04 21:50:50 +02:00
Anatol Belski b1997278fd Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  added test for bug #69354
  revert skipif, this should run everywhere
  further ODBC 3.0 compliance
  more compliance with the ODBC 3.0
  test fixes
2015-04-04 21:50:18 +02:00
Anatol Belski 8751e0fe71 updated NEWS
fixes for bug #69354 was cherrypicked from master
2015-04-04 21:49:09 +02:00
Anatol Belski 7eda18514d added test for bug #69354 2015-04-04 21:42:51 +02:00
Anatol Belski 0ae0d0bc53 revert skipif, this should run everywhere 2015-04-04 21:42:43 +02:00
Anatol Belski d27d9158c9 further ODBC 3.0 compliance 2015-04-04 21:42:33 +02:00
Anatol Belski 5c2aa71e0c more compliance with the ODBC 3.0 2015-04-04 21:42:17 +02:00
Anatol Belski a5bb37117c test fixes 2015-04-04 21:42:08 +02:00
Anatol Belski 69c2e53419 no more winxp, but really 2015-04-04 20:39:04 +02:00
Anatol Belski f51a9c71dd initialize EG(windows_version_info)
there are more places refering to this, but seems it was never
initialized
2015-04-04 20:28:58 +02:00
Nikita Popov 30d59aed1c Try fixing PDO MySQL pconnect test
Use less aggressive conversion to exceptions, in particular
do not convert warnings that happen during check_liveness. If the
server has gone away this will just reconnect and we still end up
with a valid connection, so it shouldn't throw.

Also drop some unnecessary checks for malloc returning NULL.
2015-04-04 16:00:17 +02:00
Nikita Popov f3e3d85bb2 Drop now unnecessary start parameter 2015-04-04 13:10:29 +02:00
Nikita Popov 9a4b7ad9bb Fix parameter parsing for mysqli_stmt_bind_result()
Also drops one unnecessary arg allocation
2015-04-04 13:05:05 +02:00
Nikita Popov fa15ac4c37 Fix separation in array_multisort
This manifested in Zend/tests/bug52939.phpt when running without
opcache (no immutablization).
2015-04-04 10:52:43 +02:00
Nikita Popov 86906d6a7b Fix typo 2015-04-04 10:38:00 +02:00
Nikita Popov f920f974c4 Clarify that some zpp errors are just for debugging
These occur when the extension author messed up, not during normal
script execution.

Make these core errors and show them even with PARAMS_QUIET.
2015-04-04 10:28:37 +02:00
Dmitry Stogov dcaa79546b Don't relay on reference-counter when parameter expected to be a reference, but value given. 2015-04-03 16:35:06 +03:00
Xinchen Hui 75551c3f59 Unused var 2015-04-03 15:55:39 +08:00
Dmitry Stogov 52eac6bf11 Improved "fust shutdown". 2015-04-03 10:48:55 +03:00
Dmitry Stogov adcf0c6052 Improved reference counting 2015-04-03 01:32:20 +03:00
Anatol Belski f26592846f added test for bug #69354 2015-04-02 20:19:51 +02:00
Anatol Belski b244fdfb2f revert skipif, this should run everywhere 2015-04-02 20:19:42 +02:00
Anatol Belski 899362db6e further ODBC 3.0 compliance 2015-04-02 20:19:23 +02:00
Anatol Belski b3a027d610 more compliance with the ODBC 3.x 2015-04-02 20:18:11 +02:00
Anatol Belski 48447da836 test fixes 2015-04-02 20:16:01 +02:00
Nikita Popov a8bf1c5d8f Throw ParseException from lexer
Primarily to avoid getting fatal errors from token_get_all().

Implemented using a magic E_ERROR token, which the lexer emits to
force a parser failure.
2015-04-02 16:31:17 +02:00
Dmitry Stogov 83a15801cc Use PHP memory manager for mysqlnd memory pools. 2015-04-02 14:28:39 +03:00
Dmitry Stogov ad863c1740 Convert fatal errors into EngineException 2015-04-02 14:19:52 +03:00
Dmitry Stogov bf259db82e Recalssify some E_ERROR into E_CORE_ERROR 2015-04-02 13:07:17 +03:00
Dmitry Stogov a764214b02 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  fix tests
2015-04-02 12:38:16 +03:00
Dmitry Stogov 7c2956d15c Merge branch 'PHP-5.6'
* PHP-5.6:
  Prevent GC from changing zval or object 'color' before they are actually inserted into possible roots buffer.

Conflicts:
	NEWS
	Zend/zend_gc.c
2015-04-02 12:37:34 +03:00
Anatol Belski bdf315f5f3 fix tests 2015-04-02 11:37:02 +02:00
Dmitry Stogov baf5fdf598 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Prevent GC from changing zval or object 'color' before they are actually inserted into possible roots buffer.
2015-04-02 12:30:58 +03:00
Dmitry Stogov f29c98c128 Prevent GC from changing zval or object 'color' before they are actually inserted into possible roots buffer. 2015-04-02 12:29:15 +03:00
Stanislav Malyshev caecd88237 Revert "Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4"
This reverts commit fe0ca2745f, reversing
changes made to 968fbc6acf.
2015-04-01 23:43:33 -07:00
Xinchen Hui 97123042a2 Merge branch 'PHP-5.6' of https://git.php.net/repository/php-src into PHP-5.6 2015-04-02 09:06:46 +08:00
Xinchen Hui 3645a80b38 Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5 2015-04-02 09:06:38 +08:00
Xinchen Hui 0d240c3c56 Unused var 2015-04-02 09:05:04 +08:00
Xinchen Hui f8461d4aa3 Merge branch 'master' of https://git.php.net/repository/php-src 2015-04-02 09:03:48 +08:00
Dmitry Stogov 53d20140fb Fixed performance degradation introduced with lateast EnfineException related changes.
Restore original errors order in executor.
2015-04-02 03:56:42 +03:00
Dmitry Stogov ea09a9fa32 Convert fatal errors into EngineExceptions
Make zval_update_constant_ex(), zval_update_constant(), zend_update_class_constants() and zend_ast_evaluate() return SUCCESS or FAILURE.
2015-04-02 02:05:25 +03:00
Ferenc Kovacs 956fa034e3 Merge branch 'PHP-5.6'
* PHP-5.6:
  sigh, can't even copypaste without screwing up
2015-04-02 00:07:20 +02:00
Ferenc Kovacs 9806a37a79 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  sigh, can't even copypaste without screwing up
2015-04-02 00:07:13 +02:00
Ferenc Kovacs 9991b8ecee sigh, can't even copypaste without screwing up 2015-04-02 00:07:00 +02:00
Ferenc Kovacs 6923f081b7 Merge branch 'PHP-5.6'
* PHP-5.6:
  oop, put both the error number and message for both db object to the error message
2015-04-01 23:06:32 +02:00
Ferenc Kovacs e70e2d8310 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  oop, put both the error number and message for both db object to the error message
2015-04-01 23:06:22 +02:00
Ferenc Kovacs 7c1a1189be oop, put both the error number and message for both db object to the error message 2015-04-01 23:06:04 +02:00
Ferenc Kovacs 0328a60eec Merge branch 'PHP-5.6'
* PHP-5.6:
  test fixes
2015-04-01 22:08:29 +02:00
Ferenc Kovacs faab430141 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  test fixes
2015-04-01 22:08:11 +02:00
Ferenc Kovacs 0a41af216e test fixes 2015-04-01 22:07:52 +02:00
Stanislav Malyshev 4975019dd7 Merge branch 'PHP-5.6'
* PHP-5.6:
  Revert "Merge branch 'PHP-5.5' into PHP-5.6"

Conflicts:
	ext/date/php_date.c
	ext/date/tests/DateTime_verify.phpt
2015-04-01 12:50:40 -07:00
Stanislav Malyshev 2d9399af35 Revert "Merge branch 'PHP-5.5' into PHP-5.6"
This reverts commit aa22e80b1a, reversing
changes made to 3e7f47cb03.

Conflicts:
	ext/date/php_date.c
2015-04-01 12:49:25 -07:00
Dmitry Stogov ec760d8fff Convert fatal errors into EngineExceptions 2015-04-01 20:01:57 +03:00
Ferenc Kovacs 0295d89d45 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix typo: unitialized -> uninitialized
2015-04-01 18:06:12 +02:00
Ferenc Kovacs 978128b446 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix typo: unitialized -> uninitialized
2015-04-01 18:05:57 +02:00
Ferenc Kovacs 9ec3e7d98c Merge branch 'pr-1212' into PHP-5.5
* pr-1212:
  Fix typo: unitialized -> uninitialized
2015-04-01 18:05:36 +02:00
Xinchen Hui ed43b7a548 Merge branch 'PHP-5.6'
Conflicts:
	ext/opcache/zend_accelerator_module.c
2015-04-02 00:04:30 +08:00
Xinchen Hui 9433b33ac1 Update NEWS 2015-04-02 00:01:57 +08:00
Xinchen Hui 2533fde199 Merge branch 'PHP-5.5' into PHP-5.6 2015-04-01 23:59:45 +08:00
Danack 86f983bd3e Fixed bug #69281 (opcache_is_script_cached no longer works) 2015-04-01 23:58:22 +08:00
Lior Kaplan 3b8b1435ad Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix typo: unitialized -> uninitialized
  Fix typo: unitialized -> uninitialized

Conflicts:
	ext/xmlwriter/php_xmlwriter.c
2015-04-01 18:30:55 +03:00
Lior Kaplan 3409d87eab Fix typo: unitialized -> uninitialized 2015-04-01 18:21:01 +03:00
Lior Kaplan 2fd74c7f03 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix typo: unitialized -> uninitialized
2015-04-01 18:20:26 +03:00
Lior Kaplan 87cc7caa10 Fix typo: unitialized -> uninitialized 2015-04-01 18:19:09 +03:00
Lior Kaplan 59c2a55ec7 Fix typo: unitialized -> uninitialized 2015-04-01 18:17:53 +03:00
Dmitry Stogov 780a8123fe Convert fatal errors into EngineExceptions 2015-04-01 16:48:15 +03:00
Dmitry Stogov 0cad725886 Convert fatal errors into EngineExceptions 2015-04-01 15:54:03 +03:00
Dmitry Stogov 8c031a3f95 Handle incorrect break/continue statements at compile-time 2015-04-01 15:52:26 +03:00
Dmitry Stogov 4fd93a4da6 Converted fatal errors into EngineExceptions 2015-04-01 14:50:09 +03:00
Anatol Belski a0eaa37afe missing includes 2015-04-01 13:39:25 +02:00
Anatol Belski e271ace5f8 fix extern "C"
now, it shouldn't matter where intl_common.h is included,
not need for extra putting it into extern C
2015-04-01 13:18:52 +02:00
Anatol Belski ca1ef2749d C89 compat 2015-04-01 13:18:51 +02:00
Anatol Belski 056f8265a1 add ext/odbc note to UPGRADING 2015-04-01 13:18:50 +02:00
Dmitry Stogov 18f3d5490a Convert fatal error into EngineException 2015-04-01 13:49:11 +03:00
Dmitry Stogov 3ba4c7a137 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Remove datefmt_set_timezone_id and OO variant
2015-04-01 13:39:11 +03:00
Dmitry Stogov 1d75953a86 We don't need this protection anymore (now reference counting on closures is accurate). 2015-04-01 13:38:05 +03:00
Nikita Popov cf0ffa8e4c Remove datefmt_set_timezone_id and OO variant 2015-04-01 12:34:28 +02:00
Dmitry Stogov acfc31c0f8 Use zend_error_noreturn() for fatal errors 2015-04-01 13:32:23 +03:00
Nikita Popov ac470ddf1c More UPGRADING 2015-04-01 11:50:46 +02:00
Nikita Popov 085774997b Drop support for static calls from incompatible context
Implemented by NULLing $this.
2015-04-01 11:42:05 +02:00
Nikita Popov 7c67727082 Add some notes to UPGRADING 2015-04-01 11:17:55 +02:00
Nikita Popov 8d00385871 Reclassify E_STRICT notices
Per RFC https://wiki.php.net/rfc/reclassify_e_strict

While reviewing this, found that there are still three E_STRICTs
left in libraries - need to discuss those.
2015-04-01 11:17:55 +02:00
Dmitry Stogov 4796e0242b Merge branch 'InternalClassClean'
* InternalClassClean:
  Fixed test
  Patch improvement:
  Fixed indentation. Fixed comment style. Fixed commented out code.
  Reverted change to function name and added note of why it is different from the class it is actually changing.
  Made UConverter throw an exception if the constructor fails.
  Fixed PDO constructor to not return null.
  Fixed fileinfo behaviour.
  Made Phar throw exception on bad constructor.
  Converted intl extension to use IntlException in constructors.
  Fixed SplFixedArray and tests.
  Fixed ReflectionExtension and ReflectionProperty.
  Fixed ReflectionFunction, ReflectionMethod and ReflectionParameter.
  Fixed PDORow behaviour and message.
2015-04-01 12:11:13 +03:00
Nikita Popov 52fcc74875 Fix 32bit test failures due to ctor deprecation 2015-04-01 09:36:43 +02:00
Xinchen Hui fd0baec2e9 Merge branch 'master' of https://git.php.net/repository/php-src 2015-04-01 13:06:38 +08:00
Xinchen Hui af812eac4c Micro opt 2015-04-01 12:05:19 +08:00
Xinchen Hui ed772e1a99 Fixed test 2015-04-01 09:56:55 +08:00
Ferenc Kovacs a2752faaa8 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix release date
2015-04-01 01:42:26 +02:00
Ferenc Kovacs 8de838dc26 fix release date 2015-04-01 01:42:12 +02:00
Ferenc Kovacs 7a84967ba7 Merge branch 'PHP-5.6'
* PHP-5.6:
  5.6.9 is up next
2015-04-01 01:31:48 +02:00
Ferenc Kovacs a5e68f72a7 5.6.9 is up next 2015-04-01 01:30:51 +02:00
Lior Kaplan 9df685ef90 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #68739 (Missing break / control flow in curl)
  Fixed bug #68740 (NULL Pointer Dereference)
  Fixed bug #68677 (Use After Free in OPcache)

Conflicts:
	ext/ereg/regex/regcomp.c
2015-04-01 01:59:21 +03:00
Lior Kaplan 04c9271805 Add changelog entries for #68677, #68739 & #68740 2015-04-01 01:55:35 +03:00
Lior Kaplan c22543b3f3 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #68739 (Missing break / control flow in curl)
  Fixed bug #68740 (NULL Pointer Dereference)
  Fixed bug #68677 (Use After Free in OPcache)
2015-04-01 01:54:53 +03:00
Lior Kaplan a32c8ba719 Fixed bug #68739 (Missing break / control flow).
Fixed bug #68740 (NULL Pointer Dereference).
Fixed bug #68677 (Use After Free).
2015-04-01 01:45:34 +03:00
Xinchen Hui 1add8401a3 Fixed bug #68739 (Missing break / control flow in curl)
(cherry picked from commit 124fb22a13)
2015-04-01 01:24:26 +03:00
Xinchen Hui 059e774db0 Fixed bug #68740 (NULL Pointer Dereference)
(cherry picked from commit 124fb22a13)
2015-04-01 01:24:26 +03:00
Xinchen Hui 0a8f28b432 Fixed bug #68677 (Use After Free in OPcache)
(cherry picked from commit 777c39f404)
2015-04-01 01:24:16 +03:00
Dmitry Stogov 2bf8f29d16 Converted most object handlers fatal errors into EngineExceptions 2015-04-01 00:37:59 +03:00
Nikita Popov 6ef9216269 Finish PHP 4 constructor deprecation 2015-03-31 17:55:27 +02:00
Andrea Faulds db76b708cf Deprecate PHP 4 constructors 2015-03-31 17:55:27 +02:00
Julien Pauli b56f8022c8 Updated NEWS 2015-03-31 17:46:23 +02:00
Derick Rethans 30123005ff Fixed bug #69336 (Issues with "last day of <monthname>"). 2015-03-31 17:44:08 +02:00
Derick Rethans d252c9f832 Merge branch 'PHP-5.6'
Conflicts:
	ext/date/lib/parse_date.c
	ext/date/php_date.c
2015-03-31 16:36:51 +01:00
Derick Rethans 2d3868984c Merge branch 'PHP-5.5' into PHP-5.6 2015-03-31 16:35:10 +01:00
Derick Rethans ffbd380e44 Fixed bug #69336 (Issues with "last day of <monthname>"). 2015-03-31 16:35:03 +01:00
Julien Pauli 8e3e034469 5.5.24RC1 2015-03-31 16:03:52 +02:00
Julien Pauli 1737e44dec Merge branch 'PHP-5.6'
* PHP-5.6:
  5.5.25 now
2015-03-31 16:00:17 +02:00
Julien Pauli 133c57198e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  5.5.25 now
2015-03-31 15:57:44 +02:00
Julien Pauli 97a1b34300 5.5.25 now 2015-03-31 15:51:47 +02:00
Dmitry Stogov 463ca30c8c Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  force ext/odbc to be shared in snapshot build
2015-03-31 16:36:26 +03:00
Dmitry Stogov 685ab95add Convert fatal errors on improper access to static properties into EngineExceptions 2015-03-31 16:35:27 +03:00
Anatol Belski b13df7327f force ext/odbc to be shared in snapshot build 2015-03-31 12:54:10 +02:00
Dmitry Stogov e8672deefc Convert "Unsupported operands" fatal error into EngineException (exceptions can't be thrown at compile-time yet, so unsuported operands in constant expressions are still lead to fatal error). 2015-03-31 13:25:26 +03:00
Derick Rethans f9d1a47f24 Merge branch 'PHP-5.6' 2015-03-31 11:09:31 +01:00
Derick Rethans 346c8f7331 Merge branch 'PHP-5.5' into PHP-5.6 2015-03-31 11:09:23 +01:00
Derick Rethans 2c117a40a7 Export date_get_immutable_ce() so that extensions can make use of it too. 2015-03-31 11:08:56 +01:00
Xinchen Hui 9203608878 Merge branch 'master' of https://git.php.net/repository/php-src 2015-03-31 16:52:43 +08:00
Xinchen Hui ceb77b6472 Revert "Better to taverse reversely"
This reverts commit 51451ab84a.
2015-03-31 16:52:30 +08:00
Lior Kaplan 5417f22e99 Merge branch 'PHP-5.6'
* PHP-5.6:
  Align entries format
  Update CVE for Bug #68976 to CVE-2015-2787 instead of reusing CVE for #68710
  Add CVE for bug #69207
  Align NEWS entries with 5.6.7
  Align entries format
  Update CVE for Bug #68976 to CVE-2015-2787 instead of reusing CVE for #68710
  Add CVE for bug #69207
2015-03-31 09:28:22 +03:00
Lior Kaplan 0c1c7c7ecb Align entries format 2015-03-31 09:26:34 +03:00
Lior Kaplan b3d4790976 Update CVE for Bug #68976 to CVE-2015-2787 instead of reusing CVE for #68710 2015-03-31 09:24:56 +03:00
Lior Kaplan 96e33a7e98 Add CVE for bug #69207 2015-03-31 09:23:34 +03:00
Lior Kaplan e5fd3fc99d Align NEWS entries with 5.6.7 2015-03-31 09:20:29 +03:00
Lior Kaplan 90329a32dc Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Align entries format
  Update CVE for Bug #68976 to CVE-2015-2787 instead of reusing CVE for #68710
  Add CVE for bug #69207
2015-03-31 09:17:13 +03:00
Lior Kaplan 1bc77559f3 Align entries format 2015-03-31 09:14:06 +03:00
Lior Kaplan 8654fdd884 Update CVE for Bug #68976 to CVE-2015-2787 instead of reusing CVE for #68710 2015-03-31 09:12:05 +03:00
Lior Kaplan 639f92275a Add CVE for bug #69207 2015-03-31 09:11:21 +03:00
Xinchen Hui d7835ee224 Using int32_t opposite of uint32_t 2015-03-31 12:40:29 +08:00
Xinchen Hui b72fd9c258 Merge branch 'master' of https://git.php.net/repository/php-src 2015-03-31 11:54:08 +08:00
Xinchen Hui fd1a7c5f2d Add XFAIL test 2015-03-31 11:53:52 +08:00
Nikita Popov 53a40386bc Implement additional type reservations
* The class names false, true and null are now reserved.
 * The code dealing with reserved class names is now decoupled
   from scalar type hint handling. It also includes self, parent,
   and static, which are class names which were already reserved
   previously.
 * Reuse existing messages for reserved class names.

Fallout: class_alias() can no longer alias self, parent and static.
However this never really worked in the first place, as the test
which was testing this shows.
2015-03-30 22:59:06 +02:00
Dmitry Stogov 2afca9f179 Fixed test 2015-03-30 21:48:54 +03:00
Kalle Sommer Nielsen 607b7d662a Added missing zend_parse_parameters_none() to restore_error_handler() and restore_exception_handler() (Ferenc) 2015-03-30 17:57:32 +02:00
Dmitry Stogov 1018f462d8 Patch improvement:
Removed the corresponding core code.
Fixed ext/com_dotnet and ext/date.
Refactored ext/intl changes.
Improved ext/fileinfo and ext/pdo changes.
Fixed tests.
2015-03-30 18:53:38 +03:00
Michael Wallner 3ec9d9f3b6 Merge branch 'PHP-5.6'
* PHP-5.6:
  BFN
  Fixed bug #64931
2015-03-30 16:29:18 +02:00
Michael Wallner b7389f0f07 BFN 2015-03-30 16:27:08 +02:00
Michael Wallner a4490bb0a2 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #64931
2015-03-30 16:25:47 +02:00
Michael Wallner 6480725007 Fixed bug #64931
phar_add_file is too restrive on filename

Check for any of '/', '\\', '\0' after ".phar".
2015-03-30 16:24:19 +02:00
Michael Wallner 8994a5eb1d Merge branch 'PHP-5.6'
* PHP-5.6:
  BFN
  Fixed Bug #65467
2015-03-30 15:41:53 +02:00
Michael Wallner a24aefaac2 BFN 2015-03-30 15:41:36 +02:00
Michael Wallner 3c22449649 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed Bug #65467
2015-03-30 15:41:03 +02:00
Michael Wallner 6de25c155e Fixed Bug #65467
Call to undefined method cli_arg_typ_string

Use cli_arg_typ_filecontent instead.
2015-03-30 15:39:30 +02:00
Michael Wallner e148fff61d Merge branch 'PHP-5.6'
* PHP-5.6:
  BFN
  fix bug #67761
2015-03-30 14:45:38 +02:00
Michael Wallner 64d9c98fa9 BFN 2015-03-30 14:43:02 +02:00
Michael Wallner 90a8b59e9c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix bug #67761
2015-03-30 14:42:37 +02:00
Michael Wallner 8f7e378b9f fix bug #67761
Phar::mapPhar fails for Phars inside a path containing ".tar".

Strengthen the silly .tar file extension check.
2015-03-30 14:41:30 +02:00
Xinchen Hui 74090539c1 It's lowercase now 2015-03-30 20:32:02 +08:00
Xinchen Hui ab4f120c6a Merge branch 'PHP-5.6'
Conflicts:
	NEWS
	ext/opcache/Optimizer/pass1_5.c
2015-03-30 20:20:55 +08:00
Michael Wallner 3a660bf3a5 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug 64343

; Lesson learned: do not rebase on a merge commit
2015-03-30 13:48:57 +02:00
Michael Wallner ef52e44053 Fixed bug 64343
PharData::extractTo fails for tarball created by BSD tar

Phar did not know about PAX style global/file headers.
Skip them, to be able to read the contents of those archives.
2015-03-30 13:20:09 +02:00
Michael Wallner f4264ebc64 Fixed bug 64343
PharData::extractTo fails for tarball created by BSD tar

Phar did not know about PAX style global/file headers.
Skip them, to be able to read the contents of those archives.
2015-03-30 13:11:06 +02:00
Dmitry Stogov 9155a267ad Merge branch 'InternalClassClean' of github.com:Danack/php-src into InternalClassClean
* 'InternalClassClean' of github.com:Danack/php-src:
  Fixed indentation. Fixed comment style. Fixed commented out code.
  Reverted change to function name and added note of why it is different from the class it is actually changing.
  Made UConverter throw an exception if the constructor fails.
  Fixed PDO constructor to not return null.
  Fixed fileinfo behaviour.
  Made Phar throw exception on bad constructor.
  Converted intl extension to use IntlException in constructors.
  Fixed SplFixedArray and tests.
  Fixed ReflectionExtension and ReflectionProperty.
  Fixed ReflectionFunction, ReflectionMethod and ReflectionParameter.
  Fixed PDORow behaviour and message.
2015-03-30 12:14:43 +03:00
Xinchen Hui 3ad9ff197d Fixed typos 2015-03-30 16:56:12 +08:00
Xinchen Hui 97956a5d08 Fixed tests 2015-03-30 16:25:41 +08:00
Xinchen Hui 51451ab84a Better to taverse reversely 2015-03-30 15:26:59 +08:00
Xinchen Hui c71c97e101 Fixed test 2015-03-30 14:18:23 +08:00
Kalle Sommer Nielsen 298a0554a7 This check here is not needed anymore for Windows (Unsupported Windows version check) 2015-03-30 04:13:43 +02:00
Eric F 321bafccde Update openssl.c
Adding additional checks for sslv3.
2015-03-30 01:30:09 +02:00
Kalle Sommer Nielsen 6a8ab3d7c6 Fix additional NULL byte added to string keys in get_header(), spotted by Ferenc 2015-03-30 00:52:28 +02:00
Anatol Belski a7e6687df6 updated libmagic.patch 2015-03-29 18:22:42 +02:00
Anatol Belski 5b6427c40f further sync with libmagic.orig 2015-03-29 18:17:02 +02:00
Anatol Belski f51d78a35d catch up with libmagic.orig
that'll simplify future merges
2015-03-29 18:11:11 +02:00
Anatol Belski 662c439087 fix typo 2015-03-29 17:59:28 +02:00
Anatol Belski 5e773b4ce5 catch up with libmagic.orig 2015-03-29 17:57:22 +02:00
Anatol Belski a935c02210 added test for bug #69320 2015-03-29 17:52:38 +02:00
Anatol Belski aeabea4aa9 Fixed bug #69320 libmagic crash when running laravel tests
Basically reverted the part of the new patch to what we have in 5.6
as the current change seems to have bad side effects. Hovere the
in buffer used for PCRE is still doubled (1 << 14), this might or
might not be optimal, so lets observe.
2015-03-29 17:42:59 +02:00
Anatol Belski 2accf544cb ifdef win only api 2015-03-29 13:18:25 +02:00
Kalle Sommer Nielsen 19bc9a8dd8 Update credits 2015-03-29 10:15:43 +02:00
Kalle Sommer Nielsen de2d244f8e We can re-use the already existing EG(windows_version_info) here and save a little bit of memory too! 2015-03-29 09:47:14 +02:00
Kalle Sommer Nielsen c48611772d Remove the special disabled functions on Windows, since we don't even support those versions of Windows anymore hence it makes no sense to even check for it 2015-03-29 09:41:47 +02:00
Kalle Sommer Nielsen a141ccb4ff Another minor cleanup, drop ENFORCE_SAFE_MODE (all except pdo_pgsql have #if's for checking already) 2015-03-29 09:34:05 +02:00
Kalle Sommer Nielsen 7845bcd827 Shameless self credit for the Windows support for contributions in the almost past decade (How time flies when you are having fun) 2015-03-29 08:11:08 +02:00
Kalle Sommer Nielsen a7b4f32519 This should be the last of the old VC stuff in the Windows build system, also up the check to require VC11 now 2015-03-29 08:05:42 +02:00
Kalle Sommer Nielsen 0ca8ffa2b8 Forgot this one in the last commit, removes old VC support from ext/fileinfo 2015-03-29 07:54:18 +02:00
Kalle Sommer Nielsen 60cbef19a2 Drop the VC6 portable version of strtoi64, as it is no longer needed 2015-03-29 07:49:35 +02:00
Kalle Sommer Nielsen 88b9d485d6 Drop old VC support for ext/fileinfo.
@Anatol, I generated the updated patch file against file 5.22, since you are the one that usually updates it, can you please confirm it works?
2015-03-29 07:48:48 +02:00
Kalle Sommer Nielsen 75e86b44fc Drop this redundant check, since the minimum version of VC we support is VC11 (_MSC_VER == 1700) in ext/date 2015-03-29 07:14:54 +02:00
Kalle Sommer Nielsen 313d01f30a Drop old VC support in Zend Engine, this also kills the remaining MessageBox fix for Windows 9x that Anatol changed a while back 2015-03-29 07:10:39 +02:00
Kalle Sommer Nielsen 43457f960f Drop old VC support (VC <= 9), for dns.c, this means that DNS_TYPE_NAPTR always is available 2015-03-29 06:57:11 +02:00
Kalle Sommer Nielsen 3d4aad5e27 Remove this VC8 check as our minimum target version of VC is higher 2015-03-29 06:50:09 +02:00
Kalle Sommer Nielsen a75e8d1fe6 Drop this VC8+ check, since our bare minimum of required VC version is higher anyway, meaning that CRT warnings are always supported. 2015-03-29 06:45:40 +02:00
Kalle Sommer Nielsen ca0a2e7a3c Drop VC6 support in sapi/apache2handler 2015-03-29 06:37:07 +02:00
Kalle Sommer Nielsen 169ed3257b Drop VC6 support in ext/calendar 2015-03-29 06:35:23 +02:00
Kalle Sommer Nielsen f8590f7100 Drop this struct (it was only used for VC6 which we don't support anyway) 2015-03-29 06:20:30 +02:00
Kalle Sommer Nielsen 1a0534077f Merge branch 'master' of https://git.php.net/push/php-src 2015-03-29 06:09:02 +02:00
Kalle Sommer Nielsen be2111e05e Enable all compiler warnings and linker warnings for debug builds on Windows. This is a slightly modified version of the patch in #55709 2015-03-29 06:06:24 +02:00
Xinchen Hui 1646e0e9d7 Fixed typo 2015-03-28 18:51:57 +08:00
Xinchen Hui 5c31c8c6e5 Fixed is_callable/function_exists with disable_functions 2015-03-28 17:07:11 +08:00
Xinchen Hui 193de2a679 Fixed memleak
ext/standard/tests/serialize/bug69210.phpt
2015-03-28 14:35:14 +08:00
Xinchen Hui e60b380c55 Merge branch 'bug69315' of https://github.com/laruence/php-src 2015-03-28 14:10:41 +08:00
Xinchen Hui 4328999d2c Merge branch 'master' of https://git.php.net/repository/php-src 2015-03-28 11:02:23 +08:00
Kalle Sommer Nielsen 8153286efe Drop zend_indent() as it was never used, complete or working 2015-03-27 20:04:46 +01:00
Dmitry Stogov 75f40ae1f3 Fixed bug #69293 2015-03-27 18:40:58 +03:00
Nikita Popov c64f5e3332 Disallow direct incdec of function return value
Matching PHP 5 behavior.

We may want to support this for by-reference returns, but that
requires implementing further checks.
2015-03-27 16:40:04 +01:00
Kalle Sommer Nielsen f678519a63 Merge branch 'master' of https://git.php.net/push/php-src 2015-03-27 15:21:52 +01:00
Kalle Sommer Nielsen dd601e661c Remove these CFLAGS for ereg in opcache, we don't use them anymore (as opcache uses PCRE) together with ereg being gone 2015-03-27 15:01:31 +01:00
Leigh 456f4a78d2 Add RAND_egd check for compiling against LibreSSL 2015-03-27 13:33:22 +01:00
Leigh a04ab4b54b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Add RAND_egd check for compiling against LibreSSL
2015-03-27 13:26:48 +01:00
Leigh 1b2d58a364 Add RAND_egd check for compiling against LibreSSL 2015-03-27 13:24:36 +01:00
Xinchen Hui 84d9426730 Fixed bug #69315 2015-03-27 17:50:36 +08:00
K b3962ab940 zend_hash_do_resize: amortizing the cost of compaction
New implementation of hashtables introduced a compaction step which is
triggered when a hashtable is full but it contains at least one deleted
bucket. Therefore there is a possibility that a cleverly crafted code can
trigger this compaction step (which takes time proportional to the size of
hashtabe) by executing constatnt number of operations. When the hashtable
is full, deletion and subsequent addition or single element triggers a
table compaction and these two steps can be repeated ad infinitum. This
might be avenue for a DOS attack.

This patch allows compaction to be performed only if the hashtable contains
at least 1/32 deleted elements, otherwise the hashtable is doubled in size.
Linear amount of work caused by compaction is amortized over multiple
malicious additions and deletions.
2015-03-26 19:05:38 +01:00
Xinchen Hui 4ef3f4e76a Useless comment 2015-03-26 13:50:43 +08:00
Kalle Sommer Nielsen d9d74d37ac Fix test on Windows 2015-03-26 03:29:18 +01:00
Kalle Sommer Nielsen 9dfe033ae4 Fix test on Windows 2015-03-26 03:22:57 +01:00
Kalle Sommer Nielsen 5e9036a2a1 Another CRLF test fix 2015-03-26 03:18:42 +01:00
Kalle Sommer Nielsen 71734d64c8 Fix tests on Windows
CRLF takes +2 bytes when running the tests, making it yield 13 instead of 11
2015-03-26 03:13:50 +01:00
Kalle Sommer Nielsen 10e1b13ac5 Minor cosmetics for our test functions in the debug build 2015-03-26 02:03:55 +01:00
Kalle Sommer Nielsen 1c5994184f Added tests for the naming collision error message to handle all possible conditions 2015-03-26 01:59:23 +01:00
Kalle Sommer Nielsen 67b907f059 Change the error message for colliding class/interface/trait names to be a little more clearer.
C:\> php -r "interface stdClass { }"
  Error: Cannot declare interface stdClass, because the name is already in use in Command Line Code on line 1
2015-03-26 01:44:23 +01:00
Anatol Belski 2cd07c377d remove recognition for no more supported OSes 2015-03-25 19:31:50 +01:00
Lior Kaplan ebce0d5d5a Add CVE for bug #68901 2015-03-25 19:32:25 +02:00
Lior Kaplan 67c5ad6b6a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Add CVE for bug #68901
2015-03-25 19:31:05 +02:00
Lior Kaplan bc0e5051e3 Add CVE for bug #68901 2015-03-25 19:26:40 +02:00
Xinchen Hui d55d10c7fd Fixed bug #69299 (Regression in array_filter's $flag argument in PHP 7) 2015-03-25 23:50:54 +08:00
Xinchen Hui 6aaee5fc14 Merge branch 'PHP-5.6'
Conflicts:
	ext/opcache/Optimizer/pass1_5.c
2015-03-25 23:35:56 +08:00
Xinchen Hui d380d1cb1b Fixed Bug #69297 (function_exists strange behavior with OPCache on disabled function)
is_callable returns true for disable_functions, but function_exists
return false for it.
2015-03-25 23:34:02 +08:00
Xinchen Hui c7da95e5ab Merge branch 'master' of https://git.php.net/repository/php-src 2015-03-25 23:29:31 +08:00
Xinchen Hui e46e9a3d22 Fixed Bug #69297 (function_exists strange behavior with OPCache on disabled function)
is_callable returns true for disable_functions, but function_exists
return false for it.
2015-03-25 23:29:18 +08:00
Anatol Belski 1f84e29506 integrate static tsrm_ls cache for ext/odbc 2015-03-25 15:32:36 +01:00
Anatol Belski 774b113b32 fix datatype mismatches 2015-03-25 15:32:36 +01:00
Anatol Belski fe36285de2 fix datatype mismatches 2015-03-25 15:32:35 +01:00
Michael Wallner 0ae011f3a7 RFC:continue_ob accepted 2015-03-25 15:22:49 +01:00
Remi Collet 2fe6acd8f5 expose destroy_uploaded_files_hash in the API (used by apfd extension) 2015-03-25 14:33:47 +01:00
Anatol Belski d16a900731 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  Fixed bug #69287 upgrade bundled sqlite to 3.8.8.3
  fix dir separator in test
2015-03-25 13:17:19 +01:00
Anatol Belski c87aee8a8a updated bundled libsqlite to 3.8.8.3 2015-03-25 13:16:56 +01:00
Anatol Belski 7461c52248 updated NEWS 2015-03-25 13:14:42 +01:00
Anatol Belski c9550e81da Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #69287 upgrade bundled sqlite to 3.8.8.3
  fix dir separator in test
2015-03-25 13:13:42 +01:00
Anatol Belski 1b41dcf9c5 Fixed bug #69287 upgrade bundled sqlite to 3.8.8.3 2015-03-25 13:13:03 +01:00
Anatol Belski 8f9cb39cad fix dir separator in test 2015-03-25 13:11:27 +01:00
Remi Collet 23336d77a6 Merge branch 'PHP-5.6'
* PHP-5.6:
  revert a4157423934edf7b8fdbcee163cced9bfd5748a, fix build odbc as shared
  Fixed typo
  Fixed typo
2015-03-25 10:33:39 +01:00
Remi Collet 3924548bcb Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  revert a4157423934edf7b8fdbcee163cced9bfd5748a, fix build odbc as shared
2015-03-25 10:33:31 +01:00
Remi Collet 1174b399ad revert a4157423934edf7b8fdbcee163cced9bfd5748a, fix build odbc as shared 2015-03-25 10:33:08 +01:00
Kalle Sommer Nielsen 02be73b5fa Constness to zend_get_object_type(), thanks Michael! 2015-03-25 07:01:04 +01:00
Xinchen Hui f2e6b86fdc Merge branch 'PHP-5.6' 2015-03-25 13:54:49 +08:00
Xinchen Hui eb98366642 Fixed typo 2015-03-25 13:54:42 +08:00
Xinchen Hui 3ab1513ac9 Merge branch 'PHP-5.5' into PHP-5.6 2015-03-25 13:54:30 +08:00
Xinchen Hui 23520d7957 Fixed typo 2015-03-25 13:54:12 +08:00
Kalle Sommer Nielsen c340b186f8 Merge branch 'master' of https://git.php.net/push/php-src 2015-03-25 06:32:29 +01:00
Kalle Sommer Nielsen 927d53fda4 Change "Cannot redeclare class X" into "Cannot redeclare class/interface/trait X", meaning that the following:
C:\> php -r "trait A { } trait A { }"

Will now properly print "Cannot redeclare trait A" instead of "Cannot redeclare class A" to make error messages a tiny bit clearer. Admittedly, a better solution can most likely be made by actually telling what the colliding object is a type of.

Internally this adds a new function:
 zend_get_object_type()
2015-03-25 06:31:11 +01:00
Xinchen Hui fe0ca2745f Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4 2015-03-25 13:05:08 +08:00
Kalle Sommer Nielsen a3d2f9b600 The error message is actually "Cannot", not "Can't" 2015-03-25 05:20:58 +01:00
Xinchen Hui db76b8c01f Merge branch 'PHP-5.6'
Conflicts:
	ext/soap/php_encoding.c
2015-03-25 12:10:54 +08:00
Xinchen Hui 3eb893396a Update NEWS 2015-03-25 12:10:25 +08:00
Xinchen Hui 86bbacfd53 Merge branch 'PHP-5.5' into PHP-5.6 2015-03-25 12:09:35 +08:00
Xinchen Hui 0e1024f25a UPdate NEWS 2015-03-25 12:09:21 +08:00
Xinchen Hui 76c1ec5e96 Bug #69293 NEW segfault when using SoapClient::__setSoapHeader (bisected, regression)
This was a typo introduced in c8eaca013a
2015-03-25 12:07:25 +08:00
Dmitry Stogov 550b07ae1b cleanup 2015-03-25 01:57:05 +03:00
Anatol Belski 18e0393b71 robuster read/write for mod ps_files 2015-03-24 22:02:34 +01:00
Anatol Belski 512429ffc5 fix datatype mismatches 2015-03-24 22:02:33 +01:00
Anatol Belski 1a00554aaf fix datatype mismatches 2015-03-24 22:02:31 +01:00
Anatol Belski 3066851dab fix datatype mismatches 2015-03-24 22:02:29 +01:00
Anatol Belski 62b51668e2 ensure the test uses correct SAPI 2015-03-24 22:02:28 +01:00
Anatol Belski e1f706e3f4 fix typo 2015-03-24 22:02:26 +01:00
Anatol Belski 2192e96ef5 replace this version as it's unchanged since 5.4 at least 2015-03-24 22:02:25 +01:00
Dmitry Stogov 0ce7b4c8c6 Removed unused functions 2015-03-24 23:40:20 +03:00
Dmitry Stogov e37e9d2986 Reverted part committed by mistake 2015-03-24 22:56:07 +03:00
Dmitry Stogov 23c33b1483 Optimized strings concatenation.
ZEND_ADD_STRING/VAR/CHAR are replaced with ZEND_ROPE_INTI, ZEND_ROPE_ADD, ZEND_ROPE_END.
Instead of reallocation and copying string on each ZEND_ADD_STRING/VAR/CAHR, collect all the strings and then allocate and construct the resulting string once.
2015-03-24 22:47:21 +03:00
Dmitry Stogov bdf7fc67d8 We can't stay zend_string->h to be zero, because it may lead to hash value recalculation and update.
But in general zend_string may be put and read-only memory, that would lead to crash.
Always set the high bit of hash_value to prevent recaclulation.
2015-03-24 16:28:26 +03:00
Nikita Popov d659ee24ab Fix VERIFY_RETURN separation
a) The SAME_FAKE_TYPE check should always occur on the dereferenced
value, otherwise we'll end up separating large referenced arrays.
b) For by-val return with an rc=1 reference, the SEPARATE_ZVAL
wouldn't do anything. Add a ZVAL_UNREF for this case.

I don't like this fix - there must be some better way to express
this.
2015-03-24 10:51:28 +01:00
Dmitry Stogov 4be8d798b6 Add some assumptions. 2015-03-24 12:22:11 +03:00
Dmitry Stogov e1ab2cfe1c Introduce ZEND_ASSUME() macro to help optimizing code.
Reuse ZEND_ASSERT() conditions for optimization.
2015-03-24 12:21:06 +03:00
Anatol Belski fc28ae2786 fix test 2015-03-23 22:21:30 +01:00
Anatol Belski 663074b6b1 cleanup mod version macros and mod defs, round x 2015-03-23 21:30:22 +01:00
Anatol Belski 19360f386e cleanup mod version macros, round 3 2015-03-23 20:54:55 +01:00
Anatol Belski 2d78023244 cleanup the mod version macros, round 2 2015-03-23 20:33:54 +01:00
Anatol Belski ec89c85054 cleaning up the version macros 2015-03-23 20:13:59 +01:00
Anatol Belski 88b2a2d405 export useful symbols from ext/simplexml 2015-03-23 18:33:37 +01:00
Anatol Belski 4dc69709e2 some more UPGRADING INTERNALS notes 2015-03-23 15:50:13 +01:00
Anatol Belski 429c8715b2 some UPGRADING.INTERNALS notes 2015-03-23 15:27:26 +01:00
Anatol Belski 0313394fe4 revert yet unready stuff 2015-03-23 15:09:10 +01:00
Anatol Belski 567565b24f more fixes to the shared compilation 2015-03-23 15:09:09 +01:00
Anatol Belski c0adad5557 fix exports and shared compilation 2015-03-23 15:09:07 +01:00
Anatol Belski ffabfc703d fix exports 2015-03-23 15:09:06 +01:00
Anatol Belski 5539cb5972 indicate if an ext was forced shared globally 2015-03-23 15:09:04 +01:00
Anatol Belski 7a13715459 fix shared compilation 2015-03-23 15:09:03 +01:00
Anatol Belski f195870a9e implemented --with-all-shared option 2015-03-23 15:09:01 +01:00
Dmitry Stogov bdc96afbdd Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Also add preg_replace_callback_array in NEWS
  update NEWS with group use declarations implementation
2015-03-23 12:01:19 +03:00
Dmitry Stogov f596c953e4 Fixed PHP_CHECK_BUILTIN_EXPECT setting 2015-03-23 12:00:37 +03:00
Xinchen Hui eaf394e9e3 Also add preg_replace_callback_array in NEWS 2015-03-23 16:51:06 +08:00
Xinchen Hui d96ff5105e Merge branch 'master' of https://github.com/marcioAlmada/php-src 2015-03-23 16:49:46 +08:00
Anatol Belski 44fd3902c0 added UPGRADING notes to ext/ftp changes 2015-03-23 08:42:06 +01:00
Anatol Belski 585a5748e8 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libs versions
  updated libs versions
2015-03-23 08:39:33 +01:00
Anatol Belski c2ec4f90d2 updated libs versions 2015-03-23 08:38:58 +01:00
Anatol Belski 8fe9715d05 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated libs versions
2015-03-23 08:38:25 +01:00
Márcio Almada c9f29f143e update NEWS with group use declarations implementation 2015-03-23 04:36:29 -03:00
Anatol Belski a52385fc02 updated libs versions 2015-03-23 08:35:36 +01:00
Stanislav Malyshev 28fdf6a131 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed #68021 - get_browser() browser_name_regex
2015-03-22 22:13:21 -07:00
Stanislav Malyshev 3342a248a2 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed #68021 - get_browser() browser_name_regex
2015-03-22 22:13:08 -07:00
Tjerk Meesters 5b5742c016 Fixed #68021 - get_browser() browser_name_regex
Replaced expression delimiter with tilde (~) and escape where necessary.
2015-03-22 22:12:26 -07:00
Stanislav Malyshev ec8dd442f5 Merge branch 'pull-request/1191'
* pull-request/1191:
  Print checking message for all ODBC drivers
  Change default option of ODBC drivers to no to enable bulding standalone ODBC
2015-03-22 22:05:23 -07:00
Stanislav Malyshev 32bd6568d3 Merge branch 'PHP-5.6'
* PHP-5.6:
  Print checking message for all ODBC drivers
  Change default option of ODBC drivers to no to enable bulding standalone ODBC
2015-03-22 22:05:12 -07:00
Stanislav Malyshev a1bca171d2 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Print checking message for all ODBC drivers
  Change default option of ODBC drivers to no to enable bulding standalone ODBC

Conflicts:
	ext/odbc/config.m4
2015-03-22 22:04:41 -07:00
Lior Kaplan 6f5ed34d20 Print checking message for all ODBC drivers
This makes the output more readble in case no ODBC driver was selected
2015-03-22 22:03:38 -07:00
Lior Kaplan 7a41574239 Change default option of ODBC drivers to no to enable bulding standalone ODBC 2015-03-22 22:03:29 -07:00
Stanislav Malyshev 081a812b49 Merge branch 'PHP-5.6'
* PHP-5.6:
  oops, forgot TSRMLS_CC

Conflicts:
	ext/date/php_date.c
2015-03-22 21:56:40 -07:00
Stanislav Malyshev 57f835e148 oops, forgot TSRMLS_CC 2015-03-22 21:55:34 -07:00
Stanislav Malyshev 6929089db0 fix warning & improve error handling in CURL 2015-03-22 21:51:58 -07:00
Stanislav Malyshev 62859309b0 silence warning 2015-03-22 21:43:05 -07:00
Stanislav Malyshev 012e525044 Merge branch 'pull-request/1188'
* pull-request/1188:
  Reduce downstream patches
2015-03-22 21:34:13 -07:00
Stanislav Malyshev 736afd48cf Merge branch 'PHP-5.6'
* PHP-5.6:
  Reduce downstream patches
2015-03-22 21:33:52 -07:00
lesniewskister c12e031530 Reduce downstream patches
As per http://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/lang/php/5.6/patches/patch-ext_gd_libgd_gdcache_h?rev=1.1&content-type=text/x-cvsweb-markup
2015-03-22 21:33:45 -07:00
Stanislav Malyshev 941989fa31 Merge branch 'pull-request/1186'
* pull-request/1186:
  Move check for __builtin_expect to configure
2015-03-22 21:11:43 -07:00
Stanislav Malyshev dc6d8f7838 Merge branch 'PHP-5.6'
* PHP-5.6:
  Adding a new `createFromImmutable` method to the `DateTime` class to mirror the current `DateTime::createFromMutable()`

Conflicts:
	ext/date/php_date.c
2015-03-22 21:09:00 -07:00
Stanislav Malyshev cc2fd00942 Merge branch 'pull-request/1145'
* pull-request/1145:
  Putting whitespace back to the way it was.
  Updating the `DateTime_verify` test to include the new method in the reflected method list
  Whoops! String length....
  Adding a new test for the new method
  Adding a new `createFromImmutable` method to the `DateTime` class to mirror the current `DateTime::createFromMutable()`
2015-03-22 21:04:41 -07:00
Stanislav Malyshev aa22e80b1a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Adding a new `createFromImmutable` method to the `DateTime` class to mirror the current `DateTime::createFromMutable()`
2015-03-22 21:03:46 -07:00
Trevor Suarez c2e22556ba Adding a new createFromImmutable method to the DateTime class to mirror the current DateTime::createFromMutable() 2015-03-22 20:54:25 -07:00
Stanislav Malyshev 3b9fcc4d0d Merge branch 'PHP-5.6'
* PHP-5.6:
  Renamed test case to match with reported bug
  Fixed serialization of non string values on __sleep

Conflicts:
	ext/standard/var.c
2015-03-22 20:35:35 -07:00
Juan Basso 3e7f47cb03 Renamed test case to match with reported bug 2015-03-22 20:34:59 -07:00
Juan Basso 4076a4d2a9 Fixed serialization of non string values on __sleep
Returning just N; (null) on the __sleep makes the number of fields/values be incomplete and corrupting the generated value from serialize, making impossible to unserialize it.

Conflicts:
	ext/standard/var.c
2015-03-22 20:31:40 -07:00
Stanislav Malyshev b62eec67df Merge branch 'pull-request/1057'
* pull-request/1057:
  Renamed test case to match with reported bug
  Fixed serialization of non string values on __sleep
2015-03-22 20:27:35 -07:00
Stanislav Malyshev ad51c459f7 Merge branch 'pull-request/1192'
* pull-request/1192:
  add CURL_HTTP_VERSION_2_0 and CURL_VERSION_HTTP2
2015-03-22 18:56:12 -07:00
Stanislav Malyshev be2e0b39ba Merge branch 'PHP-5.6'
* PHP-5.6:
  add CURL_HTTP_VERSION_2_0 and CURL_VERSION_HTTP2
2015-03-22 18:55:04 -07:00
Stanislav Malyshev c6384a7908 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  add CURL_HTTP_VERSION_2_0 and CURL_VERSION_HTTP2
2015-03-22 18:54:48 -07:00
Masaki Kagaya 1badfd8171 add CURL_HTTP_VERSION_2_0 and CURL_VERSION_HTTP2 2015-03-22 18:52:42 -07:00
Stanislav Malyshev cd5802e1b3 Merge branch 'PHP-5.6'
* PHP-5.6:
  Bacport fix bug #68741 - Null pointer dereference
  Check that the type is correct

Conflicts:
	ext/standard/incomplete_class.c
2015-03-22 18:33:39 -07:00
Stanislav Malyshev fce9a856e7 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Bacport fix bug #68741 - Null pointer dereference
  Check that the type is correct
2015-03-22 18:32:16 -07:00
Stanislav Malyshev 723ffe2e89 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Bacport fix bug #68741 - Null pointer dereference
  Check that the type is correct
2015-03-22 18:30:56 -07:00
Stanislav Malyshev 968fbc6acf Bacport fix bug #68741 - Null pointer dereference 2015-03-22 18:30:05 -07:00
Stanislav Malyshev fb83c76dee Check that the type is correct 2015-03-22 18:17:47 -07:00
Stanislav Malyshev 5a5b63774b Merge branch 'pull-request/1091'
* pull-request/1091:
  Stop trying to call the callback after it has thrown an exception. Also, as an exception has been thrown, there is no need to have a separate error message.
  Fix freeing null segfault. Added test for behaviour.

Conflicts:
	ext/sqlite3/tests/bug68760.phpt
2015-03-22 16:48:54 -07:00
Stanislav Malyshev 574b9a4e60 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix #68760: Fix freeing null segfault. Added test for behaviour.
  Fix #68760: Fix freeing null segfault. Added test for behaviour.

Conflicts:
	ext/sqlite3/sqlite3.c
2015-03-22 16:47:54 -07:00
Stanislav Malyshev 40037f1474 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix #68760: Fix freeing null segfault. Added test for behaviour.

Conflicts:
	ext/sqlite3/tests/bug68760.phpt
2015-03-22 16:46:30 -07:00
Danack 0c27a8eb61 Fix #68760: Fix freeing null segfault. Added test for behaviour. 2015-03-22 16:46:02 -07:00
Danack 1ec430d4ed Fix #68760: Fix freeing null segfault. Added test for behaviour. 2015-03-22 16:44:06 -07:00
Masaki Kagaya c5f7a57eaf add CURL_HTTP_VERSION_2_0 and CURL_VERSION_HTTP2 2015-03-23 08:10:06 +09:00
Anatol Belski 65bd595789 Merge branch 'PHP-5.6'
* PHP-5.6:
  cosmetic fix to default odbcver
  Remove extraneous strlen() call
  Remove extraneous strlen() call
2015-03-23 00:08:11 +01:00
Anatol Belski 63d7cd7d5b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  cosmetic fix to default odbcver
  Remove extraneous strlen() call
2015-03-23 00:07:43 +01:00
Anatol Belski a759c40872 cosmetic fix to default odbcver 2015-03-23 00:07:09 +01:00
Anatol Belski 6b01927126 cosmetic fix to default odbcver 2015-03-23 00:06:00 +01:00
Stanislav Malyshev c8aec7665c Merge branch 'pull-request/1182'
* pull-request/1182:
  Treat NetBSD the same as FreeBSD wrt. TCP_INFO usage.
2015-03-22 15:29:38 -07:00
Lior Kaplan db25479d45 Print checking message for all ODBC drivers
This makes the output more readble in case no ODBC driver was selected
2015-03-23 00:29:05 +02:00
Lior Kaplan 7110bf3c2d Change default option of ODBC drivers to no to enable bulding standalone ODBC 2015-03-23 00:28:51 +02:00
Nikita Popov a34f81deee Allow adding return type during inheritance
This is allowed as per the return types RFC. The test for this
behavior happened to use an internal class without arginfo, which
is why this was not properly implemented.
2015-03-22 18:56:14 +01:00
Levi Morrison 017f89e871 Move check for __builtin_expect to configure
This allows __builtin_expect to be used more accurately
2015-03-22 10:31:14 -06:00
Nikita Popov a50e9d87f2 Partially revert "Fix uninitialized value condition"
This reverts commit e874f76096,
which broke zpp quite mode.

Only the initialization of the "severity" variable is retained.
2015-03-22 09:25:32 +01:00
Nikita Popov ccfd53886f Revert "Use E_ERROR | E_EXCEPTION in FAST_ZPP mode too"
This reverts commit d4da7c20d2.

The argument passed to this function refers to the weak mode
severity, strict mode will get an exception in any case.
2015-03-22 09:17:42 +01:00
Bob Weinand d4da7c20d2 Use E_ERROR | E_EXCEPTION in FAST_ZPP mode too 2015-03-22 00:17:33 +01:00
Bob Weinand e874f76096 Fix uninitialized value condition 2015-03-22 00:14:47 +01:00
Bob Weinand 278adf99de Fix parent command offsets 2015-03-21 23:19:12 +01:00
Bob Weinand ea643307db Put info to info and made print always output opcodes 2015-03-21 23:16:53 +01:00
Bob Weinand 2ed0085833 Add phpdbg -h for help 2015-03-21 23:16:53 +01:00
Bob Weinand 97887e3716 Stabilize (simple) watchpoints with IS_INDIRECT/IS_REFERENCE situations 2015-03-21 23:16:53 +01:00
Rasmus Lerdorf d33636f764 Remove extraneous strlen() call 2015-03-21 08:29:12 -07:00
Rasmus Lerdorf 7fce3607ea Remove extraneous strlen() call 2015-03-21 08:28:40 -07:00
Rasmus Lerdorf f01071f55f Remove extraneous strlen() call 2015-03-21 08:26:06 -07:00
Derick Rethans a86a871bd0 - Updated to version 2015.2 (2015b) 2015-03-21 14:51:14 +01:00
Derick Rethans 6b6297238d Empty merge 2015-03-21 14:51:14 +01:00
Derick Rethans a73d0b0fb3 - Updated to version 2015.2 (2015b) 2015-03-21 14:51:11 +01:00
Derick Rethans d025f8e019 Empty merge 2015-03-21 14:51:10 +01:00
Derick Rethans b98a486606 - Updated to version 2015.2 (2015b) 2015-03-21 14:51:09 +01:00
Xinchen Hui 784c60ab6d Improve test scripts 2015-03-21 21:11:14 +08:00
Xinchen Hui a4529cc0e5 Fixed memleak 2015-03-21 20:17:04 +08:00
Xinchen Hui 8aa76a5bdd Fixed test 2015-03-21 17:50:50 +08:00
Xinchen Hui 4180226117 More error conditions 2015-03-21 16:54:45 +08:00
Xinchen Hui cda8e60638 Added note about preg_replace_callback_array in UPGRADING 2015-03-21 15:59:12 +08:00
Xinchen Hui 5f845cdc48 Merge branch 'master' of https://git.php.net/repository/php-src 2015-03-21 15:56:52 +08:00
Xinchen Hui 2f6dbfc26b Improved impelmentation(and cleanup behaviro with errors conditions) 2015-03-21 15:56:42 +08:00
Rasmus Lerdorf 4d10e15845 Fix a couple of warnings 2015-03-20 23:32:07 -07:00
Xinchen Hui c524dd6d1e Merge branch 'rfc-preg-replace-callback-array' of https://github.com/zxcvdavid/php-src
Conflicts:
	Zend/zend_vm_gen.php
	ext/pcre/php_pcre.c
2015-03-21 14:01:11 +08:00
Xinchen Hui 775a257cef Only used in ZTS 2015-03-21 13:58:29 +08:00
lesniewskister dea7e4d467 Reduce downstream patches
As per http://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/lang/php/5.6/patches/patch-ext_gd_libgd_gdcache_h?rev=1.1&content-type=text/x-cvsweb-markup
2015-03-20 20:39:49 -02:30
Anthony Ferrara 595e46fdeb Add news file for merge of scalar typehints RFC 2015-03-20 18:04:35 -04:00
Dmitry Stogov 430266edfa Merge branch 'scalar_type_hints_v5'
* scalar_type_hints_v5: (65 commits)
  Fixed in-place modification of IS_CONST operand
  Changed SKIPIF messages
  ZPP changed to lazely check for "strict/weak" only if it's really necessary. Cleanup.
  cleanup
  Fixed return type hint handling for constants
  Fixed tests
  Imroved ZPP rules (condititins reoredered to prevent duplicate checks)
  Fixed comments
  Fixed error messages
  Improved type hinting:
  Fixed white spaces
  Add check for maintaining reference all the way through both type and return values
  Reduce the number of times that the zval needs to be separated in return type checking to those that are necessary
  Add test to ensure namespaced code can't use scalar types as class names
  Disallow relative namespace type declarations
  Add support and tests for null constant default values. Refactor complex conditionals into an extracted function for clarity and code-reuse
  Refactor as to not use call info, but add the flag to the op_array.
  Fix severity issues with callbacks, start work porting ZEND_STRLEN opcode to work with strict mode, more refactoring to come
  Fix C89 compatibility by moving a misplaced if statement
  Refactor gotos into more elaborate ifs to eliminate goto failure
  ...
2015-03-21 01:00:00 +03:00
Dmitry Stogov 1f408af03c Fixed in-place modification of IS_CONST operand 2015-03-21 00:22:25 +03:00
Dmitry Stogov 3a886a0c90 Changed SKIPIF messages 2015-03-20 23:19:51 +03:00
Dmitry Stogov 35f9b90bb8 ZPP changed to lazely check for "strict/weak" only if it's really necessary.
Cleanup.
2015-03-20 23:18:52 +03:00
Dmitry Stogov 4e5767b5d7 cleanup 2015-03-20 20:43:23 +03:00
Anatol Belski a43a9c9137 use correct api 2015-03-20 17:11:36 +01:00
Dmitry Stogov 1cfa4db338 Fixed return type hint handling for constants 2015-03-20 18:36:43 +03:00
Dmitry Stogov 139c6c644c Fixed tests 2015-03-20 17:56:32 +03:00
Dmitry Stogov 054591ab9a Imroved ZPP rules (condititins reoredered to prevent duplicate checks) 2015-03-20 17:27:03 +03:00
Dmitry Stogov 66f16c6cfb Fixed comments 2015-03-20 17:26:38 +03:00
Dmitry Stogov 7cf05ce8da Fixed error messages 2015-03-20 17:26:12 +03:00
Ferenc Kovacs b88f1d5b9b Merge branch 'PHP-5.6'
* PHP-5.6:
  this already had an entry
2015-03-20 14:41:22 +01:00
Ferenc Kovacs b5d7bcf0db this already had an entry 2015-03-20 14:40:58 +01:00
Dmitry Stogov 5935612666 Improved type hinting:
EX_PREV_USES_STRICT_TYPES() and family changed/renamed to fit with other macros
Optimized zend_verify_internal_arg_type() and family (they don't need "strict" argument anymore)
Standerd ZPP is called from VM only for weak type check or strict exception (int -> double)
Fixed ZEND_RECV_VARIADIC
Fixed ZEND_STRLEN

TODO: should we accept IS_NULL for non-nullable arguments?
2015-03-20 16:04:04 +03:00
Ferenc Kovacs 4b9299d155 reverting pear/install-pear-nozlib.phar as this mass php 5 -> php 7 string replace broke the file signature(phar files are binary) 2015-03-20 13:35:07 +01:00
Ferenc Kovacs 8f244220b5 Merge branch 'PHP-5.6'
* PHP-5.6:
  add pear to the travis build
2015-03-20 13:34:55 +01:00
Ferenc Kovacs 95c3a4798f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  add pear to the travis build
2015-03-20 13:34:35 +01:00
Ferenc Kovacs 9ff99059b1 add pear to the travis build 2015-03-20 13:34:16 +01:00
Julien Pauli 028c9187ee Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS
2015-03-20 10:53:44 +01:00
Julien Pauli d55b42bd61 Updated NEWS 2015-03-20 10:53:33 +01:00
Julien Pauli 5516099ddc Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS
2015-03-20 10:53:13 +01:00
Julien Pauli b70ba86781 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Updated NEWS
2015-03-20 10:45:54 +01:00
Julien Pauli ceb4cb6976 Updated NEWS 2015-03-20 10:45:36 +01:00
Dmitry Stogov 44669e8f41 Fixed white spaces 2015-03-20 11:10:29 +03:00
Dmitry Stogov aee2985f35 Merge branch 'scalar_type_hints_v5' of github.com:ircmaxell/php-src into scalar_type_hints_v5
* 'scalar_type_hints_v5' of github.com:ircmaxell/php-src: (54 commits)
  Add check for maintaining reference all the way through both type and return values
  Reduce the number of times that the zval needs to be separated in return type checking to those that are necessary
  Add test to ensure namespaced code can't use scalar types as class names
  Disallow relative namespace type declarations
  Add support and tests for null constant default values. Refactor complex conditionals into an extracted function for clarity and code-reuse
  Refactor as to not use call info, but add the flag to the op_array.
  Fix severity issues with callbacks, start work porting ZEND_STRLEN opcode to work with strict mode, more refactoring to come
  Fix C89 compatibility by moving a misplaced if statement
  Refactor gotos into more elaborate ifs to eliminate goto failure
  Fix return type separation with references. It now includes a check in the opcode handler and properly separates the value in both cases
  Add error case with invalid type declaration default value
  Add tests for using constants as defaults with scalar type declarations
  Refactor error messages to only append defined in the event of rendering as a fatal error. Fix relative typehints to not work
  Revert gd and mysqli to former calls for arg count errors. Fix first identified issues with zend_compile.c from nikic. Add tests for generator returns prior to first yield
  Style cleanup, as well as fixing bug with missing argument for WRONG_PARAM_COUNT_WITH_RETVAL
  Clean up API renames for zend_wrong_param_count to maintain BC, introducing a zend_wrong_param_count_ex() function when you know strict value
  Fix executor issue with ignoring strict types, which cleans up a bunch of errors. Additionally fix the expected error of 2 unrelated tests that was caused by a change to the core error messages
  Fix more tests, improve error messages in failure output for thrown exception
  Refactor error implementation significantly to centralize error mode behavior. Add zend_internal_type_error() function
  Refactor declare placement detection, allow encoding declares before type declares
  ...
2015-03-20 10:51:41 +03:00
Stanislav Malyshev 288424fa4a Merge branch 'PHP-5.6'
* PHP-5.6:
  add CVEs
2015-03-19 23:06:19 -07:00
Stanislav Malyshev eebd7c66ee Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  add CVEs
2015-03-19 23:05:49 -07:00
Stanislav Malyshev 72c19d8260 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add CVEs
2015-03-19 23:05:34 -07:00
Stanislav Malyshev 95b9c34f02 add CVEs 2015-03-19 22:54:48 -07:00
Dmitry Stogov 0a6bb2dfd4 Fixed optimization patterns 2015-03-20 05:24:04 +03:00
Dmitry Stogov d146d15003 Optimize zend_string_realloc() add more specialized versions zend_string_extend() and zend_string_truncate() 2015-03-20 02:02:42 +03:00
Anthony Ferrara 8c76c331a5 Add check for maintaining reference all the way through both type and return values 2015-03-19 17:51:19 -04:00
Anthony Ferrara 2e4401512f Reduce the number of times that the zval needs to be separated in return type checking to those that are necessary 2015-03-19 17:47:43 -04:00
Anatol Belski 184793b5c1 fix condition 2015-03-19 22:33:16 +01:00
Anatol Belski 9bcd64fd83 fix condition 2015-03-19 22:33:15 +01:00
Anatol Belski 49fdb8a91d fix include 2015-03-19 22:33:14 +01:00
Anatol Belski d3ab945d9c using zend_stat_t 2015-03-19 22:33:13 +01:00
Anatol Belski 743541b311 fix datatype mismatch warnings 2015-03-19 22:33:12 +01:00
Dmitry Stogov 452a5d8e6b String reference counters may be increased when string copied 2015-03-19 23:42:39 +03:00
Anthony Ferrara c11cab3255 Add test to ensure namespaced code can't use scalar types as class names 2015-03-19 14:11:48 -04:00
Anthony Ferrara aaf0c8b594 Disallow relative namespace type declarations 2015-03-19 14:07:03 -04:00
Anthony Ferrara 62fc556764 Add support and tests for null constant default values. Refactor complex conditionals into an extracted function for clarity and code-reuse 2015-03-19 13:51:24 -04:00
Anthony Ferrara 7044f9c6df Refactor as to not use call info, but add the flag to the op_array. 2015-03-19 13:30:11 -04:00
Anthony Ferrara 0ef80ac351 Fix severity issues with callbacks, start work porting ZEND_STRLEN opcode to work with strict mode, more refactoring to come 2015-03-19 12:26:34 -04:00
Lior Kaplan ed9d3f9a50 Merge branch 'PHP-5.6'
* PHP-5.6:
  Add CVE ID for #68735
  Add CVE ID for #68735
2015-03-19 18:25:57 +02:00
Lior Kaplan a0927357a3 Add CVE ID for #68735 2015-03-19 18:25:01 +02:00
Lior Kaplan b20b0ffe4e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Add CVE ID for #68735
2015-03-19 18:24:28 +02:00
Lior Kaplan 8f18444cd9 Add CVE ID for #68735 2015-03-19 18:23:34 +02:00
Xinchen Hui ecd6de157d Merge branch 'master' of https://git.php.net/repository/php-src 2015-03-19 17:03:44 +08:00
Dmitry Stogov ca783218e7 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #69152

Conflicts:
	ext/soap/soap.c
2015-03-19 11:54:56 +03:00
Xinchen Hui 61e31b6e29 Fixed global register checking 2015-03-19 16:54:13 +08:00
Dmitry Stogov 0c3de98368 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #69152
2015-03-19 11:48:10 +03:00
Dmitry Stogov 9bdbc7490f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #69152
2015-03-19 11:42:49 +03:00
Havard Eidnes 36e251ade3 Treat NetBSD the same as FreeBSD wrt. TCP_INFO usage. 2015-03-19 09:39:54 +01:00
Dmitry Stogov 51856a76f8 Fixed bug #69152 2015-03-19 11:36:01 +03:00
Lior Kaplan 9c5ded46d7 Merge branch 'PHP-5.6'
* PHP-5.6:
  Add CVE to bug #69253
  Align entries format
  Add CVE assigned to 5.6.6 bugs after the release
  Add CVE to bug #69248
  Align entries format
  Add CVE to bug #69248
  Add CVE assigned to 5.5.22 bugs after the release
2015-03-19 02:47:22 +02:00
Lior Kaplan 56cda02e11 Add CVE to bug #69253 2015-03-19 02:44:45 +02:00
Lior Kaplan 9bbf9fedff Align entries format 2015-03-19 02:42:35 +02:00
Lior Kaplan c824de432d Add CVE assigned to 5.6.6 bugs after the release 2015-03-19 02:40:22 +02:00
Lior Kaplan df340b5d8e Add CVE to bug #69248 2015-03-19 02:37:50 +02:00
Lior Kaplan 61d11d7e10 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Align entries format
  Add CVE to bug #69248
  Add CVE assigned to 5.5.22 bugs after the release
2015-03-19 02:36:28 +02:00
Lior Kaplan 6a4399a8d9 Align entries format 2015-03-19 02:35:20 +02:00
Lior Kaplan 3eba942eb2 Add CVE to bug #69248 2015-03-19 02:30:31 +02:00
Lior Kaplan 4680f08607 Add CVE assigned to 5.5.22 bugs after the release 2015-03-19 02:29:43 +02:00
Anthony Ferrara 78d2399493 Fix C89 compatibility by moving a misplaced if statement 2015-03-18 18:38:16 -04:00
Anthony Ferrara d8ef608f3d Refactor gotos into more elaborate ifs to eliminate goto failure 2015-03-18 18:24:00 -04:00
Anthony Ferrara 427ecdc5eb Fix return type separation with references. It now includes a check in the opcode handler and properly separates the value in both cases 2015-03-18 18:10:08 -04:00
Bob Weinand dac2b060e4 Remove bogus ZEND_ASSERT(hash != 0)
There's always a possibility that the has will end up as equal to zero due to overflowing.
See the tests for strings whose hash overflow.
Yes, there's a check for whether the hash already was calculated... and strings with a hash equal to zero always need the hash recalculated, in one of 2^32 respectively 2^64 cases - which should not be a major issue.
2015-03-18 22:25:55 +01:00
Anthony Ferrara f040538448 Add error case with invalid type declaration default value 2015-03-18 16:53:45 -04:00
Anthony Ferrara 94fe6c42fa Add tests for using constants as defaults with scalar type declarations 2015-03-18 16:50:51 -04:00
Anthony Ferrara 724f7118f1 Refactor error messages to only append defined in the event of rendering as a fatal error. Fix relative typehints to not work 2015-03-18 16:38:51 -04:00
Anthony Ferrara 1df033c5cd Revert gd and mysqli to former calls for arg count errors. Fix first identified issues with zend_compile.c from nikic. Add tests for generator returns prior to first yield 2015-03-18 16:14:02 -04:00
Anatol Belski eb5dfedb6b don't expect set/get title symbols are always there 2015-03-18 20:50:54 +01:00
Anthony Ferrara 579e7fa457 Style cleanup, as well as fixing bug with missing argument for WRONG_PARAM_COUNT_WITH_RETVAL 2015-03-18 15:45:16 -04:00
Anthony Ferrara 8be4266f6a Clean up API renames for zend_wrong_param_count to maintain BC, introducing a zend_wrong_param_count_ex() function when you know strict value 2015-03-18 15:42:49 -04:00
Anthony Ferrara 0529eeb4a6 Fix executor issue with ignoring strict types, which cleans up a bunch of errors. Additionally fix the expected error of 2 unrelated tests that was caused by a change to the core error messages 2015-03-18 15:22:21 -04:00
Anthony Ferrara dd9f4f9585 Fix more tests, improve error messages in failure output for thrown exception 2015-03-18 12:42:09 -04:00
Anthony Ferrara 7feebead1b Refactor error implementation significantly to centralize error mode behavior. Add zend_internal_type_error() function 2015-03-18 12:23:09 -04:00
Anthony Ferrara d22bfb8aa6 Merge in master, fix merge conflicts and update patch to support exceptions everywhere 2015-03-18 10:50:11 -04:00
Dmitry Stogov d092cb6e8e Second prefetch is useless, because cahce line on modern x86 CPUs is 64 bytes long. 2015-03-18 17:11:21 +03:00
Xinchen Hui 5c6db3b0f2 Better make this be consistent with DO_ICALL/DO_CALL
Revert "Use more specific op type"
This reverts commit 9b07ed6dcc.
2015-03-18 22:09:57 +08:00
Anatol Belski e839ed8c99 strtod shouldn't recognize hex strings 2015-03-18 14:26:15 +01:00
Dmitry Stogov a01b5f2953 Enabled global register variables for PPC 2015-03-18 16:15:00 +03:00
Xinchen Hui 9b07ed6dcc Use more specific op type 2015-03-18 20:56:28 +08:00
Dmitry Stogov 4e11095438 Reimplemented special constant handling. Now __HALT_COMPILER_OFFSET__ is resolved at compile-time. __CLASS__ retrived using separate ZEND_FETCH_CLASS_NAME opcode. 2015-03-18 15:33:56 +03:00
Dmitry Stogov 65b7f4860e Revert "Improved zend_get_special_constant"
This reverts commit 624eb49e78.
2015-03-18 15:25:27 +03:00
Julien Pauli a3b5061cb8 Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS
2015-03-18 11:35:04 +01:00
Julien Pauli c7dfd8a3a4 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Updated NEWS
2015-03-18 11:34:56 +01:00
Julien Pauli 9744aded1a Updated NEWS 2015-03-18 11:34:45 +01:00
Julien Pauli 4794f6bcc4 Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS
2015-03-18 10:56:03 +01:00
Julien Pauli 6262db7341 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Updated NEWS
2015-03-18 10:55:49 +01:00
Julien Pauli 5e4dd962e2 Updated NEWS 2015-03-18 10:55:32 +01:00
Stanislav Malyshev ff1914f491 Merge branch 'PHP-5.6'
* PHP-5.6:
  5.4.40 next
2015-03-17 22:39:28 -07:00
Stanislav Malyshev 58efcc7dd8 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  5.4.40 next
2015-03-17 22:39:21 -07:00
Stanislav Malyshev de0cee2f39 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  5.4.40 next

Conflicts:
	configure.in
	main/php_version.h
2015-03-17 22:39:10 -07:00
Stanislav Malyshev 4c3b73b6df 5.4.40 next 2015-03-17 22:37:16 -07:00
Stanislav Malyshev 1ecd82f588 Merge branch 'PHP-5.6'
* PHP-5.6:
  update NEWS
  Fix bug #69253 - ZIP Integer Overflow leads to writing past heap boundary
  oops, no idea how this got in
  Fix bug #69248 - heap overflow vulnerability in regcomp.c
  add test for bug #68976
  add NEWS
  Fixed bug #68976 - Use After Free Vulnerability in unserialize()
  update news
  Fixed bug #69134 (Per Directory Values overrides PHP_INI_SYSTEM configuration options)
  fix tests
  Fix bug #69207 - move_uploaded_file allows nulls in path

Conflicts:
	ext/ereg/regex/regcomp.c
	ext/standard/basic_functions.c
	ext/standard/var_unserializer.c
	ext/standard/var_unserializer.re
	win32/registry.c
2015-03-17 22:04:39 -07:00
Stanislav Malyshev 225cb973e5 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update NEWS
  Fix bug #69253 - ZIP Integer Overflow leads to writing past heap boundary

Conflicts:
	ext/zip/lib/zip_dirent.c
2015-03-17 22:03:24 -07:00
Stanislav Malyshev 210cfafc2b update NEWS 2015-03-17 22:00:53 -07:00
Stanislav Malyshev 53eff4a369 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #69253 - ZIP Integer Overflow leads to writing past heap boundary
2015-03-17 22:00:29 -07:00
Stanislav Malyshev ef8fc4b53d Fix bug #69253 - ZIP Integer Overflow leads to writing past heap boundary 2015-03-17 21:59:56 -07:00
Xinchen Hui 205fe3ab89 Re-fix tests 2015-03-18 12:28:27 +08:00
Xinchen Hui 22b8b1d3f3 Revert "fix tests"
This reverts commit 38e15d89d7.
2015-03-18 12:27:13 +08:00
Xinchen Hui e78278d878 Revert "Fixed tests"
This reverts commit f57f1a903d.
2015-03-18 12:26:56 +08:00
Xinchen Hui 624eb49e78 Improved zend_get_special_constant 2015-03-18 12:22:07 +08:00
Xinchen Hui f57f1a903d Fixed tests 2015-03-18 12:19:56 +08:00
Stanislav Malyshev d76b293ac7 forgot to commit this one 2015-03-17 17:16:27 -07:00
Stanislav Malyshev 63c9f830b1 add test for bug #68976 2015-03-17 17:16:15 -07:00
Stanislav Malyshev 749f82af02 oops, no idea how this got in 2015-03-17 17:13:50 -07:00
Stanislav Malyshev 14588c2499 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
2015-03-17 17:10:14 -07:00
Stanislav Malyshev bf2f03ddb3 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #69248 - heap overflow vulnerability in regcomp.c
  add test for bug #68976
2015-03-17 17:10:05 -07:00
Stanislav Malyshev 890b3987ab Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #69248 - heap overflow vulnerability in regcomp.c
  add test for bug #68976
2015-03-17 17:09:47 -07:00
Stanislav Malyshev c83dd84ad6 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #69248 - heap overflow vulnerability in regcomp.c
  add test for bug #68976
2015-03-17 17:08:13 -07:00
Stanislav Malyshev fb04dcf6db Fix bug #69248 - heap overflow vulnerability in regcomp.c
Merged from https://github.com/garyhouston/regex/commit/70bc2965604b6b8aaf260049e64c708dddf85334
2015-03-17 17:04:57 -07:00
Stanislav Malyshev 8b14d3052f add test for bug #68976 2015-03-17 17:03:46 -07:00
Anatol Belski 8a8264a29a comb that header 2015-03-18 00:45:37 +01:00
Anatol Belski 956bab0566 fix endianness check plus better visual origin compat 2015-03-18 00:39:06 +01:00
Stanislav Malyshev 780222f97f Fixed bug #68976 - Use After Free Vulnerability in unserialize() 2015-03-17 16:31:52 -07:00
Stanislav Malyshev 38e15d89d7 fix tests 2015-03-17 16:30:57 -07:00
Stanislav Malyshev 6632684e03 Fix bug #69207 - move_uploaded_file allows nulls in path 2015-03-17 16:30:57 -07:00
Dmitry Stogov fa1c05540c Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  this check isn't applicable anymore
2015-03-18 02:17:12 +03:00
Dmitry Stogov d6bb5c2cd4 GCC prior 4.8.0 may generates wrong code 2015-03-18 02:15:49 +03:00
Anatol Belski b3788cd200 this check isn't applicable anymore 2015-03-18 00:14:20 +01:00
Nikita Popov e39db5773d Fix phpdbg 2015-03-17 22:59:11 +01:00
Dmitry Stogov 87cec4ccc9 Fixed mess in names 2015-03-18 00:13:39 +03:00
Anatol Belski 0ac1075002 catching up with the git history 2015-03-17 22:11:31 +01:00
Anatol Belski 9903767734 fix undefined symbol 2015-03-17 22:11:30 +01:00
Anatol Belski 4ae9ecbb90 updated NEWS 2015-03-17 22:11:29 +01:00
Anatol Belski 87767d9ea1 adedd test for bug #68797 2015-03-17 22:11:28 +01:00
Anatol Belski a160a9097a restore freeing stuff and some small improvements 2015-03-17 22:11:27 +01:00
Anatol Belski 5d4616e2b0 first shot on updating strtod stuff 2015-03-17 22:11:26 +01:00
Nikita Popov 5c230baf75 Implement Generator::getReturn()
Conflicts:
	Zend/zend_vm_execute.h
2015-03-17 21:51:53 +01:00
Nikita Popov f1a6c06f14 Support ParseException for require etc 2015-03-17 21:35:42 +01:00
Stanislav Malyshev dbd1d79b68 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  add NEWS
2015-03-17 13:24:45 -07:00
Stanislav Malyshev 6264f81a21 add NEWS 2015-03-17 13:24:17 -07:00
Stanislav Malyshev 33a5532b66 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #68976 - Use After Free Vulnerability in unserialize()

Conflicts:
	ext/standard/var_unserializer.c
2015-03-17 13:23:51 -07:00
Stanislav Malyshev d5e523f52f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #68976 - Use After Free Vulnerability in unserialize()

Conflicts:
	ext/standard/var_unserializer.c
2015-03-17 13:22:12 -07:00
Stanislav Malyshev 646572d6d3 Fixed bug #68976 - Use After Free Vulnerability in unserialize() 2015-03-17 13:20:22 -07:00
Dmitry Stogov 55da1fb008 Fixed zend_hash_del() 2015-03-17 23:13:39 +03:00
Stanislav Malyshev 3d00867bba Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update news
  Fixed bug #69134 (Per Directory Values overrides PHP_INI_SYSTEM configuration options)
2015-03-17 13:09:08 -07:00
Stanislav Malyshev 3dfccd7ba5 update news 2015-03-17 13:07:40 -07:00
Stanislav Malyshev 4a2e613730 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #69134 (Per Directory Values overrides PHP_INI_SYSTEM configuration options)
2015-03-17 13:06:17 -07:00
Stanislav Malyshev bfb669891e Fixed bug #69134 (Per Directory Values overrides PHP_INI_SYSTEM configuration options) 2015-03-17 13:05:43 -07:00
Stanislav Malyshev 3477568b4e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix tests
  Fix bug #69207 - move_uploaded_file allows nulls in path
2015-03-17 12:58:00 -07:00
Stanislav Malyshev 34418222d7 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix tests
2015-03-17 12:56:37 -07:00
Stanislav Malyshev 9ba4db5e5d fix tests 2015-03-17 12:55:35 -07:00
Stanislav Malyshev e55e40ca66 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #69207 - move_uploaded_file allows nulls in path
2015-03-17 12:48:37 -07:00
Stanislav Malyshev 1291d6bbee Fix bug #69207 - move_uploaded_file allows nulls in path 2015-03-17 12:47:58 -07:00
Dmitry Stogov 4d4a5336f1 Embed "fast" operator functions (add, sub, increment, etc) into executor with additional optimizations 2015-03-17 18:53:19 +03:00
Dmitry Stogov fb4b706984 Enable GCC global register variables if available 2015-03-17 13:51:02 +03:00
Julien Pauli 92bf4566ea Updated NEWS 2015-03-17 11:07:15 +01:00
julien.pons 90114a3e93 Add wifcontinued and wcontinued for pcntl 2015-03-17 10:59:58 +01:00
Anatol Belski 56b0ff0e5d Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  Fixed bug #65406 Enchant broker plugins are in the wrong place in windows
2015-03-17 09:22:11 +01:00
Anatol Belski f040b48358 updated NEWS 2015-03-17 09:21:38 +01:00
Anatol Belski a6a58dddc3 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #65406 Enchant broker plugins are in the wrong place in windows
2015-03-17 09:20:54 +01:00
Anatol Belski 0f18a15e89 Fixed bug #65406 Enchant broker plugins are in the wrong place in windows 2015-03-17 09:20:16 +01:00
Danack 910a324306 Fixed indentation. Fixed comment style. Fixed commented out code. 2015-03-16 23:14:56 +00:00
Anatol Belski b9bc84e29e use default test timeout 2015-03-16 23:07:33 +01:00
Anatol Belski fd51bd4a9e test fixes + added skipif for slow tests 2015-03-16 13:55:40 -07:00
Anatol Belski 042dd8602e use busy sleep instead of sleep() for timeout tests 2015-03-16 13:21:33 -07:00
Anatol Belski 59a2a900a5 remove ext/mysql enablement from travis build 2015-03-16 20:05:40 +01:00
Anatol Belski cab21b9347 test timeout with shutdown function, variation 2015-03-16 19:37:07 +01:00
Anatol Belski 1d6f94eeef test timeout with shutdown function 2015-03-16 19:35:36 +01:00
Anatol Belski 33d832bd45 test timeout with foreach loop 2015-03-16 19:30:04 +01:00
Anatol Belski b05635ade9 test timeout with for loop 2015-03-16 19:28:01 +01:00
Anatol Belski eab7da4bc9 test timeout with exception variation 2015-03-16 19:26:17 +01:00
Anatol Belski 1c0fce922e test timeout with exception 2015-03-16 19:21:58 +01:00
Anatol Belski 8f1fa842cd fix timeout with cal_user_func 2015-03-16 19:16:09 +01:00
Anatol Belski 7a7d8b9f9d test timeout within eval() 2015-03-16 19:12:55 +01:00
Anatol Belski 82d3a13983 test timeout with array_walk 2015-03-16 19:05:21 +01:00
Anatol Belski f591c0dff8 test timeout within function 2015-03-16 19:01:23 +01:00
Anatol Belski 394bd2ab41 test timeout within while loop 2015-03-16 18:58:32 +01:00
Dmitry Stogov 5c68836b0b improved timeout handling on windows 2015-03-16 17:49:43 +01:00
Julien Pauli 4d3a3811a9 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix flaws in session module

Conflicts:
	ext/session/session.c
2015-03-16 16:11:02 +01:00
Julien Pauli 2a50877428 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix flaws in session module
2015-03-16 16:01:12 +01:00
Julien Pauli 4dba99c226 Fix flaws in session module 2015-03-16 16:00:46 +01:00
Dmitry Stogov 0a6ab089cd Use memcmp() instead of strncmp() 2015-03-16 15:53:54 +03:00
Xinchen Hui eeb8eced9b Improved parser (make use_type reuseable) 2015-03-16 18:43:36 +08:00
Xinchen Hui 50e4033475 Let phpdbg refused to be compiled with no CALL zend vm kind 2015-03-16 17:10:26 +08:00
Xinchen Hui 8247f49fb2 Exposed ZEND_VM_KIND etc 2015-03-16 17:00:04 +08:00
Xinchen Hui f54f806f4e Remove --with-zend-vm (it doesn't work anyway) 2015-03-16 16:59:31 +08:00
Anatol Belski b48f3ecd92 Merge branch 'PHP-5.6'
* PHP-5.6:
  backport af2b0669 into 5.5
2015-03-16 08:35:10 +01:00
Anatol Belski 8f898c0706 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  backport af2b0669 into 5.5
2015-03-16 08:34:14 +01:00
Anatol Belski 293d6e629d backport af2b0669 into 5.5 2015-03-16 08:32:39 +01:00
Danack 6b232643e5 Reverted change to function name and added note of why it is different from the class it is actually changing. 2015-03-15 18:03:08 +00:00
Anatol Belski 8f0dbe2355 Merge branch 'PHP-5.6'
* PHP-5.6:
  libxml-2.9.2 compatibility
2015-03-15 18:39:38 +01:00
Anatol Belski af2b066911 libxml-2.9.2 compatibility 2015-03-15 18:38:50 +01:00
Danack 9803fccfbc Made UConverter throw an exception if the constructor fails. 2015-03-15 15:30:25 +00:00
Danack d3267d0092 Fixed PDO constructor to not return null. 2015-03-15 15:03:03 +00:00
Danack 78ebf83ad3 Fixed fileinfo behaviour. 2015-03-15 14:54:49 +00:00
Danack 0922eca0c7 Made Phar throw exception on bad constructor. 2015-03-15 14:47:07 +00:00
Danack 99dae96dc0 Converted intl extension to use IntlException in constructors. 2015-03-15 13:59:48 +00:00
Anatol Belski bbc183d88a Merge branch 'PHP-5.6'
* PHP-5.6:
  fix test
2015-03-14 18:31:02 +01:00
Anatol Belski 2ac31872ac Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix test
2015-03-14 18:30:32 +01:00
Anatol Belski c21c8f369d fix test 2015-03-14 18:29:59 +01:00
Dmitry Stogov f42ebdd4e9 Fixed inconsistency 2015-03-14 15:11:55 +03:00
Nikita Popov 547d387973 Merge branch 'PHP-5.6' 2015-03-14 09:18:50 +01:00
Nikita Popov 846c8059e6 Merge branch 'PHP-5.5' into PHP-5.6 2015-03-14 09:18:31 +01:00
Jeff Welch 1e51c5411e Fix #69203: FILTER_FLAG_STRIP_HIGH doesn't strip ASCII 127 2015-03-14 09:17:36 +01:00
Reeze Xia 7409fd4bf7 Fix folder mark 2015-03-14 14:06:57 +08:00
Xinchen Hui 9420a2a5b0 Merge branch 'PHP-5.6' 2015-03-14 11:32:09 +08:00
Xinchen Hui 96bb3b838c Merge branch 'PHP-5.5' into PHP-5.6 2015-03-14 11:31:53 +08:00
Xinchen Hui 5b87d52041 Fixed typo 2015-03-14 11:31:12 +08:00
Anatol Belski e78971cd7b fix syntax for the Visual studio compat 2015-03-13 20:25:10 +01:00
Dmitry Stogov db10b72523 Use fastcall calling convention for most critical ZE subsystems. 2015-03-13 21:10:09 +03:00
Xinchen Hui 1ec6172940 Revert "Enable zend signals handler by default"
This reverts commit dbe7ff6df5.
2015-03-14 01:10:17 +08:00
Xinchen Hui 326ac546ab Remove TSRMLS 2015-03-14 01:04:00 +08:00
Xinchen Hui e827d1a424 Merge branch 'PHP-5.6'
Conflicts:
	ext/spl/spl_observer.c
2015-03-14 01:01:02 +08:00
Xinchen Hui 669c7104c3 Update NEWS 2015-03-14 00:53:51 +08:00
Xinchen Hui 396bc00caa Merge branch 'PHP-5.5' into PHP-5.6 2015-03-14 00:53:32 +08:00
Xinchen Hui ed59370f0a Little improvement, update NEWs, added test 2015-03-14 00:52:53 +08:00
Xinchen Hui 1b5ad03f66 Merge branch 'bug69227' of https://github.com/Vektah/php-src into PHP-5.5 2015-03-14 00:42:36 +08:00
Xinchen Hui f97b000430 Merge branch 'master' of https://git.php.net/repository/php-src 2015-03-14 00:41:29 +08:00
Xinchen Hui dbe7ff6df5 Enable zend signals handler by default 2015-03-14 00:40:54 +08:00
Anatol Belski 92d106d26d fixed test 2015-03-13 17:33:48 +01:00
Anatol Belski b680ccb2b0 the test shouldn't fail when unlink failed 2015-03-13 17:33:47 +01:00
Nikita Popov 3cd6a9845d Merge branch 'PHP-5.6'
Conflicts:
	Zend/zend_generators.c
	Zend/zend_generators.h
2015-03-13 16:29:39 +01:00
Nikita Popov 4b930e156f Merge branch 'PHP-5.5' into PHP-5.6 2015-03-13 16:25:21 +01:00
Nikita Popov a9d73f0646 Fixed bug #69221
A generator iterator can be created from different zvals - use
the object handle to manage references instead.
2015-03-13 16:23:53 +01:00
Dmitry Stogov 2b42d71908 Changed HashTable layout:
Removed HashTable->arHash (reduced memory consumption). Now hash slots may be accessed using HT_HASH() macro.
Hash slotas are allocated together with Buckets (before them) and lay in reverse order from HashTable->arData base address (see comments in Zend/zend_types.h)
Indexes in hash table and conflict resolution chains (Z_NEXT) may be stored as indeces or offsets in bytes, depending on system (32 or 64-bit).
HashTable data filelds are reordered to keep the most useful for zend_hash_find() data in the same CPU cache line.
2015-03-13 17:13:19 +03:00
Nikita Popov 0a4a11b73a Regenerate ext/tokenizer data 2015-03-13 14:14:01 +01:00
Lior Kaplan d79fe57216 Fix copyright years 2015-03-13 11:27:40 +02:00
Lior Kaplan a4384bd3d4 s/PHP Version 5/PHP Version 7/g
Follow up for d0cb7153
2015-03-13 11:09:42 +02:00
Dmitry Stogov ae26a51f0f Added API function to call VM opcode handler in a portable way 2015-03-13 11:29:43 +03:00
Vektah 482500b455 Fix a leak 2015-03-13 15:54:30 +11:00
Xinchen Hui d695a44a7e Revert previously commit by accident 2015-03-13 12:02:39 +08:00
Vektah 950d3d6e9b Fix bug #69227 and #65967
This patch fixes a use (in zend_gc.c) after free (in spl_observer.c).
See https://bugs.php.net/bug.php?id=69227
2015-03-13 15:02:05 +11:00
Wei Dai 25566c67fe Implement preg_replace_callback_array function 2015-03-13 11:52:36 +08:00
Dmitry Stogov 249c2323f4 Allow CALL executor to keep few very often used vaiables in CPU registers.
This is disabled by default yet, but may be enabled compiling zend_execute.c with -DHAVE_GCC_GLOBAL_REGS.
Only tested on Linux x86 and x86_64 with GCC 4.9.2.
2015-03-13 03:28:21 +03:00
Dmitry Stogov 6289f7e52f Executor cleanup: fix GOTO and SWITCH VMs, remove aility to build additional PHP-5.0 compatible VM, hide executor implementation details. 2015-03-12 20:39:04 +03:00
Anatol Belski 41571e7fa9 improve ssl operations with possible renegotiation 2015-03-12 17:31:28 +01:00
Anatol Belski 1cf70266e7 use _set_errno where appropriate 2015-03-12 16:24:56 +01:00
Anatol Belski 931f116bbd Merge branch 'PHP-5.6'
* PHP-5.6:
  create the php prefix if doesn't exist
2015-03-12 15:26:12 +01:00
Anatol Belski 206481cd01 create php prefix before copying dlls 2015-03-12 15:25:43 +01:00
Anatol Belski 8cc8d4830a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  create the php prefix if doesn't exist
2015-03-12 15:21:33 +01:00
Anatol Belski 6b643f0741 create the php prefix if doesn't exist 2015-03-12 15:20:53 +01:00
Dmitry Stogov 9d71d65388 Fixed tests 2015-03-12 16:58:50 +03:00
Dmitry Stogov 8633685675 Use specialized macro for string zval creation 2015-03-12 16:53:51 +03:00
Anatol Belski 0e30c543ec upgrade to oniguruman 5.9.6 2015-03-12 13:42:36 +01:00
Anatol Belski ff337bf52b expose oniguruma version 2015-03-12 13:28:43 +01:00
Anatol Belski 11716401bd fix possible unititialized pointer usage 2015-03-12 13:00:36 +01:00
Anatol Belski 1923c7a9b8 simplify condition 2015-03-12 10:21:43 +01:00
Anatol Belski 53b7258797 force ext/ftp to be always shared on Windows 2015-03-12 00:36:22 +01:00
Anatol Belski 2f443acad1 remove ext/openssl dependency for ext/ftp from conf 2015-03-12 00:13:01 +01:00
Anatol Belski d2ee0840d2 don't depend on ext/openssl for ftp ssl support
instead just link against the openssl and init manually, that's
more flexible
2015-03-11 23:58:59 +01:00
Anatol Belski 4ee0395a4a init mbstring tsrm_ls_cache on MINIT
as some globals are accessed there already
2015-03-11 23:42:39 +01:00
Anatol Belski 6c5d7c29f7 properly deinit mail socket 2015-03-11 21:46:42 +01:00
Anatol Belski cf4c60b372 use proper value to check the log_source handle 2015-03-11 21:46:41 +01:00
Anatol Belski d5f2b4b398 fix ftp_login with ssl enabled 2015-03-11 21:46:40 +01:00
Anatol Belski f1a47988b0 added comment 2015-03-11 21:46:39 +01:00
Anatol Belski 167979fe76 enable ftps for shared ext/ftp 2015-03-11 21:46:38 +01:00
Anatol Belski f43cc2a19a use portable fseek 2015-03-11 21:46:37 +01:00
Daniel Lowrey 589374d027 Merge branch 'PHP-5.6'
* PHP-5.6:
  Don't block on crypto data inside stream_select()
2015-03-11 09:45:28 -06:00
Daniel Lowrey c661121459 Don't block on crypto data inside stream_select() 2015-03-11 09:44:07 -06:00
Nikita Popov c532376ee7 Fix some memory leaks in WebPhar 2015-03-11 15:27:42 +01:00
Trevor Suarez 98c6567e71 Putting whitespace back to the way it was. 2015-03-11 09:29:08 -04:00
Dmitry Stogov d68861eb4b Improved php_json_escape_string() 2015-03-11 15:03:07 +03:00
Dmitry Stogov 781d1c400c Improved table search 2015-03-11 15:02:47 +03:00
Xinchen Hui 80274290b7 Comment out for now 2015-03-11 16:54:51 +08:00
Xinchen Hui 70f4854028 Merge branch 'master' of https://git.php.net/repository/php-src 2015-03-11 16:31:34 +08:00
Nikita Popov de4e7e43c5 Fix memory leak 2015-03-11 09:23:29 +01:00
Xinchen Hui 37901aa467 Fixed memleak 2015-03-11 13:42:39 +08:00
Xinchen Hui 75c0f63739 Fixed memory leak 2015-03-11 10:33:43 +08:00
Xinchen Hui 253420190b Merge branch 'PHP-5.6' 2015-03-11 08:20:19 +08:00
Xinchen Hui d4f727d0f8 Merge branch 'PHP-5.5' into PHP-5.6 2015-03-11 08:20:03 +08:00
Xinchen Hui 675606f1a6 Improve test script for #69212 2015-03-11 08:19:34 +08:00
Daniel Lowrey 4a336f5d0b Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug# 69215 (Crypto servers should send client CA list)

Conflicts:
	ext/openssl/xp_ssl.c
2015-03-10 18:18:19 -06:00
Daniel Lowrey 3f6b12795c Fix bug# 69215 (Crypto servers should send client CA list) 2015-03-10 18:13:10 -06:00
Dmitry Stogov 026b0adc50 Fixed memory leaks 2015-03-11 01:28:13 +03:00
Dmitry Stogov 48deb1cd94 Free memory if destructor wasn't called 2015-03-11 00:57:28 +03:00
Dmitry Stogov 816b196973 Fixed memory leak 2015-03-10 23:16:09 +03:00
Dmitry Stogov ed9c8a23ba More accurate reference counting on closures 2015-03-10 23:04:41 +03:00
Nikita Popov 00985a975d Merge branch 'PHP-5.6'
Conflicts:
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2015-03-10 18:26:09 +01:00
Nikita Popov 49bd45a2c1 Merge branch 'PHP-5.5' into PHP-5.6 2015-03-10 18:19:27 +01:00
Nikita Popov bc9f2fb8df Fixed bug #69212 2015-03-10 18:17:56 +01:00
Dmitry Stogov 5d0bacfe67 Merge branch 'PHP-5.6'
* PHP-5.6:
  We don't cache custom strems with callbacks anymore

Conflicts:
	ext/opcache/ZendAccelerator.c
2015-03-10 19:32:38 +03:00
Dmitry Stogov b52a2940af Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  We don't cache custom strems with callbacks anymore
2015-03-10 19:30:32 +03:00
Dmitry Stogov c814b3294a We don't cache custom strems with callbacks anymore 2015-03-10 19:25:30 +03:00
Dmitry Stogov a53d82daa6 Prevent possible double inheritance (ext/opcache/tests/bug67215.phpt) 2015-03-10 18:50:07 +03:00
Anatol Belski 61406a527f C89 compat 2015-03-10 12:11:52 +01:00
Dmitry Stogov fad8fe94a8 Fixed access on uninitialized data in Zend/tests/closure_019.phpt 2015-03-10 14:05:14 +03:00
Xinchen Hui 4f51f40bf1 Merge branch 'master' of https://git.php.net/repository/php-src 2015-03-10 17:26:15 +08:00
Xinchen Hui 0714e027d0 Merge branch 'PHP-5.6' 2015-03-10 17:24:29 +08:00
Anatol Belski fd0a66528e correct tests as the issue is only reproduceable with cgi/fpm 2015-03-10 10:21:22 +01:00
Xinchen Hui 25050e3b00 Merge branch 'PHP-5.5' into PHP-5.6 2015-03-10 17:18:47 +08:00
Xinchen Hui f074870f4e Typo 2015-03-10 17:18:39 +08:00
Xinchen Hui d4c1dca98c Merge branch 'master' of https://git.php.net/repository/php-src 2015-03-10 17:09:41 +08:00
Xinchen Hui 7df8a68327 Merge branch 'PHP-5.6' 2015-03-10 17:09:28 +08:00
Xinchen Hui b5589d3fb4 Merge branch 'PHP-5.5' into PHP-5.6 2015-03-10 17:06:05 +08:00
Xinchen Hui 6f4af2da29 Fixed test 2015-03-10 17:05:47 +08:00
Anatol Belski 388c4e7436 added more exception tests 2015-03-10 09:10:25 +01:00
Anatol Belski ea2e197224 fix leaking registry key handle 2015-03-10 09:10:24 +01:00
Anatol Belski fca341699e don't pass zero to malloc() 2015-03-10 09:10:23 +01:00
Xinchen Hui a5317e9d41 Merge branch 'PHP-5.6'
Conflicts:
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2015-03-10 15:49:02 +08:00
Xinchen Hui 0584b2df3f Update NEWS 2015-03-10 15:38:34 +08:00
Xinchen Hui abb09693ac Merge branch 'PHP-5.5' into PHP-5.6 2015-03-10 15:37:14 +08:00
Xinchen Hui 6a6c273893 Fixed bug #66609 (php crashes with __get() and ++ operator in some cases) 2015-03-10 15:36:42 +08:00
Dmitry Stogov a30d328671 Errors converted to exceptions are not "recoverable" anymore. 2015-03-10 10:31:55 +03:00
Xinchen Hui 56eed39e04 Fixed phar test segfault after merged engine exception 2015-03-10 15:04:01 +08:00
Xinchen Hui d25acb5fd0 Revert "Fixed phar file action failure after engine exception rfc been merged"
This reverts commit f174859acd.
2015-03-10 15:03:15 +08:00
Daniel Lowrey dd16a7c820 Update NEWS/UPGRADING 2015-03-09 23:15:57 -06:00
Daniel Lowrey c5c4d22c10 Deprecate "session_meta_capture" SSL context option
Meta data about encrypted streams is now available as part of the
"crypto" key in the array returned by stream_get_meta_data(). This
update deprecates the use of the "session_meta_capture" ssl
context option in encrypted streams.
2015-03-09 23:15:57 -06:00
Daniel Lowrey 2dec21634c Revert "Add stream_socket_crypto_info() function"
This reverts commit 13acb7ec65.

With the added capability to negotiate application layer protocols
via the TLS ALPN extension userland needs a method to access the
negotiated protocol on a given stream. The reverted commit added
a new stream_socket_crypto_info() function for this purpose.

This original approach was discarded in favor of using the
already-existing stream_get_meta_data() API which specifically
exists for just such purposes and requires the addition of no new
functions.
2015-03-09 23:15:57 -06:00
Daniel Lowrey 676a5059b2 Add crypto info to stream_get_meta_data() result on encrypted streams
A "crypto" key is added to the output of stream_get_meta_data() calls
when invoked using a stream on which crypto is currently active. The
new key's associated array contains the following keys:

 - protocol (string e.g. TLSv1.2, TLSv1.1, etc)
 - cipher_name (string)
 - cipher_bits (int)
 - cipher_version (string)

If the TLS ALPN extension was used to successfully negotiate an
application protocol that protocol's identifier is stored in the
following key:

 - alpn_protocol

If no ALPN protocol was negotiated the "alpn_protocol" key is not
present in the crypto meta data array. More meta information
concerning the stream's active encryption state may be added in the
future.
2015-03-09 23:15:57 -06:00
Juan Basso 6b7b5e777f Renamed test case to match with reported bug 2015-03-10 00:01:26 -04:00
Xinchen Hui f6762192d2 Merge branch 'PHP-5.5' into PHP-5.6 2015-03-10 10:44:07 +08:00
Xinchen Hui 22894e74c2 Fix is reverted (test fails in all branches) 2015-03-10 10:43:05 +08:00
Xinchen Hui f678c14a6c Merge branch 'fixed-build' of https://github.com/zxcvdavid/php-src 2015-03-10 10:31:36 +08:00
Daniel Lowrey 748433e7bc Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix crypto stream timeout regressions

Conflicts:
	ext/openssl/xp_ssl.c
2015-03-09 16:02:04 -06:00
Daniel Lowrey 69691cc8ca Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix crypto stream timeout regressions
2015-03-09 15:55:33 -06:00
Daniel Lowrey bbfd4a5e62 Fix crypto stream timeout regressions 2015-03-09 15:53:26 -06:00
Reeze Xia f174859acd Fixed phar file action failure after engine exception rfc been merged 2015-03-09 17:07:18 +00:00
Xinchen Hui 47f2e42fc9 Remove PHAR_GLOBALS (make it respect ZEND_ENABLE_STATIC_TSRMLS_CACHE) 2015-03-09 23:00:56 +08:00
Wei Dai 3f3e34040a Fixed compile warnings 2015-03-09 21:25:43 +08:00
Nikita Popov b0055678bf Fix CLI test and drop some now unnecessary code 2015-03-09 14:09:34 +01:00
Juan Basso cbdeccd6ed Fixed serialization of non string values on __sleep
Returning just N; (null) on the __sleep makes the number of fields/values be incomplete and corrupting the generated value from serialize, making impossible to unserialize it.
2015-03-09 09:04:34 -04:00
Dmitry Stogov 1c94ff0595 Implement engine exceptions
RFC: https://wiki.php.net/rfc/engine_exceptions_for_php7

Pending changes regarding naming of BaseException and whether it
should be an interface.
2015-03-09 14:01:32 +01:00
Nikita Popov 2f156c61f1 Add UPDRADING note about yield operator behavior
Fixes bug #69160.
[ci skip]
2015-03-09 12:41:33 +01:00
Nikita Popov a4262827ea Fix ReflectionFunction::isDeprecated() test
We currently don't have deprecated functions ... so just switch
this to testing a non-deprecated function.
2015-03-09 12:27:06 +01:00
Nikita Popov 7810659cc3 Removed deprecated mcrypt_ecb() etc 2015-03-09 11:37:13 +01:00
Nikita Popov c488a45701 Remove deprecated mcrypt_generic_end() alias 2015-03-09 11:10:52 +01:00
Nikita Popov a81e65a501 Remove xsl.security_prefs ini option
Conflicts:
	ext/xsl/php_xsl.c
	ext/xsl/xsltprocessor.c
2015-03-09 11:06:18 +01:00
Nikita Popov b5184ef336 Remove unsafe curl file uploads
The option CURLOPT_SAFE_UPLOAD still exists, but cannot be disabled.
2015-03-09 11:00:04 +01:00
Xinchen Hui c24afc8d8f Revert commit by mistake 2015-03-09 17:27:51 +08:00
Xinchen Hui 64bbc98dff Merge branch 'PHP-5.6'
Conflicts:
	ext/mysqli/php_mysqli_structs.h
2015-03-09 17:23:34 +08:00
Xinchen Hui 4ca14f681e Merge branch 'PHP-5.5' into PHP-5.6 2015-03-09 17:23:04 +08:00
Xinchen Hui 9af1383a3f Revert "Fix #63486"
This reverts commit f4c96ffcb5.
2015-03-09 17:22:56 +08:00
Xinchen Hui eed3419802 Merge branch 'PHP-5.6' 2015-03-09 17:14:55 +08:00
Jeff Welch fdbdb11514 Fix #69202: FILTER_FLAG_STRIP_BACKTICK ignored unless other flags are used. 2015-03-09 17:14:47 +08:00
Xinchen Hui 711ee5e4e1 Update NEWs 2015-03-09 17:13:47 +08:00
Xinchen Hui b0ec8dfd0d Update news 2015-03-09 17:09:57 +08:00
Jeff Welch 66a2c528fe Fix #69202: FILTER_FLAG_STRIP_BACKTICK ignored unless other flags are used. 2015-03-09 17:08:35 +08:00
Reeze Xia 2a2c74997d Now opened_path is a zend_string 2015-03-09 16:12:53 +08:00
Xinchen Hui f66bef2414 Fixed build 2015-03-09 15:50:52 +08:00
Wei Dai 22a61cea33 Fixed build 2015-03-09 15:21:08 +08:00
Masaki Kagaya 9d81d7ff70 added missing parentheses
added test case for bug #68846
replaced tab with space
added missing parentheses again
See also: http://icu-project.org/docs/papers/gb18030.html#h7
2015-03-08 23:45:11 -07:00
Julien Pauli 2f06413340 Fix #67626 2015-03-08 23:45:11 -07:00
Julien Pauli 37ecfdad09 Fix #63486 2015-03-08 23:41:46 -07:00
Stanislav Malyshev 0f333fa93c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  added missing parentheses
  Fix #67626
  Fix #63486

Conflicts:
	main/streams/userspace.c
2015-03-08 23:41:30 -07:00
Masaki Kagaya 934d6ed900 added missing parentheses
added test case for bug #68846
replaced tab with space
added missing parentheses again
See also: http://icu-project.org/docs/papers/gb18030.html#h7
2015-03-08 23:40:56 -07:00
Julien Pauli 7d47d9fe23 Fix #67626 2015-03-08 23:40:55 -07:00
Julien Pauli 7684d72df8 Fix #63486 2015-03-08 23:40:55 -07:00
Masaki Kagaya fa72f1ea86 added missing parentheses
added test case for bug #68846
replaced tab with space
added missing parentheses again
See also: http://icu-project.org/docs/papers/gb18030.html#h7
2015-03-08 23:39:04 -07:00
Stanislav Malyshev a8da0a9620 Merge branch 'pull-request/1104' into PHP-5.5
* pull-request/1104:
  Fix #63486
2015-03-08 23:21:53 -07:00
Stanislav Malyshev 43b426fbc4 Merge branch 'pull-request/1106' into PHP-5.5
* pull-request/1106:
  Fix #67626
2015-03-08 22:52:21 -07:00
Xinchen Hui c7de82b0d9 Add note of group use 2015-03-09 12:08:34 +08:00
Xinchen Hui 7bf082d638 Merge branch 'filter/adjust-logic' of https://github.com/whatthejeff/php-src 2015-03-09 11:43:10 +08:00
Xinchen Hui 96f7a33df6 Temorary fix for phpdbg segfault while use zend_mm_set_custom_handlers 2015-03-09 11:19:05 +08:00
Stanislav Malyshev 69d183dd19 Merge branch 'pull-request/1049'
* pull-request/1049:
  Rename __callstatic (internal name) to __callStatic (userland name) in error message
2015-03-08 17:57:47 -07:00
Stanislav Malyshev 33ef5c47a5 Merge branch 'pull-request/1135'
* pull-request/1135:
  Return void like other functions
  Use zend_parse_parameters_none()
  Implemented FR #45235 A way to clear or reset the results for error_get_last()
2015-03-08 17:26:38 -07:00
Stanislav Malyshev a8a77fff5c Merge branch 'PHP-5.6'
* PHP-5.6:
  Regression tests for SplFileInfo class setters
2015-03-08 17:13:32 -07:00
Stanislav Malyshev dcc031470a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Regression tests for SplFileInfo class setters
2015-03-08 17:13:25 -07:00
Stanislav Malyshev a2a20d29a8 Merge branch 'pull-request/1134' into PHP-5.5
* pull-request/1134:
  Regression tests for SplFileInfo class setters
2015-03-08 17:13:02 -07:00
Stanislav Malyshev 6adac79a73 Merge branch 'PHP-5.6'
* PHP-5.6:
  Add missing value for error_reporting directive
2015-03-08 17:05:59 -07:00
Stanislav Malyshev b0d1e23646 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Add missing value for error_reporting directive
2015-03-08 17:05:51 -07:00
Stanislav Malyshev d7931f8f66 Merge branch 'pull-request/1130' into PHP-5.5
* pull-request/1130:
  Add missing value for error_reporting directive
2015-03-08 17:05:37 -07:00
Stanislav Malyshev 876a9be3ee Merge branch 'pull-request/1129'
* pull-request/1129:
  Array - make krsort FAST_ZPP compatibility
2015-03-08 17:04:13 -07:00
Stanislav Malyshev 90b8898d22 Merge branch 'pull-request/1127'
* pull-request/1127:
  merge ZEND_SIGNED_MULTIPLY_LONG for i386 and x86_64
2015-03-08 17:02:48 -07:00
Stanislav Malyshev 1446bf5ebf Adding notes regarding implementation of FR #69089 2015-03-08 16:51:00 -07:00
Stanislav Malyshev fdc46d790b Merge branch 'pull-request/1070'
* pull-request/1070:
  More docs for /win32/build/confutils.js
  Adding some inline docs/docs cleanup
2015-03-08 16:46:15 -07:00
Anatol Belski a44ed26dcf Merge remote-tracking branch 'weltling/libmagic_upgrade'
* weltling/libmagic_upgrade: (29 commits)
  partially revert wrong merge
  after merge fix
  updated libmagic.patch
  catching up
  catching up
  regenerated data file
  more after patch fixes
  restore good patch parts
  stat is done by php
  use zend_strndup
  started to patch for libmagic.next
  fix test outputs
  catch up with the previous cve-2014-3538 patch
  catching up
  catching up
  catching up
  updated the test magic file
  add patchlevel info
  portable off_t
  regenerated data file
  ...
2015-03-08 20:31:02 +01:00
Jeff Welch 1dc5bd47d8 Adjust logic in sanity checks.
The code should return false when the provided options argument is neither an
array nor a valid filter.
2015-03-08 15:27:41 -04:00
Anatol Belski d5558138d7 partially revert wrong merge 2015-03-08 20:05:34 +01:00
Anatol Belski bae44417a8 after merge fix 2015-03-08 19:56:31 +01:00
Anatol Belski 12babf59c1 updated libmagic.patch 2015-03-08 19:48:05 +01:00
Anatol Belski 316b1e0267 catching up 2015-03-08 19:48:01 +01:00
Anatol Belski 3e8a5485e2 catching up 2015-03-08 19:47:59 +01:00
Anatol Belski eeb74b0ab8 regenerated data file 2015-03-08 19:47:53 +01:00
Anatol Belski f54cf1ec57 more after patch fixes 2015-03-08 19:47:50 +01:00
Anatol Belski 1ebe527757 restore good patch parts 2015-03-08 19:47:48 +01:00
Anatol Belski 75a1392fb5 stat is done by php 2015-03-08 19:47:42 +01:00
Anatol Belski 49dc53722b use zend_strndup 2015-03-08 19:47:41 +01:00
Anatol Belski 1b77e51ad7 started to patch for libmagic.next
everything is broken yet
2015-03-08 19:47:38 +01:00
Anatol Belski 332bbfa23b fix test outputs 2015-03-08 19:47:34 +01:00
Anatol Belski 9603f16f99 catch up with the previous cve-2014-3538 patch 2015-03-08 19:47:33 +01:00
Anatol Belski f39a8517e0 catching up 2015-03-08 19:47:31 +01:00
Anatol Belski 5892ec175a catching up 2015-03-08 19:47:30 +01:00
Anatol Belski ca98547801 catching up 2015-03-08 19:47:28 +01:00
Anatol Belski ef51790f61 updated the test magic file 2015-03-08 19:47:27 +01:00
Anatol Belski 7022fe80f7 add patchlevel info 2015-03-08 19:47:25 +01:00
Anatol Belski ec84d36c9f portable off_t 2015-03-08 19:47:24 +01:00
Anatol Belski 969ce2e877 regenerated data file 2015-03-08 19:47:21 +01:00
Anatol Belski 0d410fc2d2 more after patch fixes 2015-03-08 19:47:20 +01:00
Anatol Belski 1a7798c786 restore good patch parts 2015-03-08 19:47:18 +01:00
Anatol Belski 9e3be05e32 missing prototype 2015-03-08 19:47:17 +01:00
Anatol Belski 9b1bdccb04 libmagic.patch so far 2015-03-08 19:47:15 +01:00
Anatol Belski 0dd82374d1 updated test magic file 2015-03-08 19:47:14 +01:00
Anatol Belski 2fd282a690 use right memory api 2015-03-08 19:47:12 +01:00
Anatol Belski f3fad68efd stat is done by php 2015-03-08 19:47:11 +01:00
Anatol Belski a1883a8523 use zend_strndup 2015-03-08 19:47:09 +01:00
Anatol Belski 2181ed2e2a started to patch for libmagic.next
everything is broken yet
2015-03-08 19:47:06 +01:00
Xinchen Hui 4861e1bd6b Revert "Fixed memleak while using custom mm"
This reverts commit 5eabd979ff.
2015-03-09 00:41:19 +08:00
Xinchen Hui 5eabd979ff Fixed memleak while using custom mm 2015-03-09 00:18:54 +08:00
Xinchen Hui 51b96086d7 Revert "Fixed memleak in alloc_globals_ctor"
This reverts commit 85316b4bf0.
2015-03-09 00:17:52 +08:00
Xinchen Hui 1638db71fd Declares in top 2015-03-09 00:01:55 +08:00
Xinchen Hui caa306f6e3 Merge branch 'batch-use' of https://github.com/marcioAlmada/php-src 2015-03-08 23:54:46 +08:00
Márcio Almada 22d6cc7c8c fix compilation warnings, rename batch_use to group_use 2015-03-08 12:50:57 -03:00
Rouven Weßling bb0504534d Add ZEND_ARG_CALLABLE_INFO to allow internal function to type hint against callable 2015-03-08 23:00:13 +08:00
Xinchen Hui ef2db26c60 Merge branch 'arginfo' of https://github.com/realityking/php-src into PHP-5.4 2015-03-08 22:53:19 +08:00
xingxing 1b0d32b350 Add configtest option to fpm init.d script 2015-03-08 22:48:29 +08:00
Xinchen Hui 5aebdc98de Fixed bug #69201 (Memory leak using iterator and get by reference on PHP 7) 2015-03-08 20:22:02 +08:00
Reeze Xia 609f05fc19 ZTS cleanup 2015-03-08 19:25:55 +08:00
Jakub Zelenka 0cb869d908 Merge branch 'pull-request/1151' 2015-03-08 10:47:22 +00:00
Remi Collet 02808aeca3 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix odbc build as shared
2015-03-08 07:37:07 +01:00
Remi Collet 43da0d302b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix odbc build as shared
2015-03-08 07:36:35 +01:00
Remi Collet 89f86119d6 Fix odbc build as shared
Broken since a41aa46759
2015-03-08 07:34:51 +01:00
Márcio Almada 072d1dad15 add explicit tests for variations on whitespace usages 2015-03-07 17:59:48 -03:00
Márcio Almada 344fc25b12 require trailing T_NS_SEPARATOR #1005 2015-03-07 17:59:48 -03:00
Márcio Almada 52b20b0b46 fix test ns_092.phpt 2015-03-07 17:59:48 -03:00
Márcio Almada fbde890ee2 allow non mixed use declarations, CC @nikic #1005
```
use function N\S { foo, bar, etc };
use const N\S { FOO, BAR, ETC };
```

Related tests:

```
make test -j4 TESTS="-m Zend/tests/ns_0{88..92}*.phpt"
```

All namespace tests:

```
make test -j4 TESTS="Zend/tests/ns_*.phpt"
```
2015-03-07 17:59:48 -03:00
Márcio Almada e9f82abd61 add test for non mixed batch use statements... #1005
```
use function foo\math {sin, cos, sum};
use const foo\math { PI, E, GAMMA, GOLDEN_RATIO }
```
2015-03-07 17:59:48 -03:00
Márcio Almada 4485056a31 ensure that comments are allowed between batch use declarations #1005 2015-03-07 17:59:48 -03:00
Márcio Almada 95abd5c5a4 simplify batch use declaration syntax error test: ns_088.phpt 2015-03-07 17:59:48 -03:00
Márcio Almada 275e7276c1 first implementation of batch use compilation 2015-03-07 17:59:48 -03:00
Márcio Almada bb171e2edc add tests for batch use declarations with classes, functions and constants 2015-03-07 17:59:48 -03:00
Márcio Almada 39b0e2c90d fix typo 2015-03-07 17:59:48 -03:00
Bob Weinand b1cd381f01 Added test for bug #69160 (current behavior is correct) 2015-03-07 20:59:42 +01:00
Xinchen Hui 95b4aa5293 Fixed zend_hash_append result duplicated key
actually, maybe we should precalculate before calling zend_hash_appen
when we are not sure whether the hash is caclculated(prop_info->name).

but it looks a little ugly.. (also for zend_string_copy)
2015-03-08 00:21:02 +08:00
Bob Weinand afad979c60 Reduced initial VM_STACK page size of Generators to 4 KB (256 slots)
Generators all have their own vm_stack, but usually don't go really deep.
In most cases even most of the 4 KB will remain unused (in my tests average is rather 1 KB), but this was tested a straightforward implementation without a lot of abstraction layers.
That way I'm using a more conservative 4 KB stack size which really should be enough for, I think, at least 90% of the cases.
This was necessary to not immediately run out of memory with 95%+ usused vm_stack space: If you have a few thousands of Generators active, your application quickly hits memory_limit with a stack page size of 256 KB...
In addition, it's also a bit faster (70% less instructions for zend_vm_stack_new_page) due to emalloc() not having to allocate a whole new segment (segment size 256 KB). Also no mmap()/malloc() necessary.
2015-03-07 13:25:21 +01:00
Dmitry Stogov 0b7896cca5 Restored incorrectly merged NEWS 2015-03-07 15:07:48 +03:00
Hugo Fonseca baece85399 Added test for bug 69187 2015-03-07 10:53:31 +00:00
Xinchen Hui 28b408a242 Fixed bug #69198 (Compact function generate array with length but no content) 2015-03-07 16:49:07 +08:00
Bob Weinand b4a142ab97 Added yield from operator 2015-03-07 00:28:12 +01:00
Anatol Belski f1d1273f2b fix fetching wrong resource 2015-03-06 21:02:29 +01:00
Jakub Zelenka 9d037d574c Update UPGRADING with info about JSON decode error for empty string 2015-03-06 18:41:43 +00:00
Daniel Lowrey 00c35cb6a5 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #69197 (openssl_pkcs7_sign handles default value incorrectly)

Conflicts:
	ext/openssl/openssl.c
2015-03-06 11:31:04 -07:00
Daniel Lowrey 0928bad9ac Fixed bug #69197 (openssl_pkcs7_sign handles default value incorrectly) 2015-03-06 11:29:56 -07:00
Dmitry Stogov 9f9ffdd0a0 Use fast zend_hash_append() API 2015-03-06 19:23:54 +03:00
Anatol Belski be7371f9ff fix data type 2015-03-06 16:49:08 +01:00
Anatol Belski 9577a20b3b fix invalid write 2015-03-06 16:42:31 +01:00
Dmitry Stogov 66f5a1e8b4 Make fast path linear 2015-03-06 17:07:36 +03:00
Dmitry Stogov 53d8e5fc63 Improved hash key manangement code 2015-03-06 16:26:40 +03:00
Tjerk Meesters 1236a30746 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #68917 (parse_url fails on some partial urls)
  Update test to run locally instead of remotely
2015-03-06 20:59:52 +08:00
Tjerk Meesters 469b5a9584 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #68917 (parse_url fails on some partial urls)
2015-03-06 20:58:20 +08:00
Tjerk Meesters d7fb52ea20 Fixed bug #68917 (parse_url fails on some partial urls) 2015-03-06 20:51:22 +08:00
Dmitry Stogov 4bc7ee2eb7 Fixed conditions 2015-03-06 11:00:19 +03:00
Dmitry Stogov 8308e617f1 Revert "Fix logical-op-parentheses warning"
This reverts commit b7408234b9.
2015-03-06 10:56:19 +03:00
Daniel Lowrey eef261f0e4 Update test to run locally instead of remotely 2015-03-05 22:01:15 -07:00
Daniel Lowrey e82878a200 Update test to run locally instead of remotely 2015-03-05 22:00:38 -07:00
Reeze Xia b7408234b9 Fix logical-op-parentheses warning
What a condition ;-)
2015-03-06 12:20:01 +08:00
Daniel Lowrey 3e0a1a71e9 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug (#69195 Inconsistent stream crypto values across versions)

Conflicts:
	ext/standard/http_fopen_wrapper.c
2015-03-05 21:18:09 -07:00
Daniel Lowrey 10bc5fd4c4 Fixed bug (#69195 Inconsistent stream crypto values across versions)
PHP 5.6.0 altered the semantics of the following constants:

- STREAM_CRYPTO_METHOD_SSLv23_CLIENT
- STREAM_CRYPTO_METHOD_SSLv23_SERVER
- STREAM_CRYPTO_METHOD_TLS_CLIENT
- STREAM_CRYPTO_METHOD_TLS_SERVER

Instead of representing the SSLv23_*() handshake methods the v23
constants were changed to allow only SSLv2 or SSLv3 connections.
Likewise, the TLS methods were modified from using only the TLSv1
handshake to allowing TLS1,1.1, and 1.2. This created a situation
in which users upgrading from previous versions faced a potential
security degradation if they did not update code to use different
constants. In the interest of compatibility across PHP versions
the original semantics have been restored with the following
caveat:

**IMPORTANT**

The SSLv23 client/server methods will no longer negotiate the use
of the insecure SSLv2 or SSLv3 protocols by default. Users wishing
to allow these protocols must explicitly add them to the method
bitmask via the appropriate flags.
2015-03-05 21:09:39 -07:00
Daniel Lowrey 88cfc6ccb6 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix stream_select() issue with OpenSSL buffer

Conflicts:
	main/streams/streams.c
2015-03-05 17:53:04 -07:00
Chris Wright e7df9d710c Fix stream_select() issue with OpenSSL buffer
Ensure data from OpenSSL internal buffer has been
transfered to PHP stream buffer before a select()
emulation operation is performed

Addresses bug #65137
https://bugs.php.net/bug.php?id=65137

Conflicts:
	ext/openssl/xp_ssl.c
2015-03-05 17:18:14 -07:00
Dmitry Stogov 28e42b1ded Improved hash key manangement code 2015-03-06 02:13:47 +03:00
Daniel Lowrey 39501bed3b Merge branch 'PHP-5.6'
* PHP-5.6:
  Really fix zts this time

Conflicts:
	ext/openssl/xp_ssl.c
2015-03-05 14:11:35 -07:00
Daniel Lowrey ca24d19a89 Really fix zts this time 2015-03-05 14:09:25 -07:00
Ferenc Kovacs db1a668d62 Merge branch 'PHP-5.6'
* PHP-5.6:
  re-arrange NEWS
2015-03-05 21:07:34 +01:00
Ferenc Kovacs 33828f002d re-arrange NEWS 2015-03-05 21:07:05 +01:00
Daniel Lowrey 927b137c1b Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix ZTS
  Fix ZTS build

Conflicts:
	ext/openssl/openssl.c
	ext/openssl/xp_ssl.c
2015-03-05 12:24:04 -07:00
Daniel Lowrey c985ec737d Fix ZTS 2015-03-05 12:19:15 -07:00
Daniel Lowrey 010f17534f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix ZTS build
2015-03-05 12:13:33 -07:00
Daniel Lowrey e892f5382f Fix ZTS build 2015-03-05 12:12:55 -07:00
Adam Harvey 7fa1009560 Like Shady, --with-mysql-sock is back.
As Matteo pointed out, MySQLi and PDO_MySQL both rely on this.
2015-03-05 19:00:02 +00:00
Ferenc Kovacs bb103e53ed Merge branch 'PHP-5.6'
* PHP-5.6:
  5.6.8 up next
2015-03-05 19:08:46 +01:00
Ferenc Kovacs d4d05c8919 5.6.8 up next 2015-03-05 19:07:23 +01:00
Daniel Lowrey c34ee4b146 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #67403 (Add signatureType to openssl_x509_parse)
  5.5.24 now

Conflicts:
	ext/openssl/openssl.c
2015-03-05 10:27:11 -07:00
Daniel Lowrey 5939de35a8 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #67403 (Add signatureType to openssl_x509_parse)
  5.5.24 now

Conflicts:
	configure.in
	main/php_version.h
2015-03-05 10:21:32 -07:00
Daniel Lowrey 94140afa69 Fix bug #67403 (Add signatureType to openssl_x509_parse) 2015-03-05 10:09:06 -07:00
Dmitry Stogov a3674a5dcb Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Unused var
2015-03-05 18:19:27 +03:00
Dmitry Stogov 6d065a8545 Avoid repeatable strlen() calls 2015-03-05 18:18:39 +03:00
Xinchen Hui 1ebdbdfd78 Unused var 2015-03-05 23:09:58 +08:00
Trevor Suarez 1de1b6f927 Updating the DateTime_verify test to include the
new method in the reflected method list
2015-03-05 09:50:32 -05:00
Dmitry Stogov bb91bf83f9 Minimize copying of HashTable realocation 2015-03-05 17:22:10 +03:00
Julien Pauli 0f334a1265 5.5.24 now 2015-03-05 14:13:39 +01:00
Xinchen Hui eadff75c7d Merge branch 'PHP-5.6' 2015-03-05 21:10:02 +08:00
Xinchen Hui e8e5913e5e Merge branch 'PHP-5.5' into PHP-5.6 2015-03-05 21:06:07 +08:00
Xinchen Hui 869f8bd24b Error also maybe happened here 2015-03-05 21:05:26 +08:00
Dmitry Stogov 8e3643a8fc Avoid useless op_array duplication 2015-03-05 14:23:48 +03:00
Xinchen Hui eec5ab7672 Merge branch 'PHP-5.6' 2015-03-05 19:06:02 +08:00
Xinchen Hui 7bcdbcf98e Revert commit to zend signal by mistake 2015-03-05 19:04:43 +08:00
Anatol Belski 45fb8b517c fix incompatible pointer 2015-03-05 12:01:27 +01:00
Xinchen Hui 2f88a2d520 Merge branch 'cleanup' of https://github.com/zxcvdavid/php-src 2015-03-05 18:45:00 +08:00
Xinchen Hui f2c8b611cf Merge branch 'PHP-5.6' 2015-03-05 18:44:13 +08:00
Xinchen Hui 56f9dc2d59 Update NEWs 2015-03-05 18:40:25 +08:00
Xinchen Hui 168be6f250 Merge branch 'PHP-5.5' into PHP-5.6 2015-03-05 18:40:06 +08:00
Xinchen Hui f039225597 Fixed bug #69174 (leaks when unused inner class use traits precedence) 2015-03-05 18:39:50 +08:00
Xinchen Hui fd5a756ad4 Revive Zend Signals handler (and fixed bug #61083) 2015-03-05 18:11:22 +08:00
Reeze Xia c498cc7407 Merge branch 'pull-request/1142'
* pull-request/1142:
  Fixed wrong parameter type of php_stream_mmap_range()
2015-03-05 17:05:21 +08:00
Rasmus Lerdorf eaa1b3e614 This test fails with multibyte on because it spews
a conversion error on the bogus file
2015-03-05 00:45:42 -08:00
Rasmus Lerdorf d7810cc0fa This test fails with multibyte on because it spews
a conversion error on the bogus file
2015-03-05 00:44:47 -08:00
Trevor Suarez d3863aeaf7 Whoops! String length.... 2015-03-05 02:57:14 -05:00
Wei Dai 488688cfc7 Remove the unused vars 2015-03-05 15:55:30 +08:00
Trevor Suarez 46f22acdcd Adding a new test for the new method 2015-03-05 02:02:50 -05:00
Trevor Suarez 42660f3d6a Adding a new createFromImmutable method to the
`DateTime` class to mirror the current `DateTime::createFromMutable()`
2015-03-05 01:58:09 -05:00
Daniel Lowrey 73de105481 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #68265 (SAN match fails with trailing DNS dot)
2015-03-04 23:56:36 -07:00
Daniel Lowrey 65a9a5ca12 Fixed bug #68265 (SAN match fails with trailing DNS dot) 2015-03-04 23:55:42 -07:00
Daniel Lowrey fe29b8134c Merge branch 'PHP-5.6'
* PHP-5.6:
  hexadecimal is case*in*sensitive

Conflicts:
	ext/openssl/xp_ssl.c
2015-03-04 23:00:59 -07:00
Daniel Lowrey 1de1ff75f5 Merge branch 'PHP-5.6' of https://github.com/bjori/php-src into PHP-5.6
* 'PHP-5.6' of https://github.com/bjori/php-src:
  hexadecimal is case*in*sensitive
2015-03-04 22:55:22 -07:00
Daniel Lowrey 94a70b98a6 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #68879 (IP Address fields in subjectAltNames not used)
  Fix broken test

Conflicts:
	ext/openssl/xp_ssl.c
2015-03-04 22:42:25 -07:00
Daniel Lowrey 5dcace058a Fixed bug #68879 (IP Address fields in subjectAltNames not used) 2015-03-04 22:39:25 -07:00
Daniel Lowrey ca766e0787 Fix broken test 2015-03-04 22:37:07 -07:00
Xinchen Hui 792630bc50 Use strpprintf 2015-03-05 12:40:09 +08:00
Adam Harvey 592b2545b2 Merge branch 'master' into HEAD 2015-03-05 01:07:36 +00:00
Adam Harvey 10c471a60b Use a deprecated function that still exists. 2015-03-05 00:51:05 +00:00
Adam Harvey 3253168cde Remove unnecessary debug warning (that also broke tests). 2015-03-05 00:33:20 +00:00
Adam Harvey d8b2012ab0 Explicitly depend opcache on pcre. 2015-03-05 00:27:36 +00:00
Adam Harvey cdb82d879c Update UPGRADING. 2015-03-05 00:27:21 +00:00
Adam Harvey fea9a6fc77 Merge remote-tracking branch 'datibbaw/kill-ereg'
Conflicts:
	ext/ereg/config.w32
	ext/ereg/config0.m4
	ext/ereg/ereg.c
	ext/ereg/php_ereg.h
	ext/ereg/php_regex.h
	ext/ereg/regex/engine.c
	ext/ereg/regex/main.c
	ext/ereg/regex/regcomp.c
	ext/ereg/regex/regerror.c
	ext/ereg/tests/split_error_002.phpt
	ext/ereg/tests/split_variation_003.phpt
	ext/ereg/tests/spliti_error_002.phpt
	ext/ereg/tests/spliti_variation_003.phpt
	ext/pgsql/pgsql.c
	sapi/apache/php_apache_http.h
	sapi/apache_hooks/php_apache_http.h
2015-03-05 00:21:38 +00:00
Adam Harvey fd1578c196 Remove the deprecated MySQL extension.
Relevant RFC: https://wiki.php.net/rfc/remove_deprecated_functionality_in_php7
2015-03-05 00:18:40 +00:00
Hannes Magnusson 3c2c029bfd hexadecimal is case*in*sensitive 2015-03-04 16:03:45 -08:00
Dmitry Stogov 6dfff52f61 Improved method inhereitance code and cleanup 2015-03-05 02:10:38 +03:00
Daniel Lowrey b5d97140c0 Merge branch 'tls-alpn'
* tls-alpn:
  Improve test to target specific issue
  Misc updates/cleanup
  Add TLS ALPN extension support in crypto client/server streams
  Add stream_socket_crypto_info() function
  Update for compatibility with newer openssl libs
2015-03-04 13:56:58 -07:00
Dmitry Stogov c9bd24de7a Improved ineritance code 2015-03-04 23:06:07 +03:00
Daniel Lowrey 5de64a29e6 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #68920 (use strict peer_fingerprint input checks)

Conflicts:
	ext/openssl/xp_ssl.c
2015-03-04 12:50:35 -07:00
Daniel Lowrey 241f3c34b8 Fixed bug #68920 (use strict peer_fingerprint input checks) 2015-03-04 12:47:46 -07:00
Anatol Belski 01ccfb7cc9 fix ini registry handling 2015-03-04 19:27:45 +01:00
Daniel Lowrey 8680fc8331 Improve test to target specific issue 2015-03-04 10:23:46 -05:00
Dmitry Stogov ff039c3c6d Merge commit 'refs/pull/1066/head' of git://github.com/php/php-src
* git://github.com/php/php-src:
  Add zend assert deleted by accident
  Let's keep it simple
  Improve internal function return types checking for parent
2015-03-04 18:17:06 +03:00
Dmitry Stogov 13eed2676d Merge commit 'refs/pull/1137/head' of git://github.com/php/php-src
* git://github.com/php/php-src:
  Optimize class constant declare compilation
2015-03-04 18:07:07 +03:00
Dmitry Stogov 68d4575132 Merge branch 'pull-request/1128'
* pull-request/1128:
  Fixed memleak in alloc_globals_ctor
2015-03-04 17:55:02 +03:00
Dmitry Stogov 8ec8648c91 Improved code for class property inheritance 2015-03-04 17:41:01 +03:00
Daniel Lowrey a39b1898fe Misc updates/cleanup 2015-03-04 09:24:27 -05:00
Xinchen Hui fefbddf22b Merge branch 'master' of https://git.php.net/repository/php-src 2015-03-04 18:27:18 +08:00
Xinchen Hui 6b8d5b01bc Add test for previously fixed segfault 2015-03-04 18:26:58 +08:00
Anatol Belski fc5d9175b6 ensure the mail() socket is not leaked after request 2015-03-04 10:24:44 +01:00
Xinchen Hui c16dcd3a8e Fixed segfault 2015-03-04 17:17:48 +08:00
Xinchen Hui ec00a4de4e Merge branch 'PHP-5.6' 2015-03-04 14:49:03 +08:00
Xinchen Hui a29b64fc10 Fixed bug #69159 (Opcache causes problem when passing a variable variable to a function) 2015-03-04 14:48:41 +08:00
Xinchen Hui fffd173b7a indent 2015-03-04 12:10:23 +08:00
Xinchen Hui a6ba7966de Fixed memleak 2015-03-04 12:08:54 +08:00
Xinchen Hui 4ebfc02274 Merge branch 'master' of https://git.php.net/repository/php-src 2015-03-04 11:43:04 +08:00
Xinchen Hui abfdf3bf52 Merge branch 'fix-compile-error' of https://github.com/zxcvdavid/php-src 2015-03-04 11:39:53 +08:00
Reeze Xia 2dac92b244 Silence a empty while loop warning 2015-03-04 11:34:53 +08:00
Reeze Xia 98766e6375 Fixed wrong parameter type of php_stream_mmap_range()
There are several warings about this.
The mode type should be php_stream_mmap_access_t but not php_stream_mmap_operate_t
2015-03-04 11:28:14 +08:00
Xinchen Hui 2fa4d1d88b Fixed wrong type used 2015-03-04 10:55:14 +08:00
Xinchen Hui c7b7cc4c16 Fixed build 2015-03-04 10:49:55 +08:00
zxcvdavid a4a85887e0 Fix compile error 2015-03-04 09:56:50 +08:00
zxcvdavid f1de275e74 Remove the unused vars 2015-03-04 09:52:09 +08:00
Dmitry Stogov 2fa8d67a5c Use zend_string* instead of char* for opened_patch handling. Avoid reallocations and improve string reuse. 2015-03-04 02:05:28 +03:00
Anatol Belski 2841aa95db fix thread safety for win32/sendmail 2015-03-03 20:42:28 +01:00
Anatol Belski 82fd62df19 avoid this pointers play 2015-03-03 19:30:15 +01:00
Anatol Belski 2f79fd8d43 use correct free api 2015-03-03 18:09:28 +01:00
Anatol Belski cddde315c7 Fixed bug #69154 Access violation in php7.dll!_emalloc
one more invalid free
2015-03-03 17:19:17 +01:00
Anatol Belski 3483cc2cf6 ensure there is no connection 2015-03-03 17:19:16 +01:00
Anatol Belski 74813e6f04 fix socket leaking and better connection err check 2015-03-03 17:19:15 +01:00
Anatol Belski dcb944b352 avoid skipif as this indeed should be tested
plus do expect regex .*
2015-03-03 17:19:14 +01:00
Xinchen Hui 4ccbb1ed33 Merge branch 'PHP-5.6' 2015-03-03 23:17:49 +08:00
Xinchen Hui 6183408031 Merge branch 'PHP-5.5' into PHP-5.6 2015-03-03 23:17:37 +08:00
nathan r. hruby 837eeefee9 Make killing a locker an ERROR event
At least in apache, killing a locker with SIGKILL from inside opcache prevents
the child process from emitting a corresponding log event to the access or
error logs, therefore requests are termed with no record.  This makes is
incredibly difficult to debug problems espically on systems with high counts
of cache restarts.  Since INFO level is far too noisy for production use,
switch the killing to a higher level so we can see it easier.
2015-03-03 23:16:45 +08:00
Reeze Xia 31d5b65c74 Fix test 2015-03-03 22:56:23 +08:00
Dmitry Stogov b4e9da22d7 Microoptimization (avoid reloading from memory) 2015-03-03 16:51:27 +03:00
Dmitry Stogov 6b9c40280a Removed deprecated paths. Changed "switch" into series of "if". 2015-03-03 16:49:45 +03:00
Reeze Xia badc19d884 Optimize class constant declare compilation 2015-03-03 21:28:09 +08:00
Reeze Xia 916709cf85 Return void like other functions 2015-03-03 19:13:51 +08:00
Reeze Xia c6cebca1e3 Use zend_parse_parameters_none() 2015-03-03 18:49:49 +08:00
Reeze Xia bc28ed6788 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Remove wrong commit committed by accident
  Fixed bug #69167 (call_user_func does not support references anymore)
  Fixed #69166 (Assigning array_values() to array does not reset key counter)
2015-03-03 18:38:28 +08:00
Reeze Xia f97251adec Add missing zend_parse_parameters_none() for flush() 2015-03-03 18:37:47 +08:00
Xinchen Hui aa63449b6e Remove wrong commit committed by accident 2015-03-03 18:29:26 +08:00
Xinchen Hui 2702739ceb Merge branch 'master' of https://git.php.net/repository/php-src 2015-03-03 18:16:46 +08:00
Xinchen Hui 7ad6711a4d Fixed bug #69167 (call_user_func does not support references anymore) 2015-03-03 18:11:56 +08:00
Reeze Xia 908542c34e Implemented FR #45235 A way to clear or reset the results for error_get_last() 2015-03-03 17:48:03 +08:00
Xinchen Hui 70bd500645 Fixed #69166 (Assigning array_values() to array does not reset key counter) 2015-03-03 17:31:20 +08:00
Reeze Xia bb2e62ecda Merge branch 'PHP-5.6'
* PHP-5.6:
  Improve fix for bug 67741

Conflicts:
	main/main.c
2015-03-03 16:29:41 +08:00
Reeze Xia 808e562f23 Merge branch 'PHP-5.6' of git.php.net:/php-src into PHP-5.6
* 'PHP-5.6' of git.php.net:/php-src:
2015-03-03 16:28:01 +08:00
Reeze Xia 6cb3b941df Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Improve fix for bug 67741
  Added type checks
  Added type checks
2015-03-03 16:27:35 +08:00
Reeze Xia 304fb7a3d6 Merge branch 'PHP-5.5' of git.php.net:/php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:/php-src:
  Added type checks
  Added type checks
2015-03-03 16:27:04 +08:00
Reeze Xia 860fc3947f Improve fix for bug 67741
Thanks to laruence.
2015-03-03 16:25:43 +08:00
Dmitry Stogov 143cc67282 Merge branch 'PHP-5.6'
* PHP-5.6:
  Added type checks
  Update NEWS

Conflicts:
	NEWS
	ext/soap/php_encoding.c
	ext/soap/soap.c
2015-03-03 10:56:11 +03:00
Dmitry Stogov c433f19a6b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Added type checks
2015-03-03 10:46:55 +03:00
Dmitry Stogov b3ac352253 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Added type checks
2015-03-03 10:45:07 +03:00
Dmitry Stogov c8eaca013a Added type checks 2015-03-03 10:43:48 +03:00
Dmitry Stogov 5c03e05692 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  Update NEWS
2015-03-03 10:20:21 +03:00
Dmitry Stogov 66c883c0fd Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6
* 'PHP-5.6' of git.php.net:php-src:
  Update NEWS
2015-03-03 10:19:54 +03:00
Dmitry Stogov dd50ed8a34 Merge branch 'PHP-5.6'
* PHP-5.6:
  Added type checks
  Fixed bug #67741 (auto_prepend_file messes up __LINE__)
  Check variable type before its usage as IS_ARRAY.
  Fixed a bug that header value is not terminated by '\0' when accessed through getenv().

Conflicts:
	ext/soap/php_encoding.c
	ext/soap/php_http.c
	ext/soap/soap.c
2015-03-03 10:19:12 +03:00
Dmitry Stogov 26827a0111 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Added type checks
  Fixed bug #67741 (auto_prepend_file messes up __LINE__)
  Check variable type before its usage as IS_ARRAY.
  Fixed a bug that header value is not terminated by '\0' when accessed through getenv().
2015-03-03 09:59:32 +03:00
Dmitry Stogov 035d80523f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Added type checks

Conflicts:
	ext/soap/soap.c
2015-03-03 09:52:21 +03:00
Dmitry Stogov 0c136a2abd Added type checks 2015-03-03 09:44:46 +03:00
Reeze Xia f353162ca2 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Update NEWS
  Fixed bug #67741 (auto_prepend_file messes up __LINE__)
  Check variable type before its usage as IS_ARRAY.
  Fixed a bug that header value is not terminated by '\0' when accessed through getenv().

Conflicts:
	NEWS
2015-03-03 14:37:06 +08:00
Reeze Xia bb466d57ae Update NEWS 2015-03-03 14:22:03 +08:00
Dmitry Stogov a64e12e2a1 pefree() -> efree() 2015-03-03 09:09:28 +03:00
Reeze Xia c6e415aeb2 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #67741 (auto_prepend_file messes up __LINE__)

Conflicts:
	main/main.c
2015-03-03 11:44:52 +08:00
Reeze Xia 4e2c87edb3 Fixed bug #67741 (auto_prepend_file messes up __LINE__)
This also fixes bug #54081
2015-03-03 11:43:23 +08:00
Reeze Xia 34f09b6240 Fixed bug #67741 (auto_prepend_file messes up __LINE__)
This also fixes bug #54081
2015-03-03 11:25:30 +08:00
Dmitry Stogov fa2450c5f8 Don't inline helpers for ArrayAccess objects 2015-03-03 03:28:31 +03:00
Dmitry Stogov b7f4f48b9e Strength reduction 2015-03-02 23:46:28 +03:00
Jeremy Mikola dea7bc8786 Regression tests for SplFileInfo class setters
Adds tests for SplFileInfo class setters accepting either the base and child classes, and throwing an exception for unexpected classes.

Related: http://svn.php.net/viewvc?view=revision&revision=336017 and https://github.com/facebook/hhvm/pull/4917
2015-03-02 14:45:26 -05:00
Xinchen Hui a78998c48b Add a XFAIL test, which I'd like to think more about a better fix 2015-03-02 22:50:51 +08:00
Dmitry Stogov fc1f24b7a6 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Check variable type before its usage as IS_ARRAY.
  Fixed a bug that header value is not terminated by '\0' when accessed through getenv().
2015-03-02 12:30:38 +03:00
Dmitry Stogov d5248f67b5 Check variable type before its usage as IS_ARRAY. 2015-03-02 12:27:36 +03:00
Dmitry Stogov 9a20323e19 Improved assert() according to expectations RFC.
See https://wiki.php.net/rfc/expectations

Squashed commit of the following:

commit 3f3651a7870738e35ec541e53b53069152135b24
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Mon Mar 2 11:56:33 2015 +0300

    opcode 137 is used for ZEND_OP_DATA and con't be reused for ZEND_ASSERT_CHECK

commit ca8ecabf2a5f97f9116839c33396c9a7037e4368
Merge: 24328ac 9dac923
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Mon Mar 2 10:49:23 2015 +0300

    Merge branch 'master' into assert

    * master:
      Update NEWS
      Fixed bug #69139 (Crash in gc_zval_possible_root on unserialize)
      windows only test
      Align entries format
      Align entries format for 5.6.7
      Align entries format for 5.5.23
      Bump header year
      Fixed bug #69144 (strtr not replacing with partly matching replace pairs)
      Fixed test?
      Revert mktime()/gmmktime()'s arginfo
      Update NEWS
      Fixed bug #69141 Missing arguments in reflection info for some builtin functions
      Add NEWS entry
      Remove useless date warning
      Fix ARG_INFO for levenshtein
      Fix ARG_INFO for levenshtein
      fix dir separator in tests
      Update NEWS
      Fixed bug #69085 (SoapClient's __call() type confusion through unserialize()).

commit 24328ac03f79a0f3b19be7411bf9e173f392abda
Merge: 021fd94 1cdee9a
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Feb 27 15:57:13 2015 +0300

    Merge branch 'master' into assert

    * master:
      Fixed C++ support
      Fixed bug #69115 crash in mail
      Reorder
      Update NEWs
      Fixed bug #69121 (Segfault in get_current_user when script owner is not in passwd with ZTS build)
      Update News
      Fixed bug #69125 (Array numeric string as key)
      fix bug#68942's patch
      Fixed ability to build unspecialized executor
      Fixed bug #69124 (method name could not be used when by ref)
      Fixed a bug that header value is not terminated by '\0' when accessed through getenv().
      Fixed a bug that header value is not terminated by '\0' when accessed through getenv().

commit 021fd94ed1d692d212e6e30c6c1a9767c3f16f7f
Merge: 49963eb ace1f82
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Thu Feb 26 11:26:03 2015 +0300

    Merge branch 'master' into assert

    * master: (59 commits)
      Improved ASSIGN_DIM handler
      Don't inline slow path
      Revert a part committted by mistake
      Fixed compilation warnings
      Fixed a bug that header value is not terminated by '\0' when accessed through getenv().
      better name
      Improve fix for #69038
      Update NEWs
      Fixed bug #69108 ("Segmentation fault" when (de)serializing SplObjectStorage)
      Added specialized versions of DO_FCALL handler:   DO_ICALL - for internal functions   DO_UCALL - for user functions   DO_FCALL_BY_NAME - plain, most probably user, funcstions (not methods)
      Use cache_slot offsets instead of indexes (simplify run-time instructions)
      Split INIT_FCALL_BY_NAME inti INIT_FCALL_BY_NAME(CONST+STRING) and INIT_DYNAMIC_CALL(CONST-STRING|TMPVAR|CV)
      Support list($a, $b) = $a
      Avoid unnecassary check
      Make zend_array_destroy() to free the corresponding zend_array
      Eliminate check on the fast path
      Make current() and key() receive argument by value.
      Use Firebird default home folder, replace Interbase with Firebird
      Updated NEWS
      updated NEWS
      ...

    Conflicts:
    	Zend/zend_vm_execute.h
    	Zend/zend_vm_opcodes.c
    	Zend/zend_vm_opcodes.h

commit 49963ebf9d2bcd6d2670203dd72884f6ba6c8a4b
Merge: 07b1f92 6b77959
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Thu Feb 19 11:13:08 2015 +0300

    Merge branch 'master' into assert

    * master:
      Implemented AST pretty-printer
      update NEWS to match the actual stuff in 5.6.6
      update NEWS to match the actual stuff in 5.5.22
      update NEWS(add missing entry for the enchant fix, and reorder the entries a bit)
      fix typo in bug#
      update NEWS
      fix email format
      update NEWS
      update 5.6.6 release date in NEWS
      Fix bug #69033 (Request may get env. variables from previous requests if PHP works as FastCGI)
      BFN
      fix test
      fix test
      fix test
      Fixed bug #65593 (Segfault when calling ob_start from output buffering callback)
      Updated NEWS
      add CVE
      5.4.39 next
      Fix associativity to match Perl
      Blast off to space.

    Conflicts:
    	Zend/zend_ast.c

commit 07b1f92ed662f6fa9309e679b83aff328362c98b
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Wed Feb 18 23:06:32 2015 +0300

    fixed pretty-printer (support for "elseif")

commit 5a976c8d85078502b48379996ab066e57533a0c3
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Wed Feb 18 19:50:08 2015 +0300

    Fixed vaeious ptetty-printer issues

commit 69491e8e8e692030b0585aab485146906c0fedaf
Merge: 8473157 3ddc246
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Wed Feb 18 10:18:32 2015 +0300

    Merge branch 'master' into assert

    * master:
      Set PHP_JSON_VERSION to 1.4.0
      Remove unnecessary resource checks in openssl ext
      JSON is now maintained

commit 8473157fbb12d03fff8d5b602865a4b667522a4d
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Wed Feb 18 10:17:26 2015 +0300

    Fixed typo and white spaces

commit 96de5ffc8d604df9797d0141ae5ad9c15e1d6c32
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Wed Feb 18 00:28:39 2015 +0300

    Fixed assert() in namesapaces

commit 5eba069c28e7b6590618707e0b21cdb2dd62a192
Merge: 4a2d9c0 d428bf2
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Feb 17 22:45:55 2015 +0300

    Merge branch 'master' into assert

    * master: (25 commits)
      improve debugability in TS debug builds
      More UPGRADING, in particular on foreach
      Fixed bug #69038 (switch(SOMECONSTANT) misbehaves) for master
      Replace var is introduced
      abstain from using xmlCleanupParser
      fix TS build
      Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone)
      update news
      Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone)
      Port for for bug #68552
      Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone)
      Update NEWS
      Fixed bug #69038 (switch(SOMECONSTANT) misbehaves)
      - BFN
      Don't read the local php.ini when Generating Phar When building phar shared, you can end up loading a previous phar.so that isn't compatible with the php cli being used to generate Phar here.
      - Fixed bug #67827 (broken detection of system crypt sha256/sha512 support)
      Delete json outdated package.xml
      made ZEND_TSRMLS_CACHE_* macros look like function calls
      - Fix merge
      - Fixed bug #67427 (SoapServer cannot handle large messages) patch by: brandt at docoloc dot de
      ...

commit 4a2d9c0953dccd9e78ebee9291e1213419eb9136
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Feb 17 22:45:10 2015 +0300

    Implemented AST pretty-printer to capture expression passed to assert()

commit 7a059b66d51a65159801bd826346721325b89fec
Merge: 9973df7 3892eba
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Mon Feb 16 18:42:28 2015 +0300

    Merge branch 'expect' of github.com:krakjoe/php-src into assert

    * 'expect' of github.com:krakjoe/php-src:
      import expect

    Conflicts:
    	Zend/zend_compile.c
    	Zend/zend_execute_API.c
    	Zend/zend_globals.h
    	Zend/zend_vm_def.h
    	Zend/zend_vm_execute.h
    	Zend/zend_vm_opcodes.c
    	Zend/zend_vm_opcodes.h
    	ext/opcache/Optimizer/block_pass.c
    	ext/opcache/Optimizer/pass1_5.c
    	ext/standard/assert.c
    	ext/standard/tests/assert/assert_error3.phpt

commit 3892eba2bf56a7699453855c995404106322718d
Author: krakjoe <joe.watkins@live.co.uk>
Date:   Sun Feb 2 12:49:35 2014 +0000

    import expect
2015-03-02 12:25:40 +03:00
Xinchen Hui 9dac9237ab Merge branch 'PHP-5.6'
Conflicts:
	ext/standard/var_unserializer.c
	ext/standard/var_unserializer.re
2015-03-01 23:20:22 +08:00
Xinchen Hui 169ac35c66 Update NEWS 2015-03-01 23:17:57 +08:00
Xinchen Hui 672a396d4a Merge branch 'PHP-5.5' into PHP-5.6
Conflicts:
	ext/standard/var_unserializer.c
2015-03-01 23:17:41 +08:00
Xinchen Hui caebb76131 Fixed bug #69139 (Crash in gc_zval_possible_root on unserialize) 2015-03-01 23:16:15 +08:00
Danack c57bde7c9e Fixed SplFixedArray and tests. 2015-03-01 13:44:55 +00:00
Danack a519838ece Fixed ReflectionExtension and ReflectionProperty. 2015-03-01 13:20:07 +00:00
Lior Kaplan 1a35c959a9 Add missing value for error_reporting directive 2015-03-01 15:16:53 +02:00
Danack 043a02605f Fixed ReflectionFunction, ReflectionMethod and ReflectionParameter. 2015-03-01 13:06:58 +00:00
Ferenc Kovacs ddd9411f04 windows only test 2015-03-01 13:02:44 +01:00
Lior Kaplan 3b25766b18 Align entries format 2015-03-01 11:44:30 +02:00
Lior Kaplan 1c6599d804 Merge branch 'PHP-5.6'
* PHP-5.6:
  Align entries format for 5.6.7
  Align entries format for 5.5.23
2015-03-01 11:37:02 +02:00
Lior Kaplan aaaa905912 Align entries format for 5.6.7 2015-03-01 11:36:01 +02:00
Lior Kaplan 041b472d6f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Align entries format for 5.5.23
2015-03-01 11:34:11 +02:00
Lior Kaplan 55f7747bff Align entries format for 5.5.23 2015-03-01 11:32:09 +02:00
Reeze Xia 7109a39ddb Merge branch 'PHP-5.6'
* PHP-5.6:
  Bump header year
  Update NEWS

Conflicts:
	NEWS
2015-03-01 15:15:03 +08:00
Reeze Xia 214350f4f4 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Bump header year
2015-03-01 15:08:20 +08:00
Reeze Xia c98eb695b5 Bump header year 2015-03-01 15:03:21 +08:00
Danack b00cd68d74 Fixed PDORow behaviour and message. 2015-03-01 02:37:57 +00:00
Daniel Lowrey 3e841470c9 Add TLS ALPN extension support in crypto client/server streams 2015-02-28 17:41:30 -05:00
Daniel Lowrey 13acb7ec65 Add stream_socket_crypto_info() function 2015-02-28 17:41:29 -05:00
Daniel Lowrey 3ff36c265f Update for OpenSSL 1.0.2 compatibility 2015-02-28 17:41:29 -05:00
Nikita Popov fcdb6e0811 WIP 2015-02-28 21:20:37 +01:00
Xinchen Hui 54e2020ee3 Fixed bug #69144 (strtr not replacing with partly matching replace pairs) 2015-02-28 22:37:46 +08:00
Xinchen Hui 49d19f6c7c Fixed test? 2015-02-28 22:35:55 +08:00
Reeze Xia 1359dfd18f Revert mktime()/gmmktime()'s arginfo
$is_dst parameter has been removed in commit: 9c5eaac18b
2015-02-28 18:32:18 +08:00
Дмитрий Пацура 77dd2111f9 Array - make krsort FAST_ZPP compatibility 2015-02-28 17:16:17 +08:00
Reeze Xia 6ef477f947 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Update NEWS
2015-02-28 16:45:44 +08:00
Reeze Xia 8b0cf0d7fa Update NEWS 2015-02-28 16:45:26 +08:00
Reeze Xia 968a9f4807 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #69141 Missing arguments in reflection info for some builtin functions
2015-02-28 16:43:41 +08:00
Reeze Xia 1b240ff9e3 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #69141 Missing arguments in reflection info for some builtin functions
2015-02-28 16:40:06 +08:00
Reeze Xia f824f91ac9 Fixed bug #69141 Missing arguments in reflection info for some builtin functions
This include:

- setcookie (missing "httponly")
- setrawcookie (missing "httponly")
- spl_autoload_register (missing 2 optional params)
- mktime  (missing "is_dst")
- gmmktime (missing "is_dst")
2015-02-28 16:37:14 +08:00
Reeze Xia 85316b4bf0 Fixed memleak in alloc_globals_ctor
This free operation is missed when new MM was introduced in master.
2015-02-28 13:14:39 +08:00
Elan Ruusamäe ce73a47996 merge ZEND_SIGNED_MULTIPLY_LONG for i386 and x86_64
as the definitions are identical
refs b7eb3c1c5a
2015-02-28 01:43:53 +02:00
Bob Weinand ed10253311 Add NEWS entry 2015-02-27 23:28:19 +01:00
Bob Weinand b22caa81ee Remove useless date warning 2015-02-27 23:27:09 +01:00
Nikita Popov ffe47393ab Merge branch 'PHP-5.6' 2015-02-27 23:24:02 +01:00
Nikita Popov b41b229d78 Merge branch 'PHP-5.5' into PHP-5.6 2015-02-27 23:23:49 +01:00
Дмитрий Пацура e9c6798721 Fix ARG_INFO for levenshtein
This can work with 2 parameters (require)

refs http://php.net/manual/ru/function.levenshtein.php
refs https://github.com/phalcon/zephir/issues/753
2015-02-27 23:23:24 +01:00
Дмитрий Пацура 5806e370d2 Fix ARG_INFO for levenshtein
This can work with 2 parameters (require)

refs http://php.net/manual/ru/function.levenshtein.php
refs https://github.com/phalcon/zephir/issues/753
2015-02-27 23:15:35 +01:00
Anatol Belski 5aec067b34 fix dir separator in tests 2015-02-27 16:48:09 +01:00
Xinchen Hui 1aea0f4b59 Merge branch 'master' of https://git.php.net/repository/php-src 2015-02-27 23:35:56 +08:00
Xinchen Hui 794a28832d Merge branch 'PHP-5.6'
Conflicts:
	ext/soap/soap.c
2015-02-27 23:35:37 +08:00
Xinchen Hui 4119879a39 Update NEWS 2015-02-27 23:33:23 +08:00
Xinchen Hui 86ba1a2444 Merge branch 'PHP-5.5' into PHP-5.6 2015-02-27 23:32:59 +08:00
Xinchen Hui 997b7e5630 Fixed bug #69085 (SoapClient's __call() type confusion through unserialize()). 2015-02-27 23:32:32 +08:00
Dmitry Stogov 1cdee9a5d8 Fixed C++ support 2015-02-27 13:45:11 +03:00
Anatol Belski 30830bcefd Fixed bug #69115 crash in mail
There were two issues

- php_pcre_replace could be used directly and sbject_str could be NULL
- the Windows sendmail variant was freeing something passed from the outside
2015-02-27 10:42:20 +01:00
Xinchen Hui 8f5676f73e Merge branch 'PHP-5.6' 2015-02-27 12:03:04 +08:00
Xinchen Hui 578903578c Merge branch 'PHP-5.5' into PHP-5.6 2015-02-27 12:03:00 +08:00
Xinchen Hui 4eb830b212 Reorder 2015-02-27 12:02:42 +08:00
Xinchen Hui b0e95e1e35 Merge branch 'PHP-5.6' 2015-02-27 12:01:40 +08:00
Xinchen Hui 414bc8ee03 Update NEWs 2015-02-27 12:01:28 +08:00
Xinchen Hui d377cb6207 Merge branch 'PHP-5.5' into PHP-5.6 2015-02-27 12:01:05 +08:00
Xinchen Hui ebfc49aa91 Fixed bug #69121 (Segfault in get_current_user when script owner is not in passwd with ZTS build) 2015-02-27 12:00:52 +08:00
Xinchen Hui a8927cd647 Merge branch 'PHP-5.6' 2015-02-27 11:43:49 +08:00
Xinchen Hui 4b83d02b4b Update News 2015-02-27 11:43:41 +08:00
Xinchen Hui cfaf7c3b5f Merge branch 'PHP-5.5' into PHP-5.6 2015-02-27 11:42:57 +08:00
Xinchen Hui 3e82816ba1 Fixed bug #69125 (Array numeric string as key) 2015-02-27 11:42:36 +08:00
Xinchen Hui 5b8a504519 Merge branch 'PHP-5.6'
Conflicts:
	ext/date/php_date.c
2015-02-27 11:13:07 +08:00
Xinchen Hui 2d1a3ecd27 Merge branch 'PHP-5.5' into PHP-5.6 2015-02-27 11:11:45 +08:00
Taoguang Chen e441d71baa fix bug#68942's patch
Fix type confusion bug in unserialize() with DateTimeZone. https://bugs.php.net/bug.php?id=68942
2015-02-27 10:41:53 +08:00
Dmitry Stogov 2bb9a59175 Fixed ability to build unspecialized executor 2015-02-26 17:53:03 +03:00
Bob Weinand 4b861bde47 Fixed bug #69124 (method name could not be used when by ref) 2015-02-26 14:21:48 +01:00
Dmitry Stogov ace1f82e9c Improved ASSIGN_DIM handler 2015-02-26 02:49:19 +03:00
Dmitry Stogov 716da71446 Don't inline slow path 2015-02-26 01:28:47 +03:00
Dmitry Stogov 803e1432c8 Revert a part committted by mistake 2015-02-25 23:23:10 +03:00
Dmitry Stogov ff86267632 Fixed compilation warnings 2015-02-25 23:20:47 +03:00
George Wang bb491c2de1 Fixed a bug that header value is not terminated by '\0' when accessed through getenv().
Conflicts:
	sapi/litespeed/lsapilib.c
2015-02-25 11:30:33 -05:00
George Wang 65810bf259 Fixed a bug that header value is not terminated by '\0' when accessed through getenv(). 2015-02-25 11:24:19 -05:00
George Wang f13a88ac13 Fixed a bug that header value is not terminated by '\0' when accessed through getenv(). 2015-02-25 11:23:36 -05:00
George Wang 8584cc010a Fixed a bug that header value is not terminated by '\0' when accessed through getenv(). 2015-02-25 10:48:19 -05:00
Xinchen Hui 156e7881b8 Merge branch 'PHP-5.6' 2015-02-25 20:49:51 +08:00
Xinchen Hui 9502d67a8e Merge branch 'PHP-5.5' into PHP-5.6 2015-02-25 20:49:17 +08:00
Xinchen Hui 34d397e267 better name 2015-02-25 20:49:07 +08:00
Xinchen Hui 60f18026eb Merge branch 'PHP-5.6'
Conflicts:
	ext/opcache/Optimizer/zend_optimizer.c
2015-02-25 20:16:15 +08:00
Xinchen Hui d3615b5fb1 Merge branch 'PHP-5.5' into PHP-5.6
Conflicts:
	ext/opcache/tests/bug69038.phpt
2015-02-25 20:13:47 +08:00
Xinchen Hui d508ff9640 Improve fix for #69038 2015-02-25 20:07:02 +08:00
Xinchen Hui aadf7366e0 Merge branch 'PHP-5.6'
Conflicts:
	ext/spl/spl_observer.c
2015-02-25 18:23:54 +08:00
Xinchen Hui d05575afd0 Update NEWs 2015-02-25 18:22:41 +08:00
Xinchen Hui 9641bac0f5 Merge branch 'PHP-5.5' into PHP-5.6 2015-02-25 18:22:18 +08:00
Xinchen Hui ffdc5728c8 Fixed bug #69108 ("Segmentation fault" when (de)serializing SplObjectStorage) 2015-02-25 18:21:59 +08:00
Dmitry Stogov c2c78dc963 Added specialized versions of DO_FCALL handler:
DO_ICALL - for internal functions
  DO_UCALL - for user functions
  DO_FCALL_BY_NAME - plain, most probably user, funcstions (not methods)
2015-02-25 10:37:21 +03:00
Dmitry Stogov 5f278e4d3a Use cache_slot offsets instead of indexes (simplify run-time instructions) 2015-02-25 01:52:35 +03:00
Dmitry Stogov dcb96c2e03 Split INIT_FCALL_BY_NAME inti INIT_FCALL_BY_NAME(CONST+STRING) and INIT_DYNAMIC_CALL(CONST-STRING|TMPVAR|CV) 2015-02-24 22:29:47 +03:00
Nikita Popov bdf1430eeb Support list($a, $b) = $a
By compiling the RHS $a as a non-CV fetch.

This worked as expected in PHP 5, but broke in PHP 7 due to the
different assign order. However the new implementation is more
general, in that it allows $a on the LHS in any place, not just
the first element.
2015-02-24 19:08:23 +01:00
Dmitry Stogov 0ef5a6b409 Avoid unnecassary check 2015-02-24 19:21:21 +03:00
Dmitry Stogov e97ae4fee8 Make zend_array_destroy() to free the corresponding zend_array 2015-02-24 18:34:37 +03:00
Dmitry Stogov 26be614400 Eliminate check on the fast path 2015-02-24 18:34:15 +03:00
Dmitry Stogov 745504ea2a Make current() and key() receive argument by value. 2015-02-24 17:40:25 +03:00
Popa Adrian Marius 3e6380d64b Use Firebird default home folder, replace Interbase with Firebird 2015-02-24 13:58:14 +02:00
Julien Pauli 09c43bd398 Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS
  updated NEWS
  curl: add new proxy constants
2015-02-23 11:23:57 +01:00
Julien Pauli caacaee681 Updated NEWS 2015-02-23 11:23:48 +01:00
Julien Pauli 5256ffd4fe Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  curl: add new proxy constants
2015-02-23 11:23:00 +01:00
Julien Pauli 1bfbb546f7 updated NEWS 2015-02-23 11:22:44 +01:00
Linus Unnebäck 63ab6d8249 curl: add new proxy constants 2015-02-23 11:19:36 +01:00
Julien Pauli 4f399a7c36 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed test fails for bug68557
2015-02-23 10:40:45 +01:00
Julien Pauli ee2f749a22 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed test fails for bug68557
2015-02-23 10:35:35 +01:00
Xinchen Hui d5a1a3342b Fixed test fails for bug68557 2015-02-23 10:35:16 +01:00
Derick Rethans a18ffe407c Merge branch 'pr/1103' 2015-02-23 08:57:20 +00:00
Jakub Zelenka ad2b751985 Merge branch 'PHP-5.6'
The fix for master is a bit different (it's fixed in encoder)
2015-02-22 20:54:05 +00:00
Jakub Zelenka 97d809a8a5 Merge branch 'PHP-5.5' into PHP-5.6
Conflicts:
	ext/json/json.c
2015-02-22 20:35:03 +00:00
Jakub Zelenka 591dbcabe5 Fix bug #64695 (JSON_NUMERIC_CHECK has issues with strings that are numbers plus the letter e) 2015-02-22 20:22:47 +00:00
Rasmus Lerdorf 7ea5b3f71c NEWS entry 2015-02-22 08:32:32 -08:00
Rasmus Lerdorf ffd2fda0f3 NEWS entry 2015-02-22 08:31:17 -08:00
Rasmus Lerdorf a9ba407ce1 Fix bug #68166
We can't always efree here
php_escape_html_entities can return an interned_empty_string
2015-02-22 08:25:56 -08:00
Rasmus Lerdorf e12b72d3f7 Fix bug #68166
We can't always efree here
php_escape_html_entities can return an interned_empty_string
2015-02-22 08:14:41 -08:00
Anatol Belski 485345a7f1 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
2015-02-22 16:48:22 +01:00
Anatol Belski 98959f6220 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
2015-02-22 16:47:56 +01:00
Anatol Belski 871d51929b updated NEWS 2015-02-22 16:47:44 +01:00
Anatol Belski 8f6a013c97 updated NEWS 2015-02-22 16:46:39 +01:00
Anatol Belski a31f4ef884 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix Win32 SSPI initialization for digest authentication in cURL
2015-02-22 16:27:27 +01:00
Anatol Belski e656932d0e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix Win32 SSPI initialization for digest authentication in cURL
2015-02-22 16:26:52 +01:00
Anatol Belski 68afd75ecd Merge branch 'pull-request/1112' into PHP-5.5 2015-02-22 16:26:02 +01:00
Grant Pannell 7988f703f8 Fix Win32 SSPI initialization for digest authentication in cURL 2015-02-22 23:34:55 +10:30
Xinchen Hui 078340b563 correct title 2015-02-22 00:22:20 +08:00
Xinchen Hui e3416beb03 Fixed segfault because resource is freed prematurely 2015-02-22 00:19:06 +08:00
Xinchen Hui f25419f8e3 Only do this in debug build 2015-02-21 22:44:51 +08:00
Xinchen Hui 865a719a3f Fixed mem issue with internal return type hinting assert 2015-02-21 22:17:17 +08:00
Anatol Belski 3fd613effb removed duplicated code
the exact same function is already used in ext/standard/flock_compat.*
2015-02-21 14:27:14 +01:00
Anatol Belski 7aec946ddb Merge branch 'PHP-5.6'
* PHP-5.6:
  revisit fix for bug #65272

Conflicts:
	ext/standard/file.c
2015-02-21 14:16:06 +01:00
Anatol Belski 3cf2b7cc2b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  revisit fix for bug #65272

Conflicts:
	ext/standard/file.c
2015-02-21 14:14:24 +01:00
Anatol Belski 6751f8b314 revisit fix for bug #65272 2015-02-21 14:10:59 +01:00
Xinchen Hui ea94be490a Fixed test fails for bug68557 2015-02-21 12:36:38 +08:00
Xinchen Hui 4629f8978e Cleanup globals initialization
No needs explicit inititlize zero for globals in no-zts build.
executor_globals should be initialized in zend side.
2015-02-21 11:35:16 +08:00
Xinchen Hui 2a724becc1 Unused vars 2015-02-21 11:02:20 +08:00
Xinchen Hui 1c31ad4f0d Unused var 2015-02-21 10:58:23 +08:00
Anthony Ferrara 7c8d1e0bd7 Refactor declare placement detection, allow encoding declares before type declares 2015-02-20 15:56:58 -05:00
Anthony Ferrara dc35868a77 Merge branch 'master' into scalar_type_hints_v5 2015-02-20 13:33:35 -05:00
Dmitry Stogov e142e31137 Fixed memory leak 2015-02-20 20:50:01 +03:00
Xinchen Hui 09ac3e931c uint32_t 2015-02-21 01:19:07 +08:00
Mariano Iglesias d20da1d92e Renaming test to match Bug #69089 2015-02-20 14:17:11 -03:00
Anthony Ferrara b3be3c5b17 Clean up tri-state logic to use break instead 2015-02-20 11:54:33 -05:00
Anthony Ferrara e3b020b945 Fix declare error behavior so that improper usages will actually error 2015-02-20 11:43:18 -05:00
Julien Pauli c4c3dca302 Fix #67626 2015-02-20 16:07:40 +01:00
Anatol Belski cfae254b6b Merge branch 'PHP-5.6'
* PHP-5.6:
  split test for bug #68557 for windows
2015-02-20 16:02:32 +01:00
Anatol Belski b21d0848c9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  split test for bug #68557 for windows
2015-02-20 16:02:07 +01:00
Anatol Belski 3082177bee split test for bug #68557 for windows 2015-02-20 16:01:34 +01:00
Julien Pauli 043e4fab21 Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS
  Updated NEWS
2015-02-20 15:44:30 +01:00
Julien Pauli 95be012dce Updated NEWS 2015-02-20 15:44:18 +01:00
Julien Pauli 46e5f0c6bb Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Updated NEWS
2015-02-20 15:43:53 +01:00
Julien Pauli 6393556a5d Updated NEWS 2015-02-20 15:43:38 +01:00
Julien Pauli 72af5cda27 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix #68557

Conflicts:
	ext/spl/spl_directory.c
2015-02-20 15:40:46 +01:00
Julien Pauli 13c3b78f1e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix #68557
2015-02-20 15:38:48 +01:00
Sobak b97a9a8098 Drop ZE1-compat leftover 2015-02-20 15:29:54 +01:00
Julien Pauli c111d1cd70 fix #68557 2015-02-20 15:09:35 +01:00
Dmitry Stogov 623810eff4 Use fast SSE2 memcpy() for copying block of data from SHM to process memory 2015-02-20 16:08:57 +03:00
Julien Pauli f4c96ffcb5 Fix #63486 2015-02-20 13:38:35 +01:00
Dmitry Stogov 5100afb7dd Simplify reallocation during copying data from SHM to process memory 2015-02-20 15:38:06 +03:00
Mariano Iglesias e6819794eb Adding 'v' formatting to DateTime::format(), and adding constant DateTime::RFC3339_EXTENDED to output datetime using the RFC3339 extended format (aka ISO8601 extended format) 2015-02-20 09:21:14 -03:00
Dmitry Stogov 5f76eed14e don't count op_arrays stored in opcache SHM 2015-02-20 14:59:30 +03:00
Dmitry Stogov 04836f0e55 Removed dead code 2015-02-20 13:46:32 +03:00
Dmitry Stogov d85113702c Lazy duplication of op_array->static_variables 2015-02-20 13:28:26 +03:00
Dmitry Stogov 582aa41d6f Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed type mismatch
2015-02-20 10:33:07 +03:00
Dmitry Stogov 90421b0d5b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed type mismatch
2015-02-20 10:32:34 +03:00
Dmitry Stogov 9fb48edf3c Fixed type mismatch 2015-02-20 10:31:24 +03:00
Stanislav Malyshev 543f011205 add NEWS for <=> 2015-02-19 23:03:51 +01:00
Nikita Popov 79f26e9ca5 Implement Generator::getReturn() 2015-02-19 20:25:49 +01:00
Michael Wallner 34ff6bbb0d this line got accitentally dropped on merge 2015-02-19 10:50:03 +01:00
Dmitry Stogov 6b779596d7 Implemented AST pretty-printer 2015-02-19 11:11:17 +03:00
Anthony Ferrara c859079962 Remove the aliases of scalar types 2015-02-18 16:43:39 -05:00
Anthony Ferrara c6996a2988 Fix default values for booleans, thanks to virtual types 2015-02-18 16:34:43 -05:00
Ferenc Kovacs e7ee01980e Merge branch 'PHP-5.6'
* PHP-5.6:
  update NEWS to match the actual stuff in 5.6.6
  update NEWS to match the actual stuff in 5.5.22
2015-02-18 20:15:46 +01:00
Ferenc Kovacs 97dd859c9c update NEWS to match the actual stuff in 5.6.6 2015-02-18 20:10:28 +01:00
Ferenc Kovacs d58e76fd69 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update NEWS to match the actual stuff in 5.5.22
2015-02-18 20:09:12 +01:00
Ferenc Kovacs 3d777c8068 update NEWS to match the actual stuff in 5.5.22 2015-02-18 20:08:46 +01:00
Ferenc Kovacs 3c5e0807e0 Merge branch 'PHP-5.6'
* PHP-5.6:
  update NEWS(add missing entry for the enchant fix, and reorder the entries a bit)
  fix typo in bug#
  add CVE
  5.4.39 next
2015-02-18 19:52:32 +01:00
Ferenc Kovacs 73a9c701ad update NEWS(add missing entry for the enchant fix, and reorder the entries a bit) 2015-02-18 19:52:00 +01:00
Ferenc Kovacs 3261995092 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix typo in bug#
  add CVE
  5.4.39 next
2015-02-18 19:49:23 +01:00
Ferenc Kovacs 24be46323b Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix typo in bug#
  add CVE
  5.4.39 next

Conflicts:
	configure.in
	main/php_version.h
2015-02-18 19:48:50 +01:00
Ferenc Kovacs c17a17e44b fix typo in bug# 2015-02-18 19:47:07 +01:00
Ferenc Kovacs 2ee41118c8 Merge branch 'PHP-5.6'
* PHP-5.6:
  update NEWS
2015-02-18 19:40:21 +01:00
Ferenc Kovacs c0a5905522 update NEWS 2015-02-18 19:39:58 +01:00
Ferenc Kovacs a4771ae667 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix email format
2015-02-18 19:20:36 +01:00
Ferenc Kovacs 920de2cbe8 fix email format 2015-02-18 19:20:13 +01:00
Anthony Ferrara d5aaebc355 Disallow block mode for declare(strict_types=1) declarations 2015-02-18 12:43:57 -05:00
Anthony Ferrara 37604b45ba Skip the tests if multibyte isn't loaded to prevent them from being fragile based on encoding availability 2015-02-18 12:00:18 -05:00
Anthony Ferrara ac2ece885f Improve detection of strict_types declaration being first in the file 2015-02-18 11:40:52 -05:00
Anthony Ferrara e2053fa94c Fix bug where return type checking was overzealous and interfered with generators 2015-02-18 10:59:33 -05:00
Anthony Ferrara 9109e48749 Merge in master 2015-02-18 10:35:39 -05:00
Ferenc Kovacs 78bb5091a3 Merge branch 'PHP-5.6'
* PHP-5.6:
  update NEWS
  update 5.6.6 release date in NEWS
  Fix bug #69033 (Request may get env. variables from previous requests if PHP works as FastCGI)
2015-02-18 16:34:02 +01:00
Ferenc Kovacs 941c1a5fa8 update NEWS 2015-02-18 16:33:32 +01:00
Ferenc Kovacs 4bae11b533 update 5.6.6 release date in NEWS 2015-02-18 16:32:57 +01:00
Ferenc Kovacs 68128efa4b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #69033 (Request may get env. variables from previous requests if PHP works as FastCGI)
2015-02-18 16:32:23 +01:00
Anthony Ferrara 00b3e77ead Move declare() to the top of the file only, and allow int->float generalization 2015-02-18 10:26:29 -05:00
Ferenc Kovacs 08b6fe9ef1 Fix bug #69033 (Request may get env. variables from previous requests if PHP works as FastCGI) 2015-02-18 16:24:09 +01:00
Michael Wallner e4294ef6e5 Merge branch 'PHP-5.6'
* PHP-5.6:
  BFN
2015-02-18 14:08:58 +01:00
Michael Wallner 6dfc7cbe61 BFN 2015-02-18 14:08:52 +01:00
Michael Wallner 2137354988 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix test
2015-02-18 14:06:49 +01:00
Michael Wallner ec7ba48e67 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix test
2015-02-18 14:06:39 +01:00
Michael Wallner 83dda66aac fix test 2015-02-18 14:06:32 +01:00
Michael Wallner 6fed9960a9 fix test 2015-02-18 14:05:45 +01:00
Michael Wallner 84fad268d0 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix test
2015-02-18 14:05:10 +01:00
Michael Wallner 23e4af185a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix test
2015-02-18 14:05:02 +01:00
Michael Wallner 8b6919c77c fix test 2015-02-18 14:04:53 +01:00
Michael Wallner b36581aa75 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #65593 (Segfault when calling ob_start from output buffering callback)
2015-02-18 14:04:19 +01:00
Michael Wallner 0d2a2b98c9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #65593 (Segfault when calling ob_start from output buffering callback)
2015-02-18 13:59:32 +01:00
Michael Wallner 225af964c0 Fixed bug #65593 (Segfault when calling ob_start from output buffering callback) 2015-02-18 13:58:31 +01:00
Julien Pauli 86ba107360 Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS
2015-02-18 12:42:02 +01:00
Julien Pauli f977a9f2be Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Updated NEWS
2015-02-18 12:41:47 +01:00
Julien Pauli 73c2e9153a Updated NEWS 2015-02-18 12:40:38 +01:00
Stanislav Malyshev 3551083c2c Merge branch 'pull-request/1007'
* pull-request/1007:
  Fix associativity to match Perl
  Blast off to space.
2015-02-18 08:48:17 +01:00
Remi Collet c6a26cb39d add CVE 2015-02-18 06:44:41 +01:00
Jakub Zelenka 3ddc246b5a Set PHP_JSON_VERSION to 1.4.0 2015-02-17 20:52:06 +00:00
Jakub Zelenka 0676f39ee4 Remove unnecessary resource checks in openssl ext
The resource val is already checking Z_TYPE_P(val) == IS_RESOURCE.
There is no need to call extended resource fetch functions though.
2015-02-17 20:46:36 +00:00
Jakub Zelenka c3bd8cd8a9 JSON is now maintained 2015-02-17 20:44:40 +00:00
Anatol Belski d428bf2d4e improve debugability in TS debug builds
gdb seems to be not always able to fetch the correct context for
thread locals. Thus, the "if (TSRMLS_CACHE)" clause causes gdb to
show crashes which aren't recognized neither with helgrind nor
in release builds. This is reproducable by setting breakpoints on
the exact line where PHP has a tsrm_get_ls_cache() call.
2015-02-17 19:15:22 +01:00
Nikita Popov 31287f0317 More UPGRADING, in particular on foreach
Only doing a shallow description of foreach changes, describing
them completely is too complicated.
2015-02-17 16:02:33 +01:00
Xinchen Hui 7299d43536 Fixed bug #69038 (switch(SOMECONSTANT) misbehaves) for master 2015-02-17 22:05:57 +08:00
Xinchen Hui 034e753c01 Merge branch 'PHP-5.6' 2015-02-17 21:18:46 +08:00
Xinchen Hui 97f8c78b09 Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5 2015-02-17 21:17:06 +08:00
Xinchen Hui ed1967c706 Merge branch 'PHP-5.6' of https://git.php.net/repository/php-src into PHP-5.6 2015-02-17 21:16:53 +08:00
Xinchen Hui e22759b1e5 Replace var is introduced 2015-02-17 21:16:37 +08:00
Anatol Belski 8742276eb3 abstain from using xmlCleanupParser
Depending on circumstances, usage of xmlCleanupParser can affect
the thread local storage, or even cause crashes in single threaded
programs. On shutdown the memory will be freed anyway, however
not using xmlCleanupParser helps to avoid possible shutdown
crashes.
2015-02-17 10:37:52 +01:00
Stanislav Malyshev 4ff333f610 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix TS build

Conflicts:
	ext/date/php_date.c
2015-02-17 07:47:57 +01:00
Stanislav Malyshev 0a331f49c1 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix TS build
2015-02-17 07:47:27 +01:00
Stanislav Malyshev 213725057e fix TS build 2015-02-17 07:47:12 +01:00
Stanislav Malyshev 24f8a68d0a 5.4.39 next 2015-02-17 07:34:00 +01:00
Stanislav Malyshev 70e51db210 Merge branch 'PHP-5.6'
* PHP-5.6:
  update news
  Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone)
  Port for for bug #68552
  Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone)
  - BFN

Conflicts:
	ext/date/php_date.c
2015-02-17 07:10:30 +01:00
Stanislav Malyshev 625ab10f99 Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone) 2015-02-17 07:02:20 +01:00
Stanislav Malyshev c538a2eb12 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update news
2015-02-17 06:58:24 +01:00
Stanislav Malyshev 2e8cd42974 update news 2015-02-17 06:58:14 +01:00
Stanislav Malyshev 78389b29f9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone)
  Port for for bug #68552
  Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone)
  - BFN
2015-02-17 06:57:50 +01:00
Stanislav Malyshev cf7d8eabcc Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Port for for bug #68552
  Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone)
  - BFN
2015-02-17 06:53:48 +01:00
Stanislav Malyshev 29a4e710de Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone) 2015-02-17 06:53:27 +01:00
Stanislav Malyshev bdfe457a2c Port for for bug #68552 2015-02-17 06:53:02 +01:00
Stanislav Malyshev 7b18981830 Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone)
Conflicts:
	ext/date/php_date.c
2015-02-17 06:43:51 +01:00
Nikhil Vimal 27defce2bc More docs for /win32/build/confutils.js
Just adding a few more docs
2015-02-16 23:19:47 -06:00
Xinchen Hui dec83ea4ac Update NEWS 2015-02-17 11:36:44 +08:00
Xinchen Hui 1c0fa36c61 Merge branch 'PHP-5.5' into PHP-5.6 2015-02-17 11:36:15 +08:00
Xinchen Hui 66d3095993 Fixed bug #69038 (switch(SOMECONSTANT) misbehaves) 2015-02-17 11:34:57 +08:00
Felipe Pena 82d347a477 - BFN 2015-02-17 01:14:05 -02:00
Felipe Pena 85aab94d81 - Fix merge 2015-02-17 01:11:48 -02:00
Felipe Pena f6e9ed76ae Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
2015-02-17 01:08:48 -02:00
Felipe Pena 94742054a8 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed bug #67827 (broken detection of system crypt sha256/sha512 support)
  - Fixed bug #67427 (SoapServer cannot handle large messages) patch by: brandt at docoloc dot de
  Update NEWS
2015-02-17 01:08:07 -02:00
Rasmus Lerdorf a96de76753 Don't read the local php.ini when Generating Phar
When building phar shared, you can end up loading
a previous phar.so that isn't compatible with the
php cli being used to generate Phar here.
2015-02-16 18:28:32 -08:00
Felipe Pena 0c01fca444 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  - Fixed bug #67827 (broken detection of system crypt sha256/sha512 support)
  - Fixed bug #67427 (SoapServer cannot handle large messages) patch by: brandt at docoloc dot de
  Update NEWS
2015-02-17 00:28:28 -02:00
Felipe Pena a331ae4630 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed bug #67827 (broken detection of system crypt sha256/sha512 support)
  - Fixed bug #67427 (SoapServer cannot handle large messages) patch by: brandt at docoloc dot de
  Update NEWS
2015-02-17 00:28:11 -02:00
Felipe Pena 8f9ab04d93 - Fixed bug #67827 (broken detection of system crypt sha256/sha512 support) 2015-02-17 00:23:47 -02:00
Danack 44f15b068d Stop trying to call the callback after it has thrown an exception. Also, as an exception has been thrown, there is no need to have a separate error message. 2015-02-16 21:45:21 +00:00
Jakub Zelenka 011eab1047 Delete json outdated package.xml
The package.xml has not been update for more then 8 years and
there is no reason to keep it. It would require quite
a bit of digging in git history to update it which is
not worth it.
2015-02-16 20:07:01 +00:00
Anatol Belski af3ca74501 made ZEND_TSRMLS_CACHE_* macros look like function calls
which also comply with the current semantics for such macros
2015-02-16 17:19:32 +01:00
Felipe Pena abbc82f448 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  - Fix merge
  BFN
2015-02-16 13:09:52 -02:00
Felipe Pena 35a68c276d - Fix merge 2015-02-16 13:09:40 -02:00
Felipe Pena e08bef442c - Fixed bug #67427 (SoapServer cannot handle large messages) patch by: brandt at docoloc dot de 2015-02-16 13:07:26 -02:00
Felipe Pena 812c0c0337 - Fix merge 2015-02-16 12:48:05 -02:00
Felipe Pena d259a853f4 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  - Fixed bug #67427 (SoapServer cannot handle large messages) patch by: brandt at docoloc dot de
  BFN
  Update NEWS
2015-02-16 12:47:30 -02:00
Felipe Pena 83f85a4ab3 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed bug #67427 (SoapServer cannot handle large messages) patch by: brandt at docoloc dot de
  Update NEWS
2015-02-16 12:47:16 -02:00
Felipe Pena 650098868c - Fixed bug #67427 (SoapServer cannot handle large messages) patch by: brandt at docoloc dot de 2015-02-16 12:46:43 -02:00
Felipe Pena 2e913a5251 Merge branch 'master' of git.php.net:/php-src 2015-02-16 12:22:17 -02:00
Felipe Pena a80ad10d9b - Fix merge 2015-02-16 12:21:20 -02:00
Felipe Pena 02de601ff8 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  - Fixed bug #67427 (SoapServer cannot handle large messages) patch by: brandt at docoloc dot de
  BFN
  Update NEWS
2015-02-16 12:08:39 -02:00
Felipe Pena 76a505f09b Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed bug #67427 (SoapServer cannot handle large messages) patch by: brandt at docoloc dot de
  Update NEWS
2015-02-16 12:08:26 -02:00
Felipe Pena 40c60b8212 - Fixed bug #67427 (SoapServer cannot handle large messages) patch by: brandt at docoloc dot de 2015-02-16 12:08:07 -02:00
Antony Dovgal 8d157b67fe Merge branch 'pull-request/995'
* pull-request/995:
  fix bug #68822 (request time is reset too early)
2015-02-16 15:27:54 +03:00
Antony Dovgal dbf7d525a5 BFN 2015-02-16 15:23:13 +03:00
Antony Dovgal 1d94cd4bfa Merge branch 'pull-request/995' into PHP-5.5
* pull-request/995:
  fix bug #68822 (request time is reset too early)
2015-02-16 15:20:39 +03:00
Antony Dovgal c4664d1731 Merge branch 'pull-request/995' into PHP-5.6
* pull-request/995:
  fix bug #68822 (request time is reset too early)
2015-02-16 15:15:11 +03:00
redfoxli 3664345aba fix bug #68822 (request time is reset too early)
this caused wrong time in the logs
2015-02-16 15:10:09 +03:00
Xinchen Hui 9973df7b4f Merge branch 'master' of https://git.php.net/repository/php-src 2015-02-16 14:22:56 +08:00
Xinchen Hui 10fe317300 Merge branch 'PHP-5.6'
Conflicts:
	ext/openssl/openssl.c
2015-02-16 14:18:08 +08:00
Xinchen Hui 8309988111 Fixed bug #68912 (Segmentation fault at openssl_spki_new) 2015-02-16 14:16:52 +08:00
Danack 94e2002de5 Merge branch 'sqlite3_exceptionSegfault56' into sqlite3_exception7
* sqlite3_exceptionSegfault56:
  Fix freeing null segfault. Added test for behaviour.

Conflicts:
	ext/sqlite3/sqlite3.c
2015-02-16 02:22:15 +00:00
Jakub Zelenka 5f82c9256d Update JSON Readme 2015-02-15 20:04:16 +00:00
Jakub Zelenka 549c6fa465 Remove unused destructor in json parser 2015-02-15 19:46:41 +00:00
Jakub Zelenka 911f7b10b1 Add bison 3.0.4 genereted files for json parser
The definitions file (json_parser.tab.h) contains file
system dependent name for C preprocessor guard:

YY_PHP_JSON_YY_HOME_JAKUB_PROG_PHP_MASTER_EXT_JSON_JSON_PARSER_TAB_H_INCLUDED

This is because the srcdir is used for default definitions name.
It's a correct default (--definition=$(srcdir)/json_parser.tab.h)
because the build would fail otherwise. Unfortunately Bison does not have
a special option for defining cpp guard name. The only way would be
using skeleton file but that's not possible with the current
configuration as it requires using a specific bison version
(disallowing range of supported versions).
2015-02-15 19:28:37 +00:00
Jakub Zelenka 09d27da1ba Regenerate json scanner with re2c 0.13.7.5 2015-02-15 18:08:58 +00:00
Xinchen Hui 91859f15a8 Merge branch 'PHP-5.6' 2015-02-15 23:00:41 +08:00
Xinchen Hui 423a057023 Update NEWs 2015-02-15 23:00:34 +08:00
Xinchen Hui fc087ed1ee Merge branch 'PHP-5.6'
Conflicts:
	ext/readline/readline.c
2015-02-15 22:56:56 +08:00
Xinchen Hui edd16831b1 Merge branch 'PHP-5.5' into PHP-5.6 2015-02-15 22:55:42 +08:00
Xinchen Hui a620b79040 Fixed bug #69054 (Null dereference in readline_(read|write)_history() without parameters) 2015-02-15 22:54:05 +08:00
Michael Wallner b046733243 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix detection of mbstate_t with clang
2015-02-15 09:31:47 +01:00
Michael Wallner 4137956d0e fix detection of mbstate_t with clang
AC_TRY_COMPILE expexts a function body
2015-02-15 09:25:03 +01:00
Xinchen Hui e017f35b7f Merge branch 'PHP-5.6'
Conflicts:
	ext/pgsql/pgsql.c
2015-02-14 22:20:33 +08:00
Xinchen Hui 1db720cd6d Merge branch 'PHP-5.5' into PHP-5.6
Conflicts:
	ext/pgsql/pgsql.c
2015-02-14 22:18:13 +08:00
Xinchen Hui 7667f8efc6 Fixed bug #68638 (pg_update() fails to store infinite values) 2015-02-14 22:17:01 +08:00
Xinchen Hui 40a94597ae Merge branch 'PHP-5.4' of https://github.com/wfelipew/php-src into PHP-5.5 2015-02-14 22:03:53 +08:00
Xinchen Hui b73fa1fa8f Fixed build on windows 2015-02-14 12:57:53 +08:00
Nikita Popov 9d1e36e4b6 Some more UPGRADING changes 2015-02-13 21:44:22 +01:00
Yasuo Ohgaki c0dd221a3a Update NEWS 2015-02-14 05:41:04 +09:00
Yasuo Ohgaki d0be36cf5b Update NEWS 2015-02-14 05:40:51 +09:00
Yasuo Ohgaki 7d0e3c01e6 Added NULL byte protection to exec, system and passthru. 2015-02-14 05:37:56 +09:00
Yasuo Ohgaki 5b6269a253 Update NEWS 2015-02-14 05:34:57 +09:00
Yasuo Ohgaki 096fb06dab Merge branch 'PHP-5.6'
* PHP-5.6:
  Add NULL byte protection to exec, system and passthru
2015-02-14 05:28:32 +09:00
Yasuo Ohgaki a54300b3f6 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Add NULL byte protection to exec, system and passthru
2015-02-14 05:27:44 +09:00
Yasuo Ohgaki 3ea76a768c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Add NULL byte protection to exec, system and passthru
2015-02-14 05:26:54 +09:00
Yasuo Ohgaki a8722f5330 Add NULL byte protection to exec, system and passthru 2015-02-14 05:25:04 +09:00
Nikita Popov bfeae649f6 More extensive UPGRADING
I'd like UPGRADING to have a complete list of changes including
code samples and suggested changes. Right now it's only a list
of bullet points, where it is often required to read a linked
RFC to understand the difference.
2015-02-13 20:52:55 +01:00
Dmitry Stogov e10e151e9b Merged zend_array and HashTable into the single data structure.
Now each HashTable is also zend_array, so it's refcounted and may be a subject for Copy on Write
zend_array_dup() was changed to allocate and return HashTable, instead of taking preallocated HashTable as argument.
2015-02-13 22:20:39 +03:00
Dmitry Stogov bc630ad6da Get rid of old HashTable iteration API (it doesn't work with constant arrays) 2015-02-13 20:18:29 +03:00
Popa Adrian Marius 8f968c5416 Apply PHP7 firebird fixes after API Cleanup from https://github.com/Jan-E/php-src/commit/8c920a22ac65da485eaf3d2fd27baf2b0406116e 2015-02-13 17:55:17 +02:00
Nikita Popov 03ded8c7ea Remove unused variable 2015-02-13 15:33:50 +01:00
Guilherme Blanco 4498d34aea Check interface/trait extension for internal classes
Removed possibility to have extensions to declare classes extending
interfaces or traits. It was checked in user classes, not extensions
or internal.
2015-02-13 15:31:48 +01:00
Anatol Belski c17e007a29 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix condition
2015-02-13 13:40:37 +01:00
Anatol Belski b3d28d14d6 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix condition
2015-02-13 13:40:10 +01:00
Anatol Belski 5ff77b005b fix condition 2015-02-13 13:39:46 +01:00
Xinchen Hui 627a213761 Merge branch 'master' of https://git.php.net/repository/php-src 2015-02-13 18:27:10 +08:00
Xinchen Hui e5d8a14239 Revert "Cleanup globals initialization"
This reverts commit 309e90638d.
2015-02-13 18:25:44 +08:00
Xinchen Hui 94dcddbc4a Revert "Remove useless TSRMLS by merge"
This reverts commit 5e7fd50376.
2015-02-13 18:25:31 +08:00
Anatol Belski 5d8ebcc73c remove useless condition (same as headers_list()) 2015-02-13 11:21:49 +01:00
Reeze Xia bb20917049 Silence unused variable warning 2015-02-13 10:13:19 +00:00
Reeze Xia 46d9572945 Fixed phpdbg zend_bailout error when compiling syntax error code
@krakjoe if there is something wrong, tell me plz
2015-02-13 17:47:47 +08:00
Xinchen Hui 136594822f Fixed use of uninitliazed pointer 2015-02-13 14:53:13 +08:00
Xinchen Hui 3224459232 Merge branch 'master' of https://git.php.net/repository/php-src 2015-02-13 14:29:27 +08:00
Reeze Xia 39203441ed Fixed phpdbg backtrace argument's name missing 2015-02-13 06:22:04 +00:00
Xinchen Hui da7d94cd73 Merge branch 'PHP-5.6'
Conflicts:
	ext/soap/soap.c
	ext/standard/basic_functions.c
	ext/zlib/zlib.c
2015-02-13 13:28:24 +08:00
Xinchen Hui adc4265792 Merge branch 'PHP-5.5' into PHP-5.6 2015-02-13 13:12:44 +08:00
Xinchen Hui 3a71fa36a2 Micro opt 2015-02-13 13:09:56 +08:00
Xinchen Hui 371c016986 Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5 2015-02-13 12:54:04 +08:00
Xinchen Hui 68ab716f18 Fixed #69015 (php-cgi's getopt does not see $argv)
No test script is added because of complicated
2015-02-13 12:53:34 +08:00
Xinchen Hui 5f285482ea zend_get_parameters_ex is deprecated 2015-02-13 11:26:40 +08:00
Xinchen Hui 5e7fd50376 Remove useless TSRMLS by merge 2015-02-13 11:02:37 +08:00
Xinchen Hui 309e90638d Cleanup globals initialization 2015-02-13 10:58:35 +08:00
Xinchen Hui 2766dbaf6d Unused vars 2015-02-13 10:53:40 +08:00
William Felipe Welter 0421404b73 Fixed bug #68638 pg_update() fails to store infinite values
Fix indent
2015-02-12 23:39:54 -02:00
Dmitry Stogov 12abac8bb7 Limit HashTable size to avoid integer overflow checks 2015-02-13 02:12:42 +03:00
Nikita Popov 2fb85f1058 Cleanup checks in zend_builtin_functions.c
The EXPLICIT_ABSTRACT_CLASS comparisons are no longer necessary.
2015-02-12 23:31:01 +01:00
Nikita Popov 240fbd36f1 Add test to ensure ReflectionClass works correctly with traits
Some of these were not working correctly before Guilherme's patch.
Another was broken by it and is fixed in this commit as well.
2015-02-12 23:25:09 +01:00
Guilherme Blanco 8c81d80e10 Made ZEND_ACC_TRAIT a saner value
CC_TRAIT valued as 0x120 is too magical to be comprehensible by others.
2015-02-12 23:20:19 +01:00
Anatol Belski a0d472e1da Merge branch 'master' of git.php.net:php-src 2015-02-12 20:30:48 +01:00
Anatol Belski 3fe115ae86 Merge branch 'PHP-5.6'
* PHP-5.6:
  backport gd config.w32 to support freetype 2.5
2015-02-12 20:29:51 +01:00
Anatol Belski d05070c98d Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  backport gd config.w32 to support freetype 2.5
2015-02-12 20:29:24 +01:00
Anatol Belski b5aca81de1 backport gd config.w32 to support freetype 2.5 2015-02-12 20:27:48 +01:00
Anatol Belski 07fdc1c78b fix data types 2015-02-12 18:39:40 +01:00
Anatol Belski 08c739c78e fix int to pointer cast 2015-02-12 18:39:39 +01:00
Dmitry Stogov 61a1e8d157 Fixed initialization of global variables in ZTS (this caused valgrind reports on few PHPT tests) 2015-02-12 16:51:07 +03:00
Dmitry Stogov 4d2a575db2 Stop using internal array/object pointer in foreach by reference according to https://wiki.php.net/rfc/php7_foreach 2015-02-12 14:36:04 +03:00
Dmitry Stogov 97fe15db43 Fix "forech" statemt behaviour according to https://wiki.php.net/rfc/php7_foreach
Squashed commit of the following:

commit 1e41295097
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Sat Jan 31 07:28:58 2015 +0300

    Generalize HashTableIterator API to allows its usage without involvement of HashTable.nInternalPonter

commit 5406f21b11
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Jan 30 18:08:43 2015 +0300

    Reduced alghorithms complexity

commit b37f1d58d2
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Jan 30 18:08:30 2015 +0300

    Fixed test name

commit fb2d079645
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Jan 30 18:08:05 2015 +0300

    API cleanup

commit 08302c0d6d
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Jan 30 14:20:46 2015 +0300

    Make array_splice() to preserve foreach hash position

commit cc4b7be41e
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Jan 30 12:24:31 2015 +0300

    Make internal function, operation on array passed by reference, to preserve foreach hash position

commit 5aa9712b0a
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Jan 30 09:49:35 2015 +0300

    Implement consistent behavior for foreach by value over plain object

commit 4c5b385ff5
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Jan 30 07:56:37 2015 +0300

    More careful iterators update.

commit 721fc9e80d
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Thu Jan 29 21:43:28 2015 +0300

    Added new test

commit 15a23b1218
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Thu Jan 29 21:05:02 2015 +0300

    Reimplement iteration magic with HashTableIterators (see https://wiki.php.net/rfc/php7_foreach#implementation_details)

commit 10a3260b1f
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Thu Jan 29 21:04:44 2015 +0300

    New test

commit eef80c5837
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Wed Jan 28 16:52:21 2015 +0300

    Fixed foreach by reference iteration over constant array

commit 61e7391873
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Wed Jan 28 14:59:54 2015 +0300

    Fixed temporary variable re-allocation pass

commit 92e90c09f0
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Wed Jan 28 12:44:57 2015 +0300

    Fixed operand destruction in case of exceptions in iterator

commit dd2a36a207
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Wed Jan 28 10:02:34 2015 +0300

    Use GET_OP1_ZVAL_PTR_DEREF() (IS_TMP_VAR and IS_CONST can't be IS_REFERENCE)

commit 4638f7b914
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Wed Jan 28 07:43:28 2015 +0300

    Change "foreach" statement behavior (this is just a PoC yet)

    - "foreach by value" don't relay on internal array/object pointer and doesnt perform array duplication. It just locks it incrementing reference counter. If the original array is modified by some code, the copy on write is performed and "foreach" still work with the old copy.

    - it makes no difference if array given to "foreach by value" is reference itself

    - "foreach by reference" still use internal array/object pointer and should work similar to PHP-5. (This id not completely implemented)
2015-02-12 13:57:12 +03:00
Yasuo Ohgaki 741b5952c6 Pass maxlifetime to save handlers 2015-02-12 13:07:27 +09:00
Xinchen Hui b83352ccf3 Merge branch 'PHP-5.6' 2015-02-12 11:28:42 +08:00
Xinchen Hui 3ae88e023c Merge branch 'PHP-5.5' into PHP-5.6 2015-02-12 11:28:30 +08:00
Xinchen Hui c2062ca470 Added test for #69017 2015-02-12 11:28:16 +08:00
Xinchen Hui 6fc575ab1c Merge branch 'PHP-5.6' 2015-02-12 11:20:35 +08:00
Xinchen Hui 7062465be0 Merge branch 'PHP-5.5' into PHP-5.6 2015-02-12 10:59:59 +08:00
Xinchen Hui f2940b7120 Fixed bug #69017 (Fail to push to the empty array with the constant value defined in class scope) 2015-02-12 10:59:28 +08:00
Lior Kaplan ee9a899114 Merge branch 'PHP-5.6'
* PHP-5.6:
  Add missing NEWS entry for revert of bug #41631
  Add CVE ID to bug #68676
  Align email format for recent NEWS entries
  Bug #55508 was fixed in 5.5.19 with 15ba757a, not in 5.5.18
  Add missing NEWS entry for revert of bug #41631
  Add missing NEWS entry for bug #68027
  Align format for bug #68799
  Bug #68361 was fixed in 5.5.20 using 327d4f9a, not in 5.5.19
  Bug #55618 was fixed in 5.5.21 using eaf107c0
  Add security bugs fixed in 5.5.18
  Add CVE ID to bug #68676
  Align email format for recent NEWS entries
2015-02-11 22:41:52 +02:00
Lior Kaplan 047803268c Align format to Fixed bug #... , later used to create the website changelog 2015-02-11 22:41:24 +02:00
Lior Kaplan c741faf4bb Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Bug #55508 was fixed in 5.5.19 with 15ba757a, not in 5.5.18
  Add missing NEWS entry for revert of bug #41631
  Add missing NEWS entry for bug #68027
  Align format for bug #68799
  Bug #68361 was fixed in 5.5.20 using 327d4f9a, not in 5.5.19
  Bug #55618 was fixed in 5.5.21 using eaf107c0
  Add security bugs fixed in 5.5.18
  Add CVE ID to bug #68676
  Align email format for recent NEWS entries
2015-02-11 22:30:48 +02:00
Dmitry Stogov a75d1d99b4 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  add missing test for class member access with deference relates to https://wiki.php.net/rfc/uniform_variable_syntax
  fix dir separator in test
2015-02-11 17:41:52 +03:00
Dmitry Stogov 35aea97e42 Fixed bug #69025 (Invalid read of size 4 when calling __callStatic) 2015-02-11 17:41:21 +03:00
Márcio Almada 1849546ada add missing test for class member access with deference
relates to https://wiki.php.net/rfc/uniform_variable_syntax
2015-02-11 15:23:20 +01:00
Anatol Belski 2895912756 fix dir separator in test 2015-02-11 15:10:48 +01:00
Lior Kaplan 701a5f9de9 Add missing NEWS entry for revert of bug #41631 2015-02-11 14:02:55 +02:00
Lior Kaplan b17e2b8214 Add CVE ID to bug #68676 2015-02-11 14:01:55 +02:00
Lior Kaplan 27d6cf4860 Align email format for recent NEWS entries 2015-02-11 14:01:16 +02:00
Lior Kaplan e6d8bad618 Bug #55508 was fixed in 5.5.19 with 15ba757a, not in 5.5.18
See https://github.com/php/php-src/pull/631#issuecomment-61969527
2015-02-11 13:20:44 +02:00
Lior Kaplan 1ebf6fba42 Add missing NEWS entry for revert of bug #41631 2015-02-11 13:15:18 +02:00
Lior Kaplan b582aa9a44 Add missing NEWS entry for bug #68027 2015-02-11 13:13:03 +02:00
Lior Kaplan bb16a6b2c2 Align format for bug #68799 2015-02-11 13:11:55 +02:00
Lior Kaplan f0b329df50 Bug #68361 was fixed in 5.5.20 using 327d4f9a, not in 5.5.19 2015-02-11 13:08:19 +02:00
Lior Kaplan 7bcf62a05b Bug #55618 was fixed in 5.5.21 using eaf107c0 2015-02-11 13:04:32 +02:00
Anatol Belski 52f5cb914e fix incompatible pointer type 2015-02-11 12:03:35 +01:00
Anatol Belski 61d85cedd5 fix values for gid and uid
As stated by MSDN, these fields are always set to zero
2015-02-11 11:46:31 +01:00
Anatol Belski e6bf9b45dd silence unused variable warning 2015-02-11 11:46:30 +01:00
Anatol Belski 12a42433b2 remove useless condition 2015-02-11 11:46:29 +01:00
Anatol Belski 67d94d1465 fix uninitialized value warn 2015-02-11 11:46:28 +01:00
Lior Kaplan 0d68d0a69b Add security bugs fixed in 5.5.18 2015-02-11 12:02:39 +02:00
Lior Kaplan e06da17931 Add CVE ID to bug #68676 2015-02-11 12:00:19 +02:00
Lior Kaplan e7c7788e20 Align email format for recent NEWS entries 2015-02-11 11:05:02 +02:00
Xinchen Hui 63c923e3e1 Forget this change 2015-02-11 16:06:47 +08:00
Xinchen Hui 4f1fc31e16 Expose zend_string_equals_str_ci 2015-02-11 16:05:20 +08:00
Dmitry Stogov 0053b4e899 Fixed possible memory leak 2015-02-11 09:39:38 +03:00
Bob Weinand 4cd3995475 Add a constant of type CONST_PERSISTENT to test 2015-02-10 22:53:50 +01:00
Bob Weinand 2b3bebfa4c Revert removal of two ReflectionParameter functions
Rather fix them for now by exempting function parameter defaults from *any* (non-ct) constant substitution (also from persistent constant substitution, which was already broken before)
2015-02-10 22:20:53 +01:00
Dmitry Stogov 087102c6d3 Don't convert options in-place. They may be elements of constant array. 2015-02-11 00:02:45 +03:00
Anatol Belski 993727031f Merge branch 'PHP-5.6'
* PHP-5.6:
  fix dir separator in test
2015-02-10 16:59:48 +01:00
Anatol Belski 4d8db154ad Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix dir separator in test
2015-02-10 16:59:22 +01:00
Anatol Belski bc3e88b9af fix dir separator in test 2015-02-10 16:58:59 +01:00
Dmitry Stogov d6bea5bb1e Fixed use after free on the following code
sapi/cli/php -r 'function hello(string $world) : string { var_dump(bin2hex($world)); return $world; } echo "foo" . hello(6) . "\n";'
2015-02-10 15:51:16 +00:00
Andrea Faulds b5513cdb69 Add scalar return types test 2015-02-10 15:48:10 +00:00
Andrea Faulds 0294485164 Prevent "undefined variable opline" errors 2015-02-10 15:48:09 +00:00
Andrea Faulds 5a7ac0fade Implement per-file strictness for scalar return types 2015-02-10 15:48:09 +00:00
Andrea Faulds 44ed070a9a Fix Gd usages of ZEND_WRONG_PARAM_COUNT, add usage note 2015-02-10 15:48:09 +00:00
Andrea Faulds 6b6b2b4b7c Implement scalar return types (strict only for now) 2015-02-10 15:48:09 +00:00
Andrea Faulds c7719ab4e5 Refactor typehint lookup 2015-02-10 15:48:08 +00:00
Andrea Faulds cbbaea08da Fix merge error 2015-02-10 15:48:08 +00:00
Andrea Faulds 0af3b7c017 Test behaviour of weak type hints with references 2015-02-10 15:48:08 +00:00
Andrea Faulds 187a95f8d3 Test nested strict/weak function calls 2015-02-10 15:48:08 +00:00
Andrea Faulds c6e8048138 Fix fix 2015-02-10 15:48:08 +00:00
Andrea Faulds 17b3707bad Test strict code including weak code and vice-versa 2015-02-10 15:48:07 +00:00
Andrea Faulds 86b0685f55 Prefix zend_wrong_param_count with _ to discourage use 2015-02-10 15:48:07 +00:00
Andrea Faulds 2985944a8a Fix usage of zend_wrong_param_count in ext/mysqli 2015-02-10 15:48:07 +00:00
Andrea Faulds b112c13a41 Test strict code calling weak code and vice-versa 2015-02-10 15:48:07 +00:00
Andrea Faulds e1a238670c Shorten syntax to strict_types=1 2015-02-10 15:48:07 +00:00
Andrea Faulds ca4901254b Add strict scalar types test 2015-02-10 15:48:06 +00:00
Andrea Faulds fe663cc404 Partial ZPP strictness implementation 2015-02-10 15:48:06 +00:00
Andrea Faulds 02ec3572d9 Per-file 2015-02-10 15:48:06 +00:00
Andrea Faulds cc01e37e54 It Begins 2015-02-10 15:48:06 +00:00
Andrea Faulds 5544e37231 Inline 2015-02-10 15:48:06 +00:00
Andrea Faulds 1a28ad036e Forbid scalar type hint names for use, class_alias 2015-02-10 15:48:05 +00:00
Andrea Faulds a03af7ff92 Fix class name prohibition to work for namespaced classes, too 2015-02-10 15:48:05 +00:00
Andrea Faulds a13d13429a Refactor scalar type hints implementation per Dmitry's patch 2015-02-10 15:48:05 +00:00
Andrea Faulds d4dd2a9baf Use new names of arg parsing functions 2015-02-10 15:48:05 +00:00
Andrea Faulds 75a225d0d5 Do not make scalar type hints reserved words, merely reserve class name 2015-02-10 15:48:05 +00:00
Andrea Faulds c3c0f531a2 Scalar type hints with ZPP casting rules 2015-02-10 15:48:04 +00:00
Anatol Belski ca9ab1c993 better alignment + support size_t 2015-02-10 16:02:55 +01:00
Bob Weinand 830d3d79b3 Revert "Revert "Improve and generalize class constant substitution""
This reverts commit 400e65e955.

Removing ReflectionParameter::getDefaultValueConstantName() and isDefaultValueConstant()
They become useless with such optimizations and already anyway are (e.g. CONSTANT?:CONSTANT ... yields the constant back without telling isDefaultValueConstant() about it etc.)
2015-02-10 15:47:17 +01:00
Reeze Xia 6c9d75b44d Add missing header inclusion 2015-02-10 22:30:54 +08:00
Dmitry Stogov 94602028f0 Get rid of old HashTable iteration API 2015-02-10 16:59:34 +03:00
Reeze Xia 2b396a8092 Update libmagic.patch to reflect changes made 2015-02-10 20:48:58 +08:00
Dmitry Stogov 1eb4352143 Use new ZEND_HASH_FOREACH_... API. 2015-02-10 15:43:12 +03:00
Anatol Belski 4a875e18fd use portable strtol 2015-02-10 13:06:57 +01:00
Dmitry Stogov 4241a090ad Avoid reallocation in preg_replace() if nothing was replaced 2015-02-10 13:30:25 +03:00
Ferenc Kovacs 0be776b1fe Merge branch 'PHP-5.6'
* PHP-5.6:
  oops, forgot sudo for make install
2015-02-10 11:18:43 +01:00
Ferenc Kovacs 5e1bb07701 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  oops, forgot sudo for make install
2015-02-10 11:18:34 +01:00
Ferenc Kovacs bf9fb65001 oops, forgot sudo for make install 2015-02-10 11:18:19 +01:00
Ferenc Kovacs ae24d24e30 add php7 compatible pear installer built from their stable branch 2015-02-10 10:37:44 +01:00
Ferenc Kovacs f4880774b6 Merge branch 'PHP-5.6'
* PHP-5.6:
  add make install
2015-02-10 10:36:45 +01:00
Ferenc Kovacs ac54df17df Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  add make install

Conflicts:
	travis/compile.sh
2015-02-10 10:36:25 +01:00
Ferenc Kovacs a8d001aedf add make install 2015-02-10 10:34:52 +01:00
Anatol Belski d7c6c65399 Merge branch 'php7_removals' 2015-02-10 10:09:53 +01:00
Anatol Belski 56ec18c8af updated NEWS 2015-02-10 08:59:10 +01:00
Anatol Belski c97afe2195 updated UPGRADING 2015-02-10 08:56:18 +01:00
Anatol Belski c404518d94 removed obsolete php.ini options 2015-02-10 08:48:19 +01:00
Anatol Belski 293181e50e removed ext/sybase_ct 2015-02-10 08:42:37 +01:00
Anatol Belski 7568605b55 removed ext/mssql 2015-02-10 08:41:57 +01:00
Anatol Belski 575199a754 removed sapi/webjames 2015-02-10 08:41:22 +01:00
Anatol Belski f5c796cee4 removed sapi/tux 2015-02-10 08:40:59 +01:00
Anatol Belski 3ef7136cae removed sapi/thttpd 2015-02-10 08:40:34 +01:00
Anatol Belski 15ab00ddf6 removed sapi/roxed 2015-02-10 08:40:13 +01:00
Anatol Belski 49fc89d1cb removed sapi/pi3web 2015-02-10 08:39:31 +01:00
Anatol Belski 6482e90970 removed sapi/phttpd 2015-02-10 08:38:47 +01:00
Anatol Belski e6f62c50cc removed sapi/milter 2015-02-10 08:38:21 +01:00
Anatol Belski 4fedc42c2b removed sapi/isapi 2015-02-10 08:37:44 +01:00
Anatol Belski 591f16f392 removed sapi/continuity 2015-02-10 08:37:14 +01:00
Anatol Belski 6d7d1a1bde removed sapi/caudium 2015-02-10 08:36:43 +01:00
Anatol Belski fd9c95bac5 removed sapi/apache2filter 2015-02-10 08:36:12 +01:00
Anatol Belski 53349d69dd removed sapi/apache_hooks 2015-02-10 08:35:36 +01:00
Anatol Belski 51ca2dba53 removed sapi/apache 2015-02-10 08:34:56 +01:00
Anatol Belski 4949fa55ab removed sapi/aolserver 2015-02-10 08:33:34 +01:00
William Felipe Welter 60d5cdf137 Fixed bug #68638 pg_update() fails to store infinite values
Check if value is "infinity" with strcasestr() to add quotes
2015-02-09 20:35:18 -02:00
Bob Weinand 400e65e955 Revert "Improve and generalize class constant substitution"
This reverts commit 9ff3800b79.
2015-02-09 22:44:25 +01:00
Daniel Lowrey 712712e8d6 Merge branch 'PHP-5.6'
Conflicts:
	ext/openssl/xp_ssl.c
2015-02-09 15:14:47 -05:00
Dmitry Stogov f0d9d1828b Fixed dump_bt and printzv 2015-02-09 22:43:22 +03:00
Dmitry Stogov 9d5d736869 Avoid repeatable calls to strstr() 2015-02-09 22:42:37 +03:00
Michael Wallner 09a3e7377a fix json globals 2015-02-09 17:57:18 +01:00
Daniel Lowrey fb2314798e Merge branch 'PHP-5.5' into PHP-5.6
Conflicts:
	ext/openssl/xp_ssl.c
2015-02-09 11:44:09 -05:00
Daniel Lowrey f2b12424c0 NEWS 2015-02-09 11:42:40 -05:00
Daniel Lowrey 1eef4f2a0c Miscellaneous cleanup 2015-02-09 11:42:17 -05:00
Daniel Lowrey a8cb1d2b85 Merge branch 'PHP-5.5' of github.com:bbroerman30/php-src into PHP-5.5 2015-02-09 11:40:04 -05:00
Bob Weinand 9ff3800b79 Improve and generalize class constant substitution 2015-02-09 17:11:23 +01:00
Nikhil Vimal 616bf6601c Adding some inline docs/docs cleanup 2015-02-09 05:41:49 -06:00
Anatol Belski 8989354130 regenerated scanner 2015-02-09 11:22:50 +01:00
Anatol Belski ef2fd13de8 fix datatype mismatches 2015-02-09 11:06:02 +01:00
Anatol Belski 12fff5251b fix inconsistend dll linkage warn 2015-02-09 10:51:29 +01:00
Anatol Belski fc5b349789 size_t vs int 2015-02-09 10:47:39 +01:00
Anatol Belski a1208b4726 use size_t for str length 2015-02-09 10:43:27 +01:00
Anatol Belski 6747c166d8 generate missing json files from config.w32 2015-02-09 10:12:26 +01:00
Xinchen Hui 0698901051 Merge branch 'master' of https://github.com/NikV/php-src 2015-02-09 11:43:37 +08:00
Xinchen Hui 2a4ed626ca Merge branch 'PHP-5.6' 2015-02-09 11:32:53 +08:00
Xinchen Hui 3d1ec33f96 Merge branch 'PHP-5.5' into PHP-5.6 2015-02-09 11:32:32 +08:00
Xinchen Hui d078c59ed9 Merge branch 'improve-bug67436' of https://github.com/reeze/php-src into PHP-5.5 2015-02-09 11:31:59 +08:00
Bob Weinand fc444fbc70 Shut up, my lovely compiler; I do not like your warnings
Conflicts:
	Zend/zend_object_handlers.c
2015-02-09 11:23:35 +08:00
Márcio Almada e9f99e3d71 Márcio Almada remove dead tokens: T_CHARACTER, T_BAD_CHARACTER. 2015-02-08 21:44:44 -03:00
Michael Wallner 3121116a93 fix detection of mbstate_t with clang
AC_TRY_COMPILE expexts a function body
2015-02-08 21:46:16 +01:00
Jakub Zelenka 898f42ec6a Add missing NEWS and UPGRADING for bug #68938 2015-02-08 16:13:22 +00:00
Jakub Zelenka f2825042b4 Merge branch 'master' into jsond
Conflicts:
	ext/json/json.c
2015-02-08 14:08:31 +00:00
Anatol Belski ce9f52adcd Merge branch 'PHP-5.6'
* PHP-5.6:
  moved the part of the test into an appropriate place
2015-02-08 14:13:39 +01:00
Anatol Belski 979020fcad moved the part of the test into an appropriate place 2015-02-08 14:10:52 +01:00
Matteo Beccati b32458f0c9 Removed unused REGISTER_PDO_CONST_LONG 2015-02-08 13:31:01 +01:00
Anatol Belski 371db55871 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix another invalid free of CG(interned_empty_string)
  add tests for #68996
  Fixed #68790 (Missing return)
  Invalid free of CG(interned_empty_string)

Conflicts:
	ext/soap/soap.c
	ext/wddx/wddx.c
	main/main.c
	sapi/litespeed/lsapi_main.c
2015-02-08 12:43:22 +01:00
Anatol Belski ffdc2c4123 Merge branch 'pull-request/1060' into PHP-5.6 2015-02-08 12:33:15 +01:00
manuel cc13d8696f Fix another invalid free of CG(interned_empty_string)
Fixes #68214
2015-02-07 19:17:31 +01:00
manuel 3550cc5fd9 add tests for #68996 2015-02-07 18:52:26 +01:00
George Wang c90cd09331 Fixed #68790 (Missing return) 2015-02-07 12:19:53 -05:00
George Wang c892127f76 Fixed #68790 (Missing return) 2015-02-07 12:18:42 -05:00
George Wang 5e3f0f5671 Fixed #68790 (Missing return) 2015-02-07 12:16:54 -05:00
Nikhil Vimal 90ade85615 Update README.TESTING 2015-02-07 10:35:52 -06:00
Nikhil Vimal 52725009c7 Small Spacing adjustments for better reading 2015-02-07 10:30:07 -06:00
Reeze Xia 49073fcf38 Add zend assert deleted by accident 2015-02-07 19:45:22 +08:00
Reeze Xia 61239e1e8b Let's keep it simple 2015-02-07 19:43:00 +08:00
Anatol Belski 1c331d8d39 added ODBCVER to phpinfo() 2015-02-07 11:23:50 +01:00
Anatol Belski be718e45b0 added PCRE JIT availability info to phpinfo()
and a test to ensure it's enabled
2015-02-07 11:04:53 +01:00
Reeze Xia d9c28c5581 Improve internal function return types checking for parent
Previously the checking was against 'self', 'parent' need
to be checked as user land declearation as well.

This also add two missing test cases.
2015-02-07 14:19:56 +08:00
Reeze Xia 4d034b1a1e Improve tests for bug 67436
I always use a.php or b.php for local testing,
this diff makes the test more stable
2015-02-07 14:11:09 +08:00
Xinchen Hui 594c220dea Fixed issue #1041 (Fix build in OSX with --enable-dtrace) 2015-02-07 11:27:42 +08:00
William Felipe Welter bb3a81c4b4 Fixed bug #68638 pg_update() fails to store infinite values.
Add quotes only if "infinity" values are received.
2015-02-07 01:26:12 -02:00
Anatol Belski 47af2381eb Merge branch 'PHP-5.6'
* PHP-5.6:
  fix setting default ODBCVER value in config.w32
2015-02-06 20:00:26 +01:00
Anatol Belski 464667153d Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix setting default ODBCVER value in config.w32
2015-02-06 19:59:55 +01:00
Anatol Belski 9bf95d8291 fix setting default ODBCVER value in config.w32 2015-02-06 19:59:14 +01:00
Anatol Belski 0f9b686eb2 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
2015-02-06 19:40:16 +01:00
Anatol Belski e6d16c0956 updated NEWS 2015-02-06 19:39:32 +01:00
Anatol Belski 4266f5b1c4 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
2015-02-06 19:39:10 +01:00
Anatol Belski f4319a4f73 updated NEWS 2015-02-06 19:37:01 +01:00
Anatol Belski d0319e60b9 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #68964 Allowed memory size exhausted with odbc_exec
2015-02-06 19:05:43 +01:00
Anatol Belski e46e208819 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #68964 Allowed memory size exhausted with odbc_exec
2015-02-06 19:05:13 +01:00
Anatol Belski a41aa46759 Fixed bug #68964 Allowed memory size exhausted with odbc_exec
This is done in two steps:

- the ODBCVER has to be rased to 0x0300 which corresponds to Sql
  Server 9, otherwise the client will not recognize several SQL
  datatypes

- additionally the config scripts was tweaked so then ODBCVER
  can be overridden, that still allows enabling compatibility
  with lower versions

Bug #67437 might be fixed by this as well.
2015-02-06 19:00:27 +01:00
manuel 13fc7f20a4 Invalid free of CG(interned_empty_string)
On failure php_escape_html_entities returns STR_EMPTY_ALLOC which is an
alias of CG(interned_empty_string) if interned strings are enabled.
Make sure we don't free this.
2015-02-06 16:53:01 +01:00
Xinchen Hui e033af4ed6 Update NEWS 2015-02-06 22:47:16 +08:00
Xinchen Hui 2bdf8d30b4 Merge branch 'master' of https://github.com/mabes/php-src 2015-02-06 22:43:11 +08:00
Xinchen Hui 3b3308a70a Further fix for bug #68987 2015-02-06 21:13:16 +08:00
Maxime BESSON f384971552 Look for PDO include files in the right folder
Configure scripts for extensions look for PDO include files in
$prefix/include/php. This change makes them look into $phpincludedir
instead, which may be different from $prefix/include/php.
2015-02-06 12:06:29 +01:00
Dmitry Stogov 32bd6683d3 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  TSRMLS_* macros have been removed, user don't have to care about the change anymore
2015-02-06 14:03:54 +03:00
Dmitry Stogov da5439b9c8 Re-enable PCRE JIT disabled by b436c714c6 2015-02-06 14:02:15 +03:00
Reeze Xia ff2cccbfdd TSRMLS_* macros have been removed, user don't have to care about the change anymore 2015-02-06 11:46:38 +01:00
Dmitry Stogov bde6f5dbb5 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Upgrade pcre to 8.36
2015-02-06 13:44:22 +03:00
Dmitry Stogov 57496c3836 This should fix compilation on OSX (bug #68987 Failed to compile zend.c with gcc-4.9.2) 2015-02-06 13:42:22 +03:00
Anatol Belski 20a194a92c Merge branch 'pull-request/1047' 2015-02-06 11:18:46 +01:00
Anatol Belski fdfc0ccdf8 Merge branch 'PHP-5.6'
* PHP-5.6:
  Removed erroneous condition
2015-02-06 09:43:15 +01:00
Anatol Belski 63761ab91e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Removed erroneous condition
2015-02-06 09:42:41 +01:00
Anatol Belski 9ef0c39b2b Removed erroneous condition
This condition is always false. Furthermore headers_list() is
documented to always return an array.
2015-02-06 09:41:02 +01:00
Stanislav Malyshev 624419bb71 Merge branch 'PHP-5.6'
* PHP-5.6:
  turn off online tests, they fail too often on CI
  fix tests
  Update header handling to RFC 7230
2015-02-05 22:06:27 -08:00
Stanislav Malyshev af23980de7 turn off online tests, they fail too often on CI 2015-02-05 22:05:36 -08:00
Stanislav Malyshev 57ba83d4e0 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix tests
2015-02-05 21:56:26 -08:00
Stanislav Malyshev 928fdbea08 fix tests 2015-02-05 21:54:47 -08:00
Stanislav Malyshev 93f0b8142b fix BC break in headers_list 2015-02-05 20:24:16 -08:00
Stanislav Malyshev c3eac70c76 Update header handling to RFC 7230 2015-02-05 20:10:28 -08:00
Stanislav Malyshev a1c28567c6 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Update header handling to RFC 7230
2015-02-05 20:10:09 -08:00
Stanislav Malyshev 067340bbc8 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Update header handling to RFC 7230
2015-02-05 20:09:13 -08:00
Stanislav Malyshev f001c63073 Update header handling to RFC 7230 2015-02-05 20:08:12 -08:00
William Felipe Welter b64f149176 Test case Bug #68638 pg_update() fails to store infinite values 2015-02-05 13:19:52 -02:00
Xinchen Hui e82e22e27b Opcache is enable by default 2015-02-05 17:07:30 +08:00
Xinchen Hui a071fc4604 Added CREDITS 2015-02-05 16:58:19 +08:00
Stanislav Malyshev d937517cb3 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix test to not hit php.net
  fix test to not hit php.net
2015-02-05 00:42:21 -08:00
Stanislav Malyshev e9822e090d fix test to not hit php.net 2015-02-05 00:42:11 -08:00
Stanislav Malyshev 2c386b55f2 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix test to not hit php.net
2015-02-05 00:41:55 -08:00
Stanislav Malyshev d33f4c6eb8 fix test to not hit php.net 2015-02-05 00:41:51 -08:00
Stanislav Malyshev 10b15f0f8b Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  Conflicts: 	main/streams/memory.c
2015-02-05 00:41:35 -08:00
Xinchen Hui e70c9f04ec Remove extra space 2015-02-05 16:33:45 +08:00
Xinchen Hui 7ed3e04569 Merge branch 'PHP-5.6' 2015-02-05 16:33:29 +08:00
Xinchen Hui ae90010891 Merge branch 'PHP-5.5' into PHP-5.6
Conflicts:
	main/streams/memory.c
2015-02-05 16:33:20 +08:00
Nayana Hettiarachchi 5446377c6b Conflicts:
main/streams/memory.c
2015-02-05 16:32:30 +08:00
Xinchen Hui aa74a52985 We'd better not include this test script 2015-02-05 16:27:01 +08:00
Xinchen Hui 22a468dc71 return size_t 2015-02-05 16:26:38 +08:00
Xinchen Hui 8f6f32ffe4 Merge branch 'validate_null_pointer_on_php_stream_temp_write' of https://github.com/devzer01/php-src 2015-02-05 16:22:10 +08:00
Stanislav Malyshev ee864f3301 fix test to not hit php.net 2015-02-05 00:11:44 -08:00
Xinchen Hui a3379d6691 Padding 2015-02-05 16:11:44 +08:00
Dmitry Stogov f5a9cfc33a Merge branch 'internal-function-return-types' of github.com:reeze/php-src into test
* 'internal-function-return-types' of github.com:reeze/php-src:
  Add load time return type checking to match user land logic
  Add test function arguments
  Implemented internal function return types
2015-02-05 11:01:07 +03:00
Nayana Hettiarachchi 2794cc8dd2 fix test case 2015-02-05 14:59:17 +08:00
Nayana Hettiarachchi 76aa5d4c8b expand test for #68986 2015-02-05 14:35:01 +08:00
Nayana Hettiarachchi d00fe6fb0c expand test for #68986 2015-02-05 14:34:36 +08:00
Nayana Hettiarachchi b9a75171e9 adding test for #68986 2015-02-05 14:28:40 +08:00
Nayana Hettiarachchi a3e07ff10c #68986 bug fix 2015-02-05 12:26:29 +08:00
Reeze Xia 601fcc31af Add load time return type checking to match user land logic 2015-02-05 11:22:11 +08:00
Reeze Xia 2c84006f5a Add test function arguments 2015-02-05 01:21:42 +08:00
Anatol Belski 067902daee fix data type mismatch 2015-02-04 18:13:29 +01:00
Anatol Belski 4a1e4e2870 fix unitialized val usage 2015-02-04 18:13:28 +01:00
Anatol Belski b5d3c5ca8d follow up fix for headers sent, checking a reference would be always true as well 2015-02-04 18:13:27 +01:00
Anatol Belski 1b87f31ba8 remove unused variable 2015-02-04 18:13:26 +01:00
Anatol Belski 430514e33d fix wars about importing of locally defined symbols 2015-02-04 18:13:25 +01:00
Anatol Belski 614a628ace fix data type 2015-02-04 18:13:24 +01:00
Reeze Xia bff4c47fa7 Implemented internal function return types 2015-02-05 01:04:54 +08:00
Julien Pauli c65f77d195 Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS
2015-02-04 17:46:14 +01:00
Julien Pauli a79f332333 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Updated NEWS
2015-02-04 17:45:38 +01:00
Julien Pauli 959cecf046 Updated NEWS 2015-02-04 17:43:36 +01:00
Julien Pauli 58dee64f51 Merge branch 'PHP-5.6'
* PHP-5.6:
  Revert "Fixed bug #55407 (Impossible to prototype DateTime::createFromFormat)"
2015-02-04 17:40:07 +01:00
Julien Pauli 583af4979b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Revert "Fixed bug #55407 (Impossible to prototype DateTime::createFromFormat)"
2015-02-04 17:39:34 +01:00
Julien Pauli f51b73c833 Revert "Fixed bug #55407 (Impossible to prototype DateTime::createFromFormat)"
This reverts commit 8e19705a93.
2015-02-04 17:39:16 +01:00
Julien Pauli f262e5f250 Merge branch 'PHP-5.6'
* PHP-5.6:
  5.6.7 now
  5.5.23 now

Conflicts:
	configure.in
	main/php_version.h
2015-02-04 17:34:28 +01:00
Julien Pauli 421d309908 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  5.5.23 now

Conflicts:
	configure.in
	main/php_version.h
2015-02-04 17:32:46 +01:00
Dmitry Stogov a787719d4f Removed TSRMLS_D 2015-02-04 18:47:30 +03:00
Julien Pauli e6ea244004 5.6.7 now 2015-02-04 16:37:49 +01:00
Julien Pauli b86529f751 5.5.23 now 2015-02-04 16:35:32 +01:00
Brad Broerman dddbe0fc33 Update xp_ssl.c
Added TSRMLS_CC to php_openssl_sockop_io calls.
2015-02-04 10:13:36 -05:00
Dmitry Stogov 8b46d45a9d Simplify code and add comments 2015-02-04 17:56:14 +03:00
Arjen Schol b436c714c6 Upgrade pcre to 8.36 2015-02-04 14:08:41 +01:00
Dmitry Stogov 9e70d7672d Move zend_object->guards into additional slot of zend_object->properties_table[]. As result size of objects without __get/__set/__unset/__isset magic methods is reduced. 2015-02-04 15:24:13 +03:00
Dmitry Stogov 87377c1707 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Revert "json_decode() should generate a syntax error when given ""."
  Update NEWS
2015-02-04 15:23:40 +03:00
Julien Pauli dee113ba4a Merge branch 'PHP-5.6'
* PHP-5.6:
  Revert "json_decode() should generate a syntax error when given ""."
  Update NEWS
2015-02-04 13:10:59 +01:00
Julien Pauli 93315c4e1d Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Revert "json_decode() should generate a syntax error when given ""."
  Update NEWS
2015-02-04 12:48:57 +01:00
Julien Pauli c85f12e3ac Revert "json_decode() should generate a syntax error when given ""."
This reverts commit a7b3abe4e6.
2015-02-04 12:48:17 +01:00
Dmitry Stogov 7169698088 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Add note aout $HTTP_RAW_POST_DATA
2015-02-04 12:35:59 +03:00
Michael Wallner ef058b7cb5 Add note aout $HTTP_RAW_POST_DATA 2015-02-04 10:22:52 +01:00
Dmitry Stogov 2428fd1c8b Use object pointers instead of handles 2015-02-04 12:01:55 +03:00
Michael Wallner afcaa52c73 Merge branch 'PHP-5.6'
* PHP-5.6:
  make buildconf work as expected; autoconf really needs some help with all those external m4s

Conflicts:
	build/build2.mk
2015-02-04 09:50:14 +01:00
Michael Wallner 4c3b4dc74a make buildconf work as expected;
autoconf really needs some help with all those external m4s
2015-02-04 09:39:02 +01:00
Xinchen Hui 118ed493e1 Update UPGRADING 2015-02-04 14:25:06 +08:00
Xinchen Hui 17286ab869 Attempt to port odbc 2015-02-04 13:58:22 +08:00
Xinchen Hui 77b164edfd Update UPGRADING 2015-02-04 11:42:19 +08:00
Xinchen Hui 6fe8dce671 Merge branch 'resource-api' of https://github.com/laruence/php-src 2015-02-04 11:39:57 +08:00
Yasuo Ohgaki 6230493005 Update UPGRADING.INTERNALS Session section 2015-02-04 11:54:16 +09:00
William Felipe Welter cb3833a3be Fixed bug #68638 pg_update() fails to store infinite values.
Regex to check float values changed to accept "infinity" values
and ignore case. Quotes are added to prevent syntax error on
PostgreSQL.
2015-02-03 22:47:05 -02:00
Yasuo Ohgaki dbb1298fdb Fixed typos in comments 2015-02-04 05:00:03 +09:00
Jakub Zelenka 0a81f9a0bd Merge branch 'master' into jsond 2015-02-03 19:27:24 +00:00
Anatol Belski 55cefb2814 fix condition
the headers member is allocated together with the SAPI globals struct
2015-02-03 17:52:19 +01:00
Anatol Belski 73a6e7e24a fix int to void * cast 2015-02-03 17:52:18 +01:00
Anatol Belski d920cc427b fix incompatible pointer warning
php_alphasort() isn't directly compatible with qsort() cb def
2015-02-03 17:52:18 +01:00
Anatol Belski fe39840450 fix incompatible pointer type warning 2015-02-03 17:52:17 +01:00
Dejan Marjanovic 836dcb1da7 Rename __callstatic (internal name) to __callStatic (userland name) in error message 2015-02-03 17:04:52 +01:00
Xinchen Hui 6c7d3ce09a Fixed pgsql tests 2015-02-03 23:50:58 +08:00
Xinchen Hui ef1505821b Merge branch 'PHP-5.6' 2015-02-03 23:24:53 +08:00
Xinchen Hui 1bb7647c6e Fixed indent 2015-02-03 23:24:34 +08:00
Xinchen Hui 38829b3b4b Merge branch 'master' into resource-api 2015-02-03 23:01:48 +08:00
Dmitry Stogov 6720716682 Optimize class lookup 2015-02-03 17:39:05 +03:00
Xinchen Hui 22d8393bfa Merge branch 'fix-typo-new-output-api' of https://github.com/n0ts/php-src 2015-02-03 22:29:25 +08:00
Xinchen Hui 5a5c855154 attempt to port oci 2015-02-03 22:17:25 +08:00
Xinchen Hui 64caa97e02 Fixed test fails 2015-02-03 22:09:37 +08:00
Xinchen Hui 2c842dfce0 Fixed shmop tests fails 2015-02-03 22:07:31 +08:00
Xinchen Hui d4546601f3 Fixed mysql tests fails 2015-02-03 22:04:24 +08:00
Yasuo Ohgaki bffdc4c37e Update NEWS 2015-02-03 19:48:53 +09:00
Yasuo Ohgaki 539fd65915 Update NEWS 2015-02-03 19:45:20 +09:00
Yasuo Ohgaki feef180e6c Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed Bug #67988 htmlspecialchars() does not respect default_charset specified by ini_set.

Conflicts:
	main/main.c
	tests/basic/encoding.phpt
2015-02-03 19:00:13 +09:00
Yasuo Ohgaki 436ba1c488 Fixed Bug #67988 htmlspecialchars() does not respect default_charset specified by ini_set. 2015-02-03 18:52:46 +09:00
Yasuo Ohgaki 30b4a32e09 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed Bug #65199 pg_copy_from() modifies input array variable

Conflicts:
	ext/pgsql/pgsql.c
2015-02-03 15:40:59 +09:00
Yasuo Ohgaki 36f73412c1 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed Bug #65199 pg_copy_from() modifies input array variable
2015-02-03 15:27:19 +09:00
Yasuo Ohgaki f8a8ccaba2 Fixed Bug #65199 pg_copy_from() modifies input array variable 2015-02-03 15:26:02 +09:00
Xinchen Hui 0d4255de30 Ported pgsql 2015-02-03 13:51:04 +08:00
Yasuo Ohgaki 1aa6242dcf Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed Bug #66623 no EINTR check on flock(LOCK_EX)

Conflicts:
	ext/session/mod_files.c
2015-02-03 14:07:23 +09:00
Yasuo Ohgaki 4dd7851208 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed Bug #66623 no EINTR check on flock(LOCK_EX)
2015-02-03 14:04:03 +09:00
Yasuo Ohgaki b41a6c6f05 Fixed Bug #66623 no EINTR check on flock(LOCK_EX) 2015-02-03 14:02:58 +09:00
Yasuo Ohgaki 5afe554d32 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #68063 Empty session IDs do still start sessions

Conflicts:
	ext/session/session.c
	ext/session/tests/bug61470.phpt
2015-02-03 13:49:14 +09:00
Yasuo Ohgaki 2983ef3c48 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #68063 Empty session IDs do still start sessions
2015-02-03 13:41:31 +09:00
Yasuo Ohgaki 853ae39d6e Fixed bug #68063 Empty session IDs do still start sessions 2015-02-03 13:38:49 +09:00
Xinchen Hui 5c87488a70 Ported dba 2015-02-03 12:07:36 +08:00
Xinchen Hui efc75061ed Ported wddx 2015-02-03 12:02:28 +08:00
Xinchen Hui 2517b56cd1 Ported mcrypt 2015-02-03 11:58:11 +08:00
Yasuo Ohgaki 665997bf16 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Bug #61470 is fixed only in master
2015-02-03 12:26:25 +09:00
Yasuo Ohgaki 17beba686e Bug #61470 is fixed only in master 2015-02-03 12:26:01 +09:00
Yasuo Ohgaki e93042998a Fixed bug #61470 - session_regenerate_id() does not create session file.
Made session_regenerate_id() raise error for wrong usage.
2015-02-03 12:23:00 +09:00
Jakub Zelenka c3cd2d33ca Fix invalid test for bug 54484 2015-02-02 20:53:27 +00:00
Jakub Zelenka fdc14c64be Add re2c sources 2015-02-02 19:55:29 +00:00
Jakub Zelenka 3e4c1717ee Merge branch 'master' into jsond 2015-02-02 19:53:32 +00:00
Jakub Zelenka b65205028a Add jsond info to news 2015-02-02 19:48:19 +00:00
Jakub Zelenka 20bae2a503 Give me credit 2015-02-02 19:33:48 +00:00
Yasuo Ohgaki 92576c7c49 XFAIL broken test for now.
Partially fixed test session.save_path difference.
2015-02-03 03:05:03 +09:00
Dmitry Stogov e375ba877a Fixed "delayed" compilation 2015-02-02 20:44:16 +03:00
Daniel Lowrey 37ace4ad89 Merge branch 'PHP-5.6'
Conflicts:
	ext/standard/file.c
2015-02-02 10:58:39 -05:00
Daniel Lowrey f86600c167 Merge branch 'PHP-5.5' into PHP-5.6
Conflicts:
	ext/standard/file.c
2015-02-02 10:52:27 -05:00
Daniel Lowrey f2f467bd96 Fixed bug #65272: correctly set flock() out param in windows 2015-02-02 10:47:54 -05:00
Adam Harvey fea4c22266 Merge branch 'PHP-5.6' 2015-02-02 11:32:03 +00:00
Adam Harvey 05d591dfdf Merge branch 'PHP-5.5' into PHP-5.6 2015-02-02 11:31:54 +00:00
Adam Harvey 9d8b1170aa Let's not assume bash is always /bin/bash. 2015-02-02 11:31:10 +00:00
Adam Harvey 9e20b64a5b Merge branch 'PHP-5.6' 2015-02-02 11:12:27 +00:00
Adam Harvey db375cfd4d Merge branch 'PHP-5.5' into PHP-5.6 2015-02-02 11:11:05 +00:00
Adam Harvey a7b3abe4e6 json_decode() should generate a syntax error when given "".
Fixes bug #68938 (json_decode() decodes empty string without error).
Patch by jeremy at bat-country dot us.
2015-02-02 11:07:34 +00:00
Yasuo Ohgaki c7eea5a79b Merge branch 'PHP-5.6'
* PHP-5.6:
  Add test for bug #61470. It is already fixed.
2015-02-02 18:41:25 +09:00
Yasuo Ohgaki 675a12bbcf Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Add test for bug #61470. It is already fixed.
2015-02-02 18:39:48 +09:00
Yasuo Ohgaki fb803ff819 Add test for bug #61470. It is already fixed. 2015-02-02 18:39:07 +09:00
n0ts 54a5237ec9 Fix typo php_end_ob_buffer 2015-02-02 18:01:50 +09:00
Anatol Belski 79c9dc75de rely on macros from stdint for int constants on 64 bit
32 bit ones are already in use
2015-02-02 09:39:33 +01:00
Xinchen Hui d1559dac04 Ported enchant 2015-02-02 16:33:57 +08:00
Yasuo Ohgaki f248df9003 Cleanup trans sid code. Behavior is unchanged.
Fixed possible injections. Escape values usually internal safe values.
2015-02-02 17:06:16 +09:00
Xinchen Hui 7b41f4a41a Ported ldap 2015-02-02 15:05:20 +08:00
Xinchen Hui e98caf27ea found type is unnecessary 2015-02-02 14:45:19 +08:00
Xinchen Hui 50ae5b31b4 Ported imap 2015-02-02 14:35:50 +08:00
Xinchen Hui f1981365f5 Fixed #68966 (php7 make file ext/session/mod_mm.lo failed) 2015-02-02 14:24:41 +08:00
Xinchen Hui 7ec8eb380d Use resource directly 2015-02-02 13:56:20 +08:00
Xinchen Hui 38efb690c0 Ported ftp 2015-02-02 13:53:03 +08:00
Xinchen Hui 942809909e Cleanup resource handling APIs 2015-02-02 13:23:16 +08:00
Xinchen Hui c9e44dc2df Revert "Revert "Fixed warning "(null)(): supplied resource is not a valid cURL handle resource in Unknown on line 0"""
This reverts commit e78dd7ade2.
2015-02-02 10:32:26 +08:00
Stanislav Malyshev bf55a4e223 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix sizeof size
2015-02-01 12:42:00 -08:00
Stanislav Malyshev 969e389121 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix sizeof size
2015-02-01 12:41:33 -08:00
Stanislav Malyshev 0bfcc2829c Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  - Updated to version 2015.1 (2015a)
2015-02-01 12:41:10 -08:00
Stanislav Malyshev f66f5b2ffa Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix sizeof size
2015-02-01 12:41:00 -08:00
Stanislav Malyshev 7efbd70b03 fix sizeof size 2015-02-01 12:40:38 -08:00
Derick Rethans 437719f7cc - Updated to version 2015.1 (2015a) 2015-02-01 18:31:23 +00:00
Derick Rethans fa729f89e5 Empty merge 2015-02-01 18:31:22 +00:00
Derick Rethans 263fb375bd - Updated to version 2015.1 (2015a) 2015-02-01 18:31:21 +00:00
Derick Rethans 440cefd5a9 Empty merge 2015-02-01 18:31:21 +00:00
Derick Rethans 4d28d12f86 - Updated to version 2015.1 (2015a) 2015-02-01 18:31:19 +00:00
Stanislav Malyshev c752e1b786 Merge branch 'pull-request/1032'
* pull-request/1032:
  do_fstat changes
2015-02-01 00:56:27 -08:00
Stanislav Malyshev b3efc0fb6a Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix #66479: Wrong response to FCGI_GET_VALUES

Conflicts:
	sapi/cgi/fastcgi.c
2015-02-01 00:37:14 -08:00
Stanislav Malyshev c440043de5 Merge branch 'pull-request/884'
* pull-request/884:
  Fix #66479: Wrong response to FCGI_GET_VALUES
2015-02-01 00:36:53 -08:00
Stanislav Malyshev ac3a4e4200 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix #66479: Wrong response to FCGI_GET_VALUES
2015-02-01 00:36:21 -08:00
Frank Stolle 6a905a9a3c Fix #66479: Wrong response to FCGI_GET_VALUES
Requesting Get-Values via FCGI caused an "endless" loop over the last requested parameter and ended with an invalid response. this patch solves this loop bug.

Conflicts:
	sapi/cgi/fastcgi.c
2015-02-01 00:35:23 -08:00
Stanislav Malyshev 62d6f91b3e Merge branch 'pull-request/1011'
* pull-request/1011:
  Fix for a previous commit. i read it as size_t, notssize_t.
  Remove useless tests
2015-02-01 00:21:47 -08:00
Stanislav Malyshev c0237617e1 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #64938: libxml_disable_entity_loader setting is shared between threads

Conflicts:
	ext/libxml/libxml.c
2015-02-01 00:09:44 -08:00
Stanislav Malyshev 463611714c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #64938: libxml_disable_entity_loader setting is shared between threads
2015-02-01 00:09:04 -08:00
Martin Jansen de31324c22 Fix bug #64938: libxml_disable_entity_loader setting is shared between threads
The availability of entity loading is stored in a module global which
previously was only initialized in the GINIT constructor. This had the
effect that disabling the entity loader in one request caused
subsequent requests hitting the same Apache child process to  also have
the loader disabled.

With this change the loader is explicitely enabled in the request init
phase.
2015-02-01 00:08:35 -08:00
Stanislav Malyshev d893814b58 Merge branch 'pull-request/1019'
* pull-request/1019:
  Fix typos
  Fix bug #64938: libxml_disable_entity_loader setting is shared between threads
2015-02-01 00:03:26 -08:00
Joshua Rogers d492bc8b6b Fix for a previous commit. i read it as size_t, notssize_t. 2015-02-01 19:02:25 +11:00
Stanislav Malyshev 0be7d000b4 Merge branch 'pull-request/935'
* pull-request/935:
  Update config.guess and config.sub
2015-01-31 23:59:53 -08:00
Stanislav Malyshev 911f0ea417 Merge branch 'pull-request/1012'
* pull-request/1012:
  Fix uninitalized variables reads. See CWE-457 for more info.
2015-01-31 23:52:10 -08:00
Stanislav Malyshev 50703c900f Merge branch 'PHP-5.6'
* PHP-5.6:
  fix group name handling

Conflicts:
	main/streams/plain_wrapper.c
2015-01-31 23:48:08 -08:00
Stanislav Malyshev c5526291ce Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix group name handling
2015-01-31 23:47:25 -08:00
Joshua Rogers f8bf646fc4 do_fstat changes
Check return values of 'do_fstat' function in all places.
2015-02-01 18:47:09 +11:00
Stanislav Malyshev e5e251b023 fix group name handling 2015-01-31 23:47:03 -08:00
Stanislav Malyshev 87d8e9208c Merge branch 'PHP-5.6'
* PHP-5.6:
  fix TSRM

Conflicts:
	ext/standard/dns.c
2015-01-31 23:35:11 -08:00
Stanislav Malyshev 55d5811f85 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix TSRM
2015-01-31 23:34:44 -08:00
Stanislav Malyshev d82424b46f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix TSRM
2015-01-31 23:34:27 -08:00
Stanislav Malyshev 94d6cb4a78 fix TSRM 2015-01-31 23:34:14 -08:00
Stanislav Malyshev b68e7bd7ba Merge branch 'pull-request/1040'
* pull-request/1040:
  Added two missing opcache ini directives (restrict_api and mmap_base)
2015-01-31 23:24:30 -08:00
Stanislav Malyshev 6c06982d2d Merge branch 'pull-request/1035'
* pull-request/1035:
  fix the day of the week
2015-01-31 23:23:51 -08:00
Stanislav Malyshev 058fa42320 Merge branch 'pull-request/1030'
* pull-request/1030:
  Remove duplicated line
2015-01-31 23:23:23 -08:00
Stanislav Malyshev eb9aa5c011 Merge branch 'pull-request/1025'
* pull-request/1025:
  Use svg instead of png to get better image quality
2015-01-31 23:22:57 -08:00
Stanislav Malyshev 48459273ae Merge branch 'PHP-5.6'
* PHP-5.6:
  add NEWS
2015-01-31 23:20:25 -08:00
Stanislav Malyshev 2560a21d41 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  add NEWS
2015-01-31 23:20:14 -08:00
Stanislav Malyshev 380741daa4 add NEWS 2015-01-31 23:19:23 -08:00
Stanislav Malyshev 3b8c39f1b1 Merge branch 'PHP-5.6'
* PHP-5.6:
  Added test and possible fix for https://bugs.php.net/bug.php?id=67068
2015-01-31 23:17:33 -08:00
Stanislav Malyshev b64cafdb9e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Added test and possible fix for https://bugs.php.net/bug.php?id=67068
2015-01-31 23:17:24 -08:00
Danack dbc0a80b23 Added test and possible fix for https://bugs.php.net/bug.php?id=67068 2015-01-31 23:13:55 -08:00
Stanislav Malyshev e8e0481755 Merge branch 'pull-request/994'
* pull-request/994:
  Added test and possible fix for https://bugs.php.net/bug.php?id=67068
2015-01-31 23:12:00 -08:00
Stanislav Malyshev d6b1865007 Merge branch 'pull-request/988'
* pull-request/988:
  remove PHP4 extension structure compat
2015-01-31 23:11:18 -08:00
Stanislav Malyshev dd15207dc5 Merge branch 'pull-request/945'
* pull-request/945:
  Update zend_accelerator_hash.c
  hashmap sizes
  Wasted Shared Memory aboce 2Gb fix
2015-01-31 23:10:37 -08:00
Stanislav Malyshev c408c80886 Merge branch 'pull-request/989'
* pull-request/989:
  Fix a few tests and remove error/warning for *0
  Fix spaces -> tabs
  Add deprecated notice to invalid DES salts.
2015-01-31 22:04:39 -08:00
Stanislav Malyshev 141b14454c Merge branch 'PHP-5.6'
* PHP-5.6:
  Use better constant since MAXHOSTNAMELEN may mean shorter name
  use right sizeof for memset

Conflicts:
	ext/sockets/sockaddr_conv.c
	ext/standard/dns.c
2015-01-31 21:50:08 -08:00
Stanislav Malyshev 6a960b6d1b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Use better constant since MAXHOSTNAMELEN may mean shorter name
  use right sizeof for memset
2015-01-31 21:48:40 -08:00
Stanislav Malyshev af1f867308 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Use better constant since MAXHOSTNAMELEN may mean shorter name
  use right sizeof for memset
2015-01-31 21:48:14 -08:00
Stanislav Malyshev b30a6d6018 Use better constant since MAXHOSTNAMELEN may mean shorter name 2015-01-31 21:46:56 -08:00
Stanislav Malyshev 2cdbd3537f use right sizeof for memset 2015-01-31 21:30:58 -08:00
Stanislav Malyshev 02fcbe0802 Merge branch 'PHP-5.6'
* PHP-5.6:
  Add mitigation for CVE-2015-0235 (bug #68925)
  Add mitigation for CVE-2015-0235 (bug #68925)
2015-01-31 19:13:46 -08:00
Stanislav Malyshev 41bdd6e7cc Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Add mitigation for CVE-2015-0235 (bug #68925)
  Add mitigation for CVE-2015-0235 (bug #68925)
2015-01-31 19:12:20 -08:00
Stanislav Malyshev 882a375dba Add mitigation for CVE-2015-0235 (bug #68925) 2015-01-31 19:10:52 -08:00
Stanislav Malyshev 237128603f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Add mitigation for CVE-2015-0235 (bug #68925)
2015-01-31 19:08:37 -08:00
Stanislav Malyshev 0f9c708229 Add mitigation for CVE-2015-0235 (bug #68925) 2015-01-31 19:08:13 -08:00
Stanislav Malyshev 457367e0b6 Add mitigation for CVE-2015-0235 (bug #68925) 2015-01-31 19:04:55 -08:00
Yasuo Ohgaki d8803d8147 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed typo in comment
2015-02-01 05:15:27 +09:00
Yasuo Ohgaki d9a9afa499 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed typo in comment
2015-02-01 05:14:56 +09:00
Yasuo Ohgaki c8a12508c7 Fixed typo in comment 2015-02-01 05:14:27 +09:00
PeeHaa 9b6f8bfd4d Added two missing opcache ini directives (restrict_api and mmap_base) 2015-01-31 18:45:01 +01:00
Xinchen Hui cb42fe6777 UPDATE NEWS 2015-01-31 19:12:30 +08:00
Xinchen Hui dc2670bd25 Merge branch 'master' of https://git.php.net/repository/php-src 2015-01-31 18:13:43 +08:00
Xinchen Hui 1a60175e25 Fixed Magic getter bug tickled by Moodle 2015-01-31 18:12:31 +08:00
Michael Wallner f5808f32ac Partially revert. I did not notice there's alaready a .PHONY target for
generated_lists. Force removing configure before running autoconf is
enough to make this work as expected.
2015-01-31 10:57:53 +01:00
Xinchen Hui 8aab1c619c Fixed unused opline warning 2015-01-31 16:50:17 +08:00
Michael Wallner 130d7320b1 Merge branch 'incorrect_close' of github.com:MegaManSec/php-src
* 'incorrect_close' of github.com:MegaManSec/php-src:
  Use correct deallocator in phpdbg
2015-01-30 23:11:33 +01:00
Michael Wallner 0d267bdecc Merge branch 'close_cor' of github.com:MegaManSec/php-src
* 'close_cor' of github.com:MegaManSec/php-src:
  Fix interbase va_start
2015-01-30 23:05:10 +01:00
Michael Wallner c0477fbcb5 Squashed commit of the following:
commit 5cee14b14b
Merge: 6392e1e 59593ba
Author: Shafreeck Sea <renenglish@gmail.com>
Date:   Tue Jan 27 19:15:48 2015 +0800

    Merge branch 'master' of git://github.com/php/php-src

commit 6392e1e86a
Author: Shafreeck Sea <renenglish@gmail.com>
Date:   Tue Jan 27 11:32:04 2015 +0800

    Remove duplicated line
2015-01-30 23:01:26 +01:00
Michael Wallner 3c4540dec9 fix warnings 2015-01-30 22:49:44 +01:00
Michael Wallner 570ed1a1a4 fix warnings 2015-01-30 22:32:00 +01:00
Michael Wallner 7a94243402 fix warnings 2015-01-30 22:19:23 +01:00
Michael Wallner 960d103d63 fix warnings 2015-01-30 21:36:23 +01:00
Michael Wallner 330d158e93 fix warning 2015-01-30 20:11:25 +01:00
Michael Wallner bd06f8bb5f fix warnings 2015-01-30 20:08:17 +01:00
Michael Wallner b72b4084a5 fix warnings 2015-01-30 20:04:04 +01:00
Michael Wallner f6508f9fa2 fix warnings 2015-01-30 19:54:46 +01:00
Michael Wallner 34710ddc59 really only signal reports 2015-01-30 19:52:09 +01:00
Michael Wallner 97b5dabeb1 fix warnings 2015-01-30 19:03:59 +01:00
Michael Wallner d88edb6d96 also catch segfaults reported by subshells 2015-01-30 18:00:23 +01:00
Michael Wallner fa453d5abd make buildconf actually work 2015-01-30 17:58:49 +01:00
Anatol Belski 563e7822fd fix datatype mismatches, improve error checks 2015-01-30 16:31:19 +01:00
Xinchen Hui 35c5855201 Merge branch 'master' of https://git.php.net/repository/php-src 2015-01-30 22:11:50 +08:00
Xinchen Hui 4f5d010269 Fixed segfault introduced in f869bf3829 2015-01-30 22:11:21 +08:00
Anatol Belski 8d054be62f fix datatype mismatches, improve error checks 2015-01-30 14:36:33 +01:00
Anatol Belski 085907d168 fix datatype mismatches, improved error checks 2015-01-30 13:52:11 +01:00
Anatol Belski 3acdbaeba0 fix datatype mismatch warns, improve error check 2015-01-30 12:14:27 +01:00
Anatol Belski 397615071c make the cleanup function as static, as it's not exported 2015-01-30 11:20:25 +01:00
Anatol Belski f6330f9912 fix datatype mismatches, add stronger error checks 2015-01-30 11:10:11 +01:00
Anatol Belski 55936775d2 fix datatype mismatches, improve error checks 2015-01-30 11:02:25 +01:00
Anatol Belski d2f64edf29 remove unused var 2015-01-30 10:31:37 +01:00
Anatol Belski bc5686f5d2 remove unused variable 2015-01-30 10:30:45 +01:00
Anatol Belski aa5e34d79e remove unused var 2015-01-30 10:28:57 +01:00
Xinchen Hui e78dd7ade2 Revert "Fixed warning "(null)(): supplied resource is not a valid cURL handle resource in Unknown on line 0""
This reverts commit 348be58f86.
2015-01-30 17:01:59 +08:00
Xinchen Hui d28af7394a Merge branch 'master' of https://git.php.net/repository/php-src 2015-01-30 16:50:55 +08:00
Xinchen Hui 348be58f86 Fixed warning "(null)(): supplied resource is not a valid cURL handle resource in Unknown on line 0" 2015-01-30 16:50:13 +08:00
Anatol Belski 6895cf6e69 nmake install missing header 2015-01-30 09:24:18 +01:00
Xinchen Hui 007d5f2921 indent 2015-01-30 13:19:27 +08:00
Xinchen Hui 91ce41dc1e Add more test for bug #68937 2015-01-30 13:17:35 +08:00
Xinchen Hui d61556e80c Update NEWs 2015-01-30 13:14:44 +08:00
Xinchen Hui 73288bbea4 Fixed bug #68937 (Segfault in curl_multi_exec) 2015-01-30 13:12:58 +08:00
Xinchen Hui 56ab00b0fe Merge branch 'new_null_de' of https://github.com/MegaManSec/php-src 2015-01-30 11:09:19 +08:00
Xinchen Hui 88e13bda6a Fixed bug #68945 (Unknown admin values segfault pools) 2015-01-30 11:01:42 +08:00
Joshua Rogers 26d5ad6c98 Add check for null pointer, as done in case 5 lines above. 2015-01-30 13:30:17 +11:00
Andrea Faulds d8b7a4480b Fix associativity to match Perl 2015-01-29 17:56:09 +00:00
Andrea Faulds 797dee59cd Blast off to space. 2015-01-29 17:56:09 +00:00
Xinchen Hui 2505aea153 Fixed valgrind issue in mb_ereg_replace_variation1.phpt 2015-01-29 19:28:46 +08:00
Yasuo Ohgaki 7f52978c67 Remove excessive macros 2015-01-29 19:48:50 +09:00
Yasuo Ohgaki 07a5dfca5b Merge branch 'PHP-5.6'
* PHP-5.6:
  Use bash rather than sh
2015-01-29 15:27:24 +09:00
Yasuo Ohgaki 7b06cc8d22 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Use bash rather than sh
2015-01-29 15:27:08 +09:00
zhangjiayin 4047ce01be fix the day of the week
Thu Oct => Fri Oct
2015-01-29 14:24:20 +08:00
Yasuo Ohgaki d463ddd3c7 Use bash rather than sh 2015-01-29 15:21:17 +09:00
Xinchen Hui d96eb4b0a8 reorder the branches 2015-01-29 12:50:56 +08:00
Xinchen Hui 18c647cce2 Merge branch 'master' of https://git.php.net/repository/php-src 2015-01-29 12:35:44 +08:00
Xinchen Hui 14396a3264 ppid must be IS_STRING 2015-01-29 12:35:18 +08:00
Yasuo Ohgaki 70b2d2eefa Use proper type 2015-01-29 13:31:40 +09:00
Xinchen Hui 4da7e4de29 The argument must be not changed in session_start 2015-01-29 12:26:13 +08:00
Xinchen Hui a1d9ceac7a Fixed annoying warnings 2015-01-29 11:59:37 +08:00
Brad Broerman 1482ed2d56 reneg and should_close are not yet members of sslsock. Removing... 2015-01-28 22:36:41 -05:00
Yasuo Ohgaki e727d640f7 Merge branch 'pull-request/1016'
* pull-request/1016:
Implement RFC: Introduce session_start() options
2015-01-29 12:03:58 +09:00
Yasuo Ohgaki 7a97eaf25d Cleanup session id files after test 2015-01-29 10:31:39 +09:00
Yasuo Ohgaki f90f6108c8 Merge branch 'master' into master-rfc-session-lock4
Conflicts:
	UPGRADING
2015-01-29 09:55:36 +09:00
Yasuo Ohgaki 14d68d3641 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed Bug #68941 mod_files.sh is a bash-script
2015-01-29 09:31:21 +09:00
Yasuo Ohgaki 5f28622e09 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed Bug #68941 mod_files.sh is a bash-script
2015-01-29 09:29:11 +09:00
Yasuo Ohgaki abf9e2ea09 Fixed Bug #68941 mod_files.sh is a bash-script 2015-01-29 09:25:28 +09:00
Nikita Popov d133e68bab Remove support for hex number from is_numeric_string 2015-01-28 22:54:17 +01:00
Stanislav Malyshev 14d6de97c5 add imap 2015-01-28 10:15:11 -08:00
Xinchen Hui b7751630d1 Merge branch 'PHP-5.6'
Conflicts:
	ext/phar/phar_object.c
2015-01-29 00:02:03 +08:00
Xinchen Hui 659395e3dd Merge branch 'master' of https://git.php.net/repository/php-src 2015-01-29 00:01:24 +08:00
Xinchen Hui c06f1590a9 Update News 2015-01-29 00:01:13 +08:00
Xinchen Hui 5208113ad1 Merge branch 'PHP-5.5' into PHP-5.6 2015-01-29 00:01:00 +08:00
Xinchen Hui b2cf3f064b Fixed bug #68901 (use after free) 2015-01-29 00:00:09 +08:00
Anatol Belski 4d16937449 fix unportable dereferencing 2015-01-28 15:15:38 +01:00
Popa Adrian Marius be29cb15a6 Merge branch 'master' of https://git.php.net/push/php-src
* 'master' of https://git.php.net/push/php-src:
  Fixed #68868 (Segfault in clean_non_persistent_constants() in SugarCRM 6.5.20)
2015-01-28 15:39:58 +02:00
Popa Adrian Marius b9868f23a0 fbird_close if connection_id omitted, the last opened link is assumed , so it was already closed 2015-01-28 15:39:42 +02:00
Xinchen Hui a0cf025134 Fixed #68868 (Segfault in clean_non_persistent_constants() in SugarCRM 6.5.20) 2015-01-28 17:12:23 +08:00
Yasuo Ohgaki e71099bc4e Remove legacy code 2015-01-28 16:01:10 +09:00
Yasuo Ohgaki 4d747b1356 Forgot to apply important peace of patch 2015-01-28 14:22:22 +09:00
Brad Broerman fd4641696c Updated with SSL fixes (backported from trunk) 2015-01-28 00:04:20 -05:00
Dmitry Stogov 638d0cb753 Merge branch 'typed_returns' of github.com:morrisonlevi/php-src into test
* 'typed_returns' of github.com:morrisonlevi/php-src:
  Implement return types
2015-01-28 06:56:19 +03:00
Xinchen Hui f2f98e51e1 Merge branch 'master' of https://git.php.net/repository/php-src 2015-01-28 10:55:25 +08:00
Yasuo Ohgaki feeaaa4c3f Fixed crash 2015-01-28 08:03:37 +09:00
Stanislav Malyshev 598c935245 update the .re file for PDO 2015-01-27 13:48:24 -08:00
Levi Morrison c8576c5a46 Implement return types
RFC is documented here: https://wiki.php.net/rfc/return_types
2015-01-27 11:49:56 -07:00
Daniel Lowrey 7d663aa90c Merge branch 'windows-ssl-timeout-fix' 2015-01-27 13:23:58 -05:00
Daniel Lowrey 4965fe7fb8 Merge https://github.com/bbroerman30/php-src into windows-ssl-timeout-fix
Conflicts:
	ext/openssl/xp_ssl.c
2015-01-27 13:22:47 -05:00
Stanislav Malyshev 0290571ccf bump the API no 2015-01-27 09:22:20 -08:00
Xinchen Hui 1828ec21e2 Fixed some annoying warnings 2015-01-27 23:28:31 +08:00
Xinchen Hui 95142d9015 Merge branch 'PHP-5.6' 2015-01-27 22:25:55 +08:00
Xinchen Hui b881de9937 Merge branch 'PHP-5.5' into PHP-5.6 2015-01-27 22:25:45 +08:00
Xinchen Hui 4c5995b172 fcgi_write in fpm returns ssizt_t, but it returns int in cgi 2015-01-27 22:25:38 +08:00
Xinchen Hui 737b6f69e3 Merge branch 'PHP-5.6' 2015-01-27 22:20:17 +08:00
Xinchen Hui 92d56b0af6 Merge branch 'PHP-5.5' into PHP-5.6 2015-01-27 22:20:03 +08:00
Xinchen Hui c3ff9aa17d Revert previous unintentional change to this 2015-01-27 22:19:11 +08:00
Xinchen Hui 9fdf62d64a Merge branch 'PHP-5.6'
Conflicts:
	sapi/cgi/cgi_main.c
2015-01-27 22:15:12 +08:00
Xinchen Hui 4f187dd44f Update NEWs 2015-01-27 22:13:30 +08:00
Xinchen Hui 6336fa18c4 Merge branch 'PHP-5.5' into PHP-5.6 2015-01-27 22:13:04 +08:00
Xinchen Hui 8c2d91761a Also Fixed #68571 in CGI SAPI, and some cleanup 2015-01-27 22:11:23 +08:00
Xinchen Hui 6c87372199 Merge branch 'fixbug68571tophp5.5' of https://github.com/redfoxli/php-src into PHP-5.5 2015-01-27 22:04:23 +08:00
Xinchen Hui 68f5eb7e71 minor CS fix 2015-01-27 20:35:25 +08:00
Shafreeck Sea 5cee14b14b Merge branch 'master' of git://github.com/php/php-src 2015-01-27 19:15:48 +08:00
Márcio Almada 927ebc9789 add another test to #1022 2015-01-27 07:16:22 -03:00
Márcio Almada f869bf3829 fix failure with shared zvals in php_str_replace_in_subject 2015-01-27 07:16:22 -03:00
Márcio Almada 1c0dcb268c add failing test for string_replace and array replaces with references
```
make test TESTS=ext/standard/tests/strings/str_replace_*.phpt
```
2015-01-27 07:16:22 -03:00
Xinchen Hui 59593ba66c Fixed #68915 (wrong assertion here) 2015-01-27 15:58:32 +08:00
Shafreeck Sea 6392e1e86a Remove duplicated line 2015-01-27 11:32:04 +08:00
Brad Broerman 8302d658db Quick fix 2015-01-26 21:35:35 -05:00
Brad Broerman db49dd91bd Fixed windows infinite loop problem. 2015-01-26 20:40:52 -05:00
Stanislav Malyshev dfe6aea9ca size_t cleanup for PDO 2015-01-26 16:16:02 -08:00
Joshua Rogers 5863855758 Fix interbase va_start 2015-01-27 09:50:16 +11:00
Joshua Rogers 305c03e757 Use correct deallocator in phpdbg 2015-01-27 09:28:54 +11:00
Bob Weinand 5845f2c0c1 Merge branch 'PHP-5.6'
Conflicts:
	NEWS
	main/streams/filter.c
2015-01-26 22:53:36 +01:00
Bob Weinand 666cb333f7 Merge remote-tracking branch 'origin/PHP-5.5' into PHP-5.6
Conflicts:
	NEWS
2015-01-26 22:51:37 +01:00
Bob Weinand 3f57663b57 Add NEWS entry 2015-01-26 22:50:16 +01:00
Bob Weinand b8461eb9ac Fix call after close if multiple filters are attached 2015-01-26 22:47:35 +01:00
Keyur Govande 5f3dbab0fa One more bad merge fix 2015-01-26 21:44:14 +00:00
Keyur Govande f41d58efa0 Fix bad merge 2015-01-26 21:38:43 +00:00
Keyur Govande 6635466bcc Merge branch 'PHP-5.6'
* PHP-5.6:
  Add NEWS
  Patch commit d9f85373e32 by moving the float_to_double function to a header file.
  Fix for bugs #68114 (Build fails on OS X due to undefined symbols) and #68657 (Reading 4 byte floats with Mysqli and libmysqlclient has rounding errors).
  Patch commit d9f85373e32 by moving the float_to_double function to a header file.
  Fix for bugs #68114 (Build fails on OS X due to undefined symbols) and #68657 (Reading 4 byte floats with Mysqli and libmysqlclient has rounding errors).

Conflicts:
	ext/mysqli/mysqli_api.c
	ext/mysqlnd/mysql_float_to_double.h
2015-01-26 21:36:36 +00:00
Keyur Govande 168877bc78 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Add NEWS
  Patch commit d9f85373e32 by moving the float_to_double function to a header file.
  Fix for bugs #68114 (Build fails on OS X due to undefined symbols) and #68657 (Reading 4 byte floats with Mysqli and libmysqlclient has rounding errors).

Conflicts:
	ext/mysqlnd/config9.m4
2015-01-26 21:32:32 +00:00
Keyur Govande d065a2fc1b Add NEWS 2015-01-26 21:29:57 +00:00
Keyur Govande 4c6918ec17 Patch commit d9f85373e32 by moving the float_to_double function to
a header file.
2015-01-26 21:20:29 +00:00
Keyur Govande b34f8ef599 Fix for bugs #68114 (Build fails on OS X due to undefined symbols)
and #68657 (Reading 4 byte floats with Mysqli and libmysqlclient
has rounding errors).

The patch removes support for Decimal floating point numbers and
now defaults to using similar logic as what libmysqlclient does:
convert a 4 byte floating point number into a string, and then the
string into a double. The quirks of MySQL are maintained as seen in
Field_Float::val_str()
2015-01-26 21:20:29 +00:00
Keyur Govande 1933b556b9 Patch commit d9f85373e32 by moving the float_to_double function to
a header file.
2015-01-26 21:19:00 +00:00
Keyur Govande e51980f4e6 Fix for bugs #68114 (Build fails on OS X due to undefined symbols)
and #68657 (Reading 4 byte floats with Mysqli and libmysqlclient
has rounding errors).

The patch removes support for Decimal floating point numbers and
now defaults to using similar logic as what libmysqlclient does:
convert a 4 byte floating point number into a string, and then the
string into a double. The quirks of MySQL are maintained as seen in
Field_Float::val_str()
2015-01-26 21:19:00 +00:00
Nikita Popov e05993dfa2 Remove dl() on fpm-fcgi 2015-01-26 21:00:23 +01:00
Nikita Popov cb9c99ebd0 Remove preg_replace /e modifier 2015-01-26 21:00:23 +01:00
Nikita Popov 4d3e4d3bf9 Remove assignment of new by reference 2015-01-26 21:00:22 +01:00
Dmitry Stogov 23b683c0d3 Fixed wrong size 2015-01-26 15:33:10 +03:00
Ferenc Kovacs 6cf6b58e35 add a custom built pear installer until we have an official release with php7 compat. see https://github.com/pear/pear-core/pull/33 for the details 2015-01-26 11:14:54 +01:00
Ferenc Kovacs cfd7f5c8a3 Revert "Disable PEAR by default"
This reverts commit df984ad4f5.
2015-01-26 11:14:53 +01:00
Dmitry Stogov 8aa146b810 Fixed use after free 2015-01-26 12:24:33 +03:00
Dmitry Stogov 371dc9b6a6 Fixed bug #68896 (Changing ArrayObject value cause Segment Fault) 2015-01-26 11:25:05 +03:00
Xinchen Hui 91045c4d74 Fixed ext/standard/tests/general_functions/bug41970.phpt fails 2015-01-26 14:41:45 +08:00
Yasuo Ohgaki b45872c2ec Fix typo in doc 2015-01-26 10:24:12 +09:00
Yasuo Ohgaki 7b17980875 Update UPGRADING and UPGRADING.INTERNALS 2015-01-26 06:14:40 +09:00
Jakub Zelenka 22394b7942 Add jsond BC-breaking changes to UPGRADING 2015-01-25 18:56:36 +00:00
Jakub Zelenka 3159d518d0 Merge branch 'master' into jsond
Conflicts:
	ext/json/JSON_parser.c
	ext/json/json.c
2015-01-25 18:43:15 +00:00
Nikita Popov df984ad4f5 Disable PEAR by default
Given how it doesn't work and it doesn't seem like it will start
working in the immediate future.
2015-01-25 14:49:35 +01:00
Stanislav Malyshev f1b2adb881 map fixes 2015-01-25 00:04:18 -08:00
Stanislav Malyshev cb6fb59b59 Fix the fix for #68884 2015-01-24 23:07:50 -08:00
Yasuo Ohgaki 4ba97bb2ea Merge branch 'master' into master-rfc-session-lock4 2015-01-25 15:47:27 +09:00
Yasuo Ohgaki 0c9bfa96b2 Make session_decode return FALSE when it fails.
Fix a test.
Use proper types.
2015-01-25 15:26:00 +09:00
Peter Dave Hello 852c2fc18d Use svg instead of png to get better image quality 2015-01-25 13:15:41 +08:00
Rasmus Lerdorf 388624d359 These tests all have intentional circular references
and they will leak and cause failures unless gc is enabled
2015-01-24 16:06:18 -08:00
Nikita Popov 6093c9370b Fix resource leak when casting to string 2015-01-24 23:18:26 +01:00
Nikita Popov 05166566db Fix declare encoding tests
Also add a test for bwoebi's last change.
2015-01-24 21:51:45 +01:00
Bob Weinand c637ba118e Fix segfault when no class ctx is defined 2015-01-24 20:00:46 +01:00
Nikita Popov 8dc1287739 Fix build 2015-01-24 19:53:07 +01:00
Bob Weinand f3675d950d Inline self-constants if possible at compile time 2015-01-24 19:19:02 +01:00
Xinchen Hui a98fd7125a Fixed bug #68897 (Using variable for sort flag in array_multisort cause wrong results) 2015-01-24 22:51:37 +08:00
Márcio Almada f27e96c2f8 remove unused var, make string.c compilation zero warnings 2015-01-24 00:26:01 -03:00
Anatol Belski be53374216 Merge branch 'pull-request/1023' 2015-01-23 20:57:47 +01:00
Adam Harvey eb6dc9db29 Make gc_collect_cycles hookable. 2015-01-23 19:23:58 +00:00
Dmitry Stogov e427188755 Fixed memory leak 2015-01-23 21:47:26 +03:00
Dmitry Stogov be31acc927 Fixed memory leak 2015-01-23 20:35:32 +03:00
Anatol Belski ee8a0b3797 cleanup TSRMLS_* 2015-01-23 18:05:18 +01:00
Dmitry Stogov b06ba87926 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  C89 compat
2015-01-23 17:11:19 +03:00
Dmitry Stogov a7f1bf3ec5 Fixed possible double free of class static members 2015-01-23 17:10:05 +03:00
Anatol Belski 647caea9f7 C89 compat 2015-01-23 15:04:29 +01:00
Dmitry Stogov 46e486ff3d It doesn't make sense to colect garbage after fatal errors 2015-01-23 16:40:16 +03:00
Dmitry Stogov f71e64e53a Revert "Fixed ASSERTION"
This reverts commit 76f438e06f.
2015-01-23 16:37:39 +03:00
Xinchen Hui 4369215b8f Merge branch 'fix-strripos-memleak' of https://github.com/reeze/php-src 2015-01-23 17:35:37 +08:00
Reeze Xia bdfe4d6558 Fix one more leak when wrong $needle type provide of strripos 2015-01-23 17:14:39 +08:00
Reeze Xia d44b6e58ba Fixed memory leak of strripos() when empty needle or haystack 2015-01-23 16:53:58 +08:00
Xinchen Hui ad36fe34df Merge branch 'master' of https://git.php.net/repository/php-src 2015-01-23 14:19:40 +08:00
Xinchen Hui 76f438e06f Fixed ASSERTION 2015-01-23 14:18:56 +08:00
Daniel Lowrey ec62b8ddb6 NEWS 2015-01-23 01:05:28 -05:00
Daniel Lowrey 459edceea9 Merge branch 'master' of https://github.com/bbroerman30/php-src
Conflicts:
	ext/openssl/xp_ssl.c
2015-01-23 01:03:39 -05:00
Xinchen Hui 16732dedfe Fixed refcount handling in get_class_vars() 2015-01-23 13:32:07 +08:00
Sara Golemon b8e262901e Add missing ZEND_API tag to declaration of int zendparse(); 2015-01-22 14:04:49 -08:00
Ferenc Kovacs 5f61f0b976 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix some factual errors in the process
2015-01-22 21:29:03 +01:00
Ferenc Kovacs 49cc1d4e84 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix some factual errors in the process
2015-01-22 21:28:41 +01:00
Ferenc Kovacs f014785eeb Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix some factual errors in the process
2015-01-22 21:28:21 +01:00
Ferenc Kovacs 61ad5e24ea fix some factual errors in the process 2015-01-22 21:27:38 +01:00
Martin Jansen 3a39f3ad70 Fix typos 2015-01-22 21:08:28 +01:00
Martin Jansen c1eb87ab1a Fix bug #64938: libxml_disable_entity_loader setting is shared between threads
The availability of entity loading is stored in a module global which
previously was only initialized in the GINIT constructor. This had the
effect that disabling the entity loader in one request caused
subsequent requests hitting the same Apache child process to  also have
the loader disabled.

With this change the loader is explicitely enabled in the request init
phase.
2015-01-22 20:58:15 +01:00
Dmitry Stogov b494aa0ba0 Fixed compiler reenterability 2015-01-22 20:39:34 +03:00
Dmitry Stogov 6f0e5aab43 Fixed GC after destruction of object store. 2015-01-22 20:38:42 +03:00
Kalle Sommer Nielsen 26eb876bb7 Remove Jouni (As requested) from the maintainers file of INTERBASE 2015-01-22 15:15:02 +01:00
Anatol Belski 699ada706a Fixed bug #68884 Null pointer deference 2015-01-22 15:01:27 +01:00
Dmitry Stogov faf917d94e define() must not modify the source array 2015-01-22 15:49:38 +03:00
Remi Collet 0b70f58822 Merge branch 'PHP-5.6'
* PHP-5.6:
  move CVE to the right version
2015-01-22 13:07:34 +01:00
Remi Collet b318e54fac Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  move CVE to the right version
2015-01-22 13:06:50 +01:00
Remi Collet 2955993947 move CVE to the right version 2015-01-22 13:06:15 +01:00
Anatol Belski 53d01c4580 Merge branch 'master' of git.php.net:php-src 2015-01-22 12:29:03 +01:00
Anatol Belski d2a4940bd2 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #68731 finfo_buffer doesn't extract the correct mime with some gifs
2015-01-22 12:28:11 +01:00
Anatol Belski 093a23d1c4 Fixed bug #68731 finfo_buffer doesn't extract the correct mime with some gifs
The fix for bug #67647 applies here, too.
2015-01-22 12:26:50 +01:00
Dmitry Stogov e21fefde38 Fixed destruction of circular garbage 2015-01-22 14:24:27 +03:00
Anatol Belski ccffa2aad1 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #67647 Bundled libmagic 5.17 does not detect quicktime files correctly

Conflicts:
	ext/fileinfo/data_file.c
2015-01-22 11:56:34 +01:00
Anatol Belski c9d0894ec5 Fixed bug #67647 Bundled libmagic 5.17 does not detect quicktime files correctly 2015-01-22 11:48:11 +01:00
Dmitry Stogov 061c0ed9ee Fixed double free and cleanup 2015-01-22 12:59:53 +03:00
Anatol Belski ca0bb7dd81 Merge branch 'master' of git.php.net:php-src 2015-01-22 10:19:08 +01:00
Anatol Belski f9d672f7d4 Merge branch 'PHP-5.6'
* PHP-5.6:
  simplify error handling for dirs as magic
2015-01-22 10:17:45 +01:00
Anatol Belski 60c2621b2a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  simplify error handling for dirs as magic
2015-01-22 10:17:14 +01:00
Michael Wallner 86aab0aedb avoid duplicate array_init
custom request body handling firing the rfc1867 handler after the
environment has been hashed might create a memory leak by calling
array_init() twice on PG(http_globals)[TRACK_VARS_FILES]
2015-01-22 10:16:38 +01:00
Anatol Belski 43652d386a simplify error handling for dirs as magic 2015-01-22 10:16:13 +01:00
Anatol Belski a2e83332b9 Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6 2015-01-22 10:04:33 +01:00
Anatol Belski b2c39c1d29 Merge branch 'master' of git.php.net:php-src 2015-01-22 10:03:24 +01:00
Anatol Belski 4e3e95dfc0 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  Fixed bug #68827 Double free with disabled ZMM
2015-01-22 10:02:05 +01:00
Anatol Belski a97ca0a452 updated NEWS 2015-01-22 10:01:16 +01:00
Anatol Belski d0e75bdc59 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #68827 Double free with disabled ZMM
  Fixed segfault while running with moodle
2015-01-22 10:00:10 +01:00
Joshua Rogers 91aa340180 Fixed bug #68827 Double free with disabled ZMM 2015-01-22 09:59:13 +01:00
Xinchen Hui fc25720986 Merge branch 'master' of https://git.php.net/repository/php-src 2015-01-22 16:55:53 +08:00
Xinchen Hui 6ae57df70b Revert "Fixed valgrind reported issue with setlocale"
This reverts commit fa06343d7e.
2015-01-22 16:55:20 +08:00
Dmitry Stogov 3e31838d19 zend_read_property() has to provide a holder for return value.
Previously it was possible that zend_read_property() returned pointer to zval allocated on stack.
2015-01-22 11:50:42 +03:00
Xinchen Hui 201f660ae1 Merge branch 'PHP-5.6' 2015-01-22 16:39:22 +08:00
Xinchen Hui d0928b7f97 Merge branch 'PHP-5.5' into PHP-5.6 2015-01-22 16:39:03 +08:00
Xinchen Hui 251745c012 Fixed segfault while running with moodle 2015-01-22 16:38:34 +08:00
Popa Adrian Marius 56c5b8e399 Revert "Remove Jouni Ahto from maintainers and files as requested , anyway we have git blame/history"
This reverts commit 7cf1450df1.
2015-01-22 10:16:51 +02:00
Yasuo Ohgaki e6c8640a2a WIP - test passes 2015-01-22 13:34:58 +09:00
Bob Weinand 4e0ae4dbbc Forgot to add test... 2015-01-21 23:54:03 +01:00
Bob Weinand bd629428a6 Removed efree() on arena_alloc()ed memory 2015-01-21 23:52:48 +01:00
Rasmus Lerdorf e242f871df Slightly modify and merge PR#105 from @MegaManSec 2015-01-21 11:40:27 -08:00
Rasmus Lerdorf 295926855b Slightly modify and merge PR#105 from @MegaManSec 2015-01-21 11:39:23 -08:00
Popa Adrian Marius 7cf1450df1 Remove Jouni Ahto from maintainers and files as requested , anyway we have git blame/history 2015-01-21 18:08:56 +02:00
Anatol Belski 1463115e7e Merge branch 'PHP-5.6'
* PHP-5.6:
  fix timelib build configuration

Conflicts:
	ext/date/config.w32
	ext/date/config0.m4
	win32/build/config.w32
	win32/build/config.w32.phpize.in
2015-01-21 16:26:36 +01:00
Anatol Belski 24157f396c fix timelib build configuration 2015-01-21 16:22:23 +01:00
Brad Broerman ebb67cd6fe Renamed timeval functions to comply with PHP naming standards 2015-01-21 10:20:32 -05:00
Anatol Belski 35bfa022f9 Merge branch 'PHP-5.6'
* PHP-5.6:
  make timelib_config.h inclusion configurable

Conflicts:
	win32/build/config.w32
	win32/build/config.w32.phpize.in
2015-01-21 13:55:07 +01:00
Anatol Belski bd52f4a833 make timelib_config.h inclusion configurable 2015-01-21 13:48:38 +01:00
Julien Pauli 71aa0d3566 Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS
2015-01-21 11:14:33 +01:00
Julien Pauli bb2380edb7 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Updated NEWS
2015-01-21 11:13:55 +01:00
Julien Pauli 88f2321a25 Updated NEWS 2015-01-21 11:10:20 +01:00
Anatol Belski d54c07d6e4 Merge branch 'PHP-5.6'
* PHP-5.6:
  backported the timelib cleanups to 5.6
2015-01-21 11:04:02 +01:00
Anatol Belski 9c88a214a4 backported the timelib cleanups to 5.6 2015-01-21 11:03:16 +01:00
Anatol Belski 8faadc22d1 make timelib use PHP's defines when it's inside PHP only
otherwise system defines will be used
2015-01-21 10:49:28 +01:00
Anatol Belski 2f8d40ca79 decouple timelib from php_stdint.h 2015-01-21 09:42:54 +01:00
Rasmus Lerdorf 41013ba597 Fix the most obvious issues here.
There are other problems though
2015-01-20 23:56:51 -08:00
Rasmus Lerdorf f9664ce853 PHP7 API updates 2015-01-20 23:40:33 -08:00
Rasmus Lerdorf a25054b907 int -> size_t and long -> zend_long 2015-01-20 23:11:22 -08:00
Rasmus Lerdorf 03ba4ba37e int -> size_t
and fix the variable name
2015-01-20 23:00:40 -08:00
Rasmus Lerdorf 030b4b29db int -> size_t 2015-01-20 22:58:31 -08:00
Rasmus Lerdorf c5e56f7868 int -> size_t 2015-01-20 22:53:11 -08:00
Rasmus Lerdorf bcaa06de3a int -> size_t 2015-01-20 22:51:09 -08:00
Rasmus Lerdorf ec1278ccb2 int -> size_t 2015-01-20 22:50:17 -08:00
Rasmus Lerdorf 57f456a39b int -> size_t 2015-01-20 22:45:07 -08:00
Rasmus Lerdorf c2465211af Missed removing a couple of _len vars 2015-01-20 22:41:18 -08:00
Xinchen Hui fa06343d7e Fixed valgrind reported issue with setlocale 2015-01-21 12:03:19 +08:00
Xinchen Hui 88e88426df Merge branch 'PHP-5.6' 2015-01-21 11:18:27 +08:00
Xinchen Hui 57ff5a4e6f Merge branch 'PHP-5.5' into PHP-5.6 2015-01-21 11:18:08 +08:00
Xinchen Hui 20e5911d82 Fixed test fails 2015-01-21 11:17:49 +08:00
Ferenc Kovacs 135d739278 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix NEWS
2015-01-21 01:20:10 +01:00
Ferenc Kovacs ea44ccbd62 fix NEWS 2015-01-21 01:19:31 +01:00
Rasmus Lerdorf dc61ac998d Finishing porting ext/imap to PHP7
All tests pass now
2015-01-20 15:43:08 -08:00
Derick Rethans a3a529411e Merge branch 'PHP-5.6' 2015-01-20 21:44:36 +00:00
Derick Rethans 1d09926e33 Merge branch 'PHP-5.5' into PHP-5.6 2015-01-20 21:44:25 +00:00
Derick Rethans 8e19705a93 Fixed bug #55407 (Impossible to prototype DateTime::createFromFormat) 2015-01-20 21:44:19 +00:00
Stanislav Malyshev 73a5958e67 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix year
2015-01-20 13:27:51 -08:00
Stanislav Malyshev cca3c8a985 fix year 2015-01-20 13:27:38 -08:00
Stanislav Malyshev b2a254fe2d Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  update NEWS
  format
  add CVE
2015-01-20 11:59:35 -08:00
Stanislav Malyshev 53b3db43ca Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  format
2015-01-20 11:57:50 -08:00
Stanislav Malyshev 04dcc705de update NEWS 2015-01-20 11:57:39 -08:00
Stanislav Malyshev b3b155ffe2 format 2015-01-20 11:57:17 -08:00
Stanislav Malyshev 295b42b76e Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add CVE
2015-01-20 11:55:04 -08:00
Stanislav Malyshev 547f62ed2a add CVE 2015-01-20 11:54:45 -08:00
Anatol Belski fecbb0e7c2 don't error x86 compiler 2015-01-20 20:52:45 +01:00
Anatol Belski 44cbba100a fix leaking of locale_string in TS build
actually more like an attempt as i see the leaks on travis,
but don't repro on my boxes
2015-01-20 20:52:44 +01:00
Joshua Rogers 6621840951 Fix uninitalized variables reads. See CWE-457 for more info. 2015-01-21 06:52:19 +11:00
Stanislav Malyshev 65aba8bd71 Merge branch 'PHP-5.6'
* PHP-5.6:
  add protection against nulls

Conflicts:
	main/spprintf.c
2015-01-20 11:47:46 -08:00
Stanislav Malyshev c9162147f2 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  add protection against nulls
2015-01-20 11:47:06 -08:00
Stanislav Malyshev a3cb69d63e Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add protection against nulls
2015-01-20 11:46:39 -08:00
Stanislav Malyshev ef4896d956 add protection against nulls 2015-01-20 11:46:10 -08:00
Stanislav Malyshev b16fdebcf8 Merge branch 'PHP-5.6'
* PHP-5.6:
  5.4.38 next
  Updated NEWS
  Updated NEWS
  Fix bug #68711 Remove useless checks. 'num' is unsigned and cannot be <0.
  Fix bug #68799: Free called on unitialized pointer
  Fix for bug #68710 (Use After Free Vulnerability in PHP's unserialize())

Conflicts:
	ext/exif/exif.c
	ext/standard/var_unserializer.c
	ext/standard/var_unserializer.re
2015-01-20 10:41:59 -08:00
Stanislav Malyshev e18ec95687 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  5.4.38 next
  Fix bug #68799: Free called on unitialized pointer
  Fix for bug #68710 (Use After Free Vulnerability in PHP's unserialize())

Conflicts:
	ext/standard/var_unserializer.c
2015-01-20 10:40:39 -08:00
Stanislav Malyshev e2744c51b6 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  5.4.38 next
  Fix bug #68799: Free called on unitialized pointer
  Fix for bug #68710 (Use After Free Vulnerability in PHP's unserialize())

Conflicts:
	configure.in
	main/php_version.h
2015-01-20 10:40:11 -08:00
Stanislav Malyshev 8825311ce1 5.4.38 next 2015-01-20 10:38:33 -08:00
Joshua Rogers eba0e0348e Remove useless tests
Respective variables are unsigned and cannot be <0.
2015-01-21 05:23:28 +11:00
Anatol Belski ea8415114a fix premature freeing of BG(locale_string)
the returned string has to be refcounted
2015-01-20 16:54:04 +01:00
Julien Pauli 57162a97bc Updated NEWS 2015-01-20 15:11:25 +01:00
Joshua Rogers c9b25859f0 Fix bug #68711 Remove useless checks. 'num' is unsigned and cannot be <0. 2015-01-20 15:11:25 +01:00
Julien Pauli b5e2661fb6 Updated NEWS 2015-01-20 15:09:59 +01:00
Julien Pauli 157508d87d Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Updated NEWS
  Fix bug #68711 Remove useless checks. 'num' is unsigned and cannot be <0.
2015-01-20 15:09:34 +01:00
Julien Pauli a40e004553 Updated NEWS 2015-01-20 15:09:13 +01:00
Xinchen Hui afa666f650 Optimized range 2015-01-20 22:02:11 +08:00
Joshua Rogers df67c4e8bd Fix bug #68711 Remove useless checks. 'num' is unsigned and cannot be <0. 2015-01-20 14:54:48 +01:00
Anatol Belski 8fb29d3f63 fix declaration 2015-01-20 11:30:03 +01:00
Stanislav Malyshev e63f7b47e1 Merge branch 'bug68710' into PHP-5.4
* bug68710:
  Fix for bug #68710 (Use After Free Vulnerability in PHP's unserialize())
2015-01-20 01:02:26 -08:00
Stanislav Malyshev fc6aa939f5 Merge branch 'bug68799' into PHP-5.4
* bug68799:
  Fix bug #68799: Free called on unitialized pointer
2015-01-20 01:00:11 -08:00
Xinchen Hui 47b7d90703 NUM_KEY is useless here 2015-01-20 16:51:20 +08:00
Dmitry Stogov d975f63f73 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Update remaining octal 32-bit tests
2015-01-20 08:56:09 +03:00
Dmitry Stogov 8dc3c283b8 cleanup 2015-01-20 08:55:36 +03:00
Andrea Faulds 5c88d11243 Update remaining octal 32-bit tests 2015-01-20 05:54:13 +00:00
Xinchen Hui 6f67d5ad6e Unused parse_arg_object_to_string 2015-01-20 12:02:54 +08:00
Xinchen Hui 8d60d37001 Unused var 2015-01-20 11:58:40 +08:00
Xinchen Hui c369a03407 Use zend_string in case we will optimize them 2015-01-20 10:59:28 +08:00
Xinchen Hui 020610ee40 Remove addslashes_str 2015-01-20 10:11:48 +08:00
Derick Rethans 1ee7845f57 Merge branch 'PHP-5.6' 2015-01-19 22:59:41 +00:00
Derick Rethans 6f2f2ce5cf Merge branch 'PHP-5.5' into PHP-5.6 2015-01-19 22:59:31 +00:00
Derick Rethans b0159431e3 Fixed bug #45081 (strtotime incorrectly interprets SGT time zone). 2015-01-19 22:59:24 +00:00
Sara Golemon 1010b0ea4f Provide compiler hook for altering the AST pre-compilation. 2015-01-19 10:43:57 -08:00
Stanislav Malyshev 1fdd558e39 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #50224 where float without decimals were converted to integer
  Updated NEWS for #68371
2015-01-19 10:05:57 -08:00
Xinchen Hui 1b53a99fbf Remove dead codes 2015-01-19 10:46:59 -05:00
Xinchen Hui da7d8f45b2 Optimized php_addslashes 2015-01-19 10:46:39 -05:00
Xinchen Hui 137a251a52 Merge branch 'master' of https://git.php.net/repository/php-src 2015-01-19 09:12:44 -05:00
Nikita Popov 5f0248304e Revert "Remove static calls from incompatible $this context"
This reverts commit dc9991b167.
2015-01-19 15:12:51 +01:00
Xinchen Hui 442efdaaea Optimized is_a 2015-01-19 09:10:01 -05:00
Dmitry Stogov 230bfb1067 Generate better code for comparisons with boolean constants 2015-01-19 17:02:17 +03:00
Dmitry Stogov 22ac15e6c9 Improve optimization of CONCAT/ADD_STRING/ADD_CJAR sequences 2015-01-19 17:01:30 +03:00
Xinchen Hui d917484ab7 Micro optimization for array_diff 2015-01-19 08:08:35 -05:00
Xinchen Hui ac9a1a7b0c Optimized trim for what_len == 1 2015-01-19 07:45:30 -05:00
Dmitry Stogov eb8d7fe710 old_size is already known 2015-01-19 15:26:04 +03:00
Dmitry Stogov 2efa53649e Optimize code generated for "while" and "for" loops.
Eliminate one JMP opcode for each loop iteration.
2015-01-19 13:27:44 +03:00
Juan Basso ac7cfad3b5 Fixed bug #50224 where float without decimals were converted to integer 2015-01-19 00:46:02 -08:00
Xinchen Hui b33629f212 Only use explicit ">" in sorting algo 2015-01-19 03:32:28 -05:00
Xinchen Hui 0bf9326512 Merge branch 'master' of https://git.php.net/repository/php-src 2015-01-19 01:37:13 -05:00
Stanislav Malyshev 02402ae695 fix size & compilation on Darwin 2015-01-18 22:44:35 -08:00
Xinchen Hui 020b51b46e Don't use >= as sorting condition
which could avoid breaking usage like:

usort($a, function($a, $b) { return $a > $b; })
2015-01-19 01:36:56 -05:00
Andrea Faulds 6c5b3df5fb Move intdiv() UPGRADING entry to New Functions 2015-01-19 05:55:55 +00:00
Xinchen Hui 0706032b73 Better fix 2015-01-18 21:38:25 -05:00
Andrea Faulds 0be3626ec6 fix build 2015-01-18 19:20:12 +00:00
Jakub Zelenka 3ddb5993dd Increase PHP_JSON_DOUBLE_MAX_LENGTH for fractional part
This is probably not necessary as such number
is not realistic. It's just to be consistent
with jsond extension.
2015-01-18 16:31:24 +00:00
Jakub Zelenka 91386cb287 Merge pull request #1 from jrbasso/json_preserve_fractional_part
Porting implementation of RFC json_preserve_fractional_part
2015-01-18 16:26:25 +00:00
Xinchen Hui f3052c5d2f Fixed bug #68852 (broken strrpos with negative offset) 2015-01-18 10:05:27 -05:00
Xinchen Hui 218d83d217 Fixed annoying incompatible pointer type warning 2015-01-18 07:24:57 -05:00
Matteo Beccati 6de149e47c Updated NEWS for #68371 2015-01-18 09:13:02 +01:00
Xinchen Hui 6a13e1f767 Fixed bug #68840 (Null pointer deference) 2015-01-17 23:17:05 -05:00
Xinchen Hui f42d9d6161 Fixed bug #68805 (Double define) 2015-01-17 23:06:37 -05:00
Xinchen Hui 89beb12fef Fixed bug #68809 (Unchecked return value) 2015-01-17 23:04:41 -05:00
Xinchen Hui ad32e03327 Fixed bug #68814 (Unchecked return value) 2015-01-17 22:58:16 -05:00
Xinchen Hui b21d9123a5 Fixed #68826 (Resource leak) 2015-01-17 22:56:02 -05:00
Xinchen Hui 4b3ae843fc Fixed #68832 (Unchecked return value) 2015-01-17 22:19:25 -05:00
Joshua Rogers f418486343 Fixed bug #68848 Missing return 2015-01-17 20:59:04 +01:00
Rasmus Lerdorf 6c9621c937 typo 2015-01-17 11:38:40 -08:00
Andrea Faulds 5f29b98051 Error on invalid octal (fixes PHPSadness #31)
Further error checks
2015-01-17 18:50:28 +00:00
Nikita Popov ca11bc0325 Remove set_socket_blocking 2015-01-17 18:26:45 +01:00
Nikita Popov a60efc5e11 Remove set_magic_quotes_runtime
And the alias magic_quotes_runtime
2015-01-17 18:26:45 +01:00
Nikita Popov 4c115b6b71 Remove string category support in setlocale() 2015-01-17 18:26:45 +01:00
Nikita Popov 9c5eaac18b Remove mktime() and gmmktime() $is_dst parameter 2015-01-17 18:26:45 +01:00
Nikita Popov 83391b5518 Remove for #-style comments in ini files 2015-01-17 18:26:44 +01:00
Nikita Popov dc9991b167 Remove static calls from incompatible $this context 2015-01-17 18:26:44 +01:00
Rasmus Lerdorf ff6b4ad8c7 FAST ZPP for strtok() and nl2br()
Looking at some template-driven code that calls these
hundreds of times per request
2015-01-17 08:30:40 -08:00
Xinchen Hui f487e4c638 attempt to fix again :< 2015-01-17 15:21:32 +08:00
Xinchen Hui 151411f8bd Fix again 2015-01-17 14:43:05 +08:00
Xinchen Hui 4d7b6f3782 Merge branch 'PHP-5.6' 2015-01-17 13:21:45 +08:00
Xinchen Hui b118d7b697 Merge branch 'PHP-5.5' into PHP-5.6 2015-01-17 13:21:36 +08:00
Xinchen Hui fa3808bacc Update year 2015-01-17 13:21:20 +08:00
Дмитрий Пацура 3bf560d70d Update copyright year to 2015 2015-01-17 12:58:00 +08:00
Xinchen Hui 8c24a33d24 Merge branch 'master' of https://git.php.net/repository/php-src 2015-01-17 12:12:16 +08:00
Xinchen Hui d630962b89 Try to fix ext/intl/tests/collator_asort.phpt (according to CI's output) 2015-01-17 12:11:49 +08:00
Sara Golemon ebb60ac7dd Add IntlChar class to intl extension
Exposes ICU's uchar functionality as a set of static methods
2015-01-16 14:37:44 -08:00
Anatol Belski 22bb3ce61a fix format strings, resource handle is int 2015-01-16 11:40:15 +01:00
Anatol Belski ea689b96a7 cleanup 2015-01-16 11:40:14 +01:00
Xinchen Hui 396e9cdb7f Optimized extract
symbol table already be rebuilt.. no need use set_local_var
2015-01-16 18:12:33 +08:00
Xinchen Hui 865749e7b1 Optimized array_slice 2015-01-16 17:54:50 +08:00
Xinchen Hui 22084e1478 Added test for array_unique 2015-01-16 17:12:50 +08:00
Xinchen Hui 98a2498383 Revert "Optimize array_unique to save some comparation calls"
Unsafe optimization

This reverts commit b57dc41e07.
2015-01-16 15:21:21 +08:00
Xinchen Hui 1c9f91e682 Revert "We could do more...."
This reverts commit 11f615b311.
2015-01-16 15:21:12 +08:00
Xinchen Hui af6119cf6c Fixed key length 2015-01-16 00:56:21 -05:00
Xinchen Hui 584a43d601 Merge branch 'master' of https://git.php.net/repository/php-src 2015-01-16 00:53:26 -05:00
Xinchen Hui 484216e3c6 Fixed key length 2015-01-16 00:52:54 -05:00
Xinchen Hui 4633a6f5d6 unused var 2015-01-16 12:18:59 +08:00
Xinchen Hui e49f763482 unused variable 2015-01-16 12:16:44 +08:00
Rasmus Lerdorf a29601a2b4 Weird, is nobody compiling this? 2015-01-15 17:44:11 -08:00
Dmitry Stogov b46894d104 Partially revert 3477135cd1 2015-01-16 02:21:27 +03:00
Dmitry Stogov 1c5e914616 Fixed build without alloca() 2015-01-15 21:43:17 +03:00
Dmitry Stogov 12cbb9c156 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  updated NEWS
  updated NEWS
  PDO_MySQL: Differentiate between linux and win32 when passing unix_socket
  bump year
  bump year
  Bump year
2015-01-15 21:09:20 +03:00
Dmitry Stogov b476c27135 Fixed double free 2015-01-15 21:08:43 +03:00
Dmitry Stogov 3477135cd1 Avoid usage of uninitialized data 2015-01-15 21:08:21 +03:00
Anatol Belski 29688512b4 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  PDO_MySQL: Differentiate between linux and win32 when passing unix_socket

Conflicts:
	ext/pdo_mysql/mysql_driver.c
2015-01-15 17:51:43 +01:00
Anatol Belski 25041d2af2 updated NEWS 2015-01-15 17:48:59 +01:00
Anatol Belski 3d6a83a7d0 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  PDO_MySQL: Differentiate between linux and win32 when passing unix_socket
2015-01-15 17:48:11 +01:00
Anatol Belski 0cef7d168d updated NEWS 2015-01-15 16:42:52 +01:00
steffen 7c9633412e PDO_MySQL: Differentiate between linux and win32 when passing unix_socket
Unix uses "127.0.0.1" as default host for named pipes,
while when using Windows a "." is required as host by mysqlnd.
(This can be seen at mysqlnd.c (line 945 or searching #ifndef PHP_WIN32)
2015-01-15 16:42:51 +01:00
Xinchen Hui fc33f52d8c bump year 2015-01-15 23:27:30 +08:00
Xinchen Hui 0eb46e7783 Merge branch 'PHP-5.6' 2015-01-15 23:27:18 +08:00
Xinchen Hui 0579e8278d bump year 2015-01-15 23:26:37 +08:00
Xinchen Hui fe8edf760c Merge branch 'PHP-5.5' into PHP-5.6 2015-01-15 23:26:24 +08:00
Xinchen Hui 73c1be2653 Bump year 2015-01-15 23:26:03 +08:00
Dmitry Stogov 34723d1b75 Fixed malloc/emalloc mess 2015-01-15 18:05:58 +03:00
matbech 27efc2b2ce Bug fix for wrong regex in mail
The wrong string PHP_WIN32_MAIL_UNIFY_REPLACE instead of PHP_WIN32_MAIL_UNIFY_PATTERN is used for the regex.
2015-01-15 15:07:10 +01:00
Dmitry Stogov 989daeb5bb Initialize ht->nTableMask 2015-01-15 15:21:38 +03:00
Xinchen Hui 9aac41753b Save one condition 2015-01-15 18:41:25 +08:00
Anatol Belski 1af91d944a optimize offset computation 2015-01-15 11:18:40 +01:00
Anatol Belski 706b7c6e07 don't return value in the void function 2015-01-15 11:18:39 +01:00
Anatol Belski cdfafd3f38 fix "unknown void * size" err 2015-01-15 11:18:38 +01:00
Xinchen Hui 11f615b311 We could do more.... 2015-01-15 04:29:01 -05:00
Xinchen Hui 2823c9dafb Fixed missed test 2015-01-15 01:17:58 -05:00
Xinchen Hui e61f444268 Fixed tests on 32-bits 2015-01-15 14:23:47 +08:00
Xinchen Hui b57dc41e07 Optimize array_unique to save some comparation calls 2015-01-15 13:57:06 +08:00
Xinchen Hui 8a0bc38535 Merge branch 'zend_sort' of https://github.com/laruence/php-src 2015-01-14 22:15:41 -05:00
Stanislav Malyshev 8d26c53f7c Fix bug #68816 - pointer to local outside of scope 2015-01-14 16:14:43 -08:00
Stanislav Malyshev 7f95aa4d97 Fix bug #68817: Null pointer deference 2015-01-14 16:12:35 -08:00
Daniel Lowrey c7c62303fb Merge branch 'PHP-5.6'
* PHP-5.6:
  Update NEWS
  Fixed bug #55618 (use case-insensitive cert name matching)
2015-01-14 20:33:54 +01:00
Dmitry Stogov 90c20b4c24 Fixed typo 2015-01-14 21:09:06 +03:00
Dmitry Stogov e0155d536f Avoid string reallocation in strtr() 2015-01-14 20:58:41 +03:00
Daniel Lowrey 5d8acad006 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Update NEWS
  Fixed bug #55618 (use case-insensitive cert name matching)
2015-01-14 18:09:07 +01:00
Daniel Lowrey 80a337bba1 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Update NEWS
  Fixed bug #55618 (use case-insensitive cert name matching)
2015-01-14 18:04:41 +01:00
Daniel Lowrey 0a76610459 Update NEWS 2015-01-14 18:03:27 +01:00
Daniel Lowrey e2fe8e164f Fixed bug #55618 (use case-insensitive cert name matching) 2015-01-14 18:02:50 +01:00
Dmitry Stogov 2325758624 Improve "instanceof". Interfaces of the left operand should be checked only if the right operand is interafce itself. 2015-01-14 15:06:26 +03:00
Dmitry Stogov 588e803e85 Ipmrove strtr() by maintaining a set of characters that may start a matched pattern and avoid zend_hash_find() calls for other paterns. 2015-01-14 15:04:04 +03:00
Anatol Belski d5b5ad72b6 cleanup 2015-01-14 12:32:23 +01:00
Anatol Belski 8e3764e287 fixed zend_hash_init() when the lzcnt instruction isn't supported 2015-01-14 12:32:23 +01:00
Xinchen Hui 2193de0d18 Faster sorting algo 2015-01-14 18:02:41 +08:00
Dmitry Stogov ade7a41040 Optimized str_[i]replace to aviod reallocations and repeatable conversions to lowercase 2015-01-13 23:23:50 +03:00
Anthony Ferrara 4a2fe3d0ab Fix a few tests and remove error/warning for *0 2015-01-13 11:49:09 -05:00
Xinchen Hui a698a3fd6a Update NEWS 2015-01-13 23:39:33 +08:00
Xinchen Hui ea10109067 Merge branch 'PHP-5.6' 2015-01-13 23:39:16 +08:00
Xinchen Hui 0645f106e9 Update NEWS 2015-01-13 23:38:57 +08:00
Dmitry Stogov 3e3b006738 Reorder conditions to make "fast paths" shorter 2015-01-13 15:31:42 +03:00
Dmitry Stogov 5a24ac8853 Improved access to object properties (cache property offset instead of pointer to property_info). 2015-01-13 11:33:00 +03:00
Dmitry Stogov 58efbf0a92 Fixed possible double free 2015-01-13 11:32:36 +03:00
Dmitry Stogov 7e93de101f Handle run-time cache for static properties directly in executor.
Removed cache_slot argument in zend_std_get_static_property() and zend_std_unset_static_property().
2015-01-13 09:33:15 +03:00
Dmitry Stogov d810cf816b Fixed possible crash 2015-01-13 08:30:54 +03:00
Xinchen Hui 2d8fd4b335 Add hinting 2015-01-12 22:06:40 -05:00
Juan Basso 95cef47afb Porting implementation of RFC json_preserve_fractional_part 2015-01-12 21:29:52 -05:00
Danack 1397790560 Added test and possible fix for https://bugs.php.net/bug.php?id=67068 2015-01-13 01:24:19 +00:00
Dmitry Stogov dbe66fb2cf Improved access to static property. Now we cache pointers to zval instead of pointers to property_info. 2015-01-13 03:32:51 +03:00
Bob Weinand 0445974cb1 Only backup vm_stack* if generator->stack has not been freed 2015-01-12 22:31:07 +01:00
Dmitry Stogov 2387771daf Slight improvement in copying script from opcache SHM into process memory 2015-01-12 23:51:40 +03:00
Dmitry Stogov 916d5ece39 Optimized error_reporting() similar to silence operator (ZEND_BEGIN_SILENCE opcode). 2015-01-12 23:50:03 +03:00
Dmitry Stogov a7ce679578 Fixed type (case sensetive/insensetive mess) 2015-01-12 22:30:55 +03:00
Dmitry Stogov c5047d1f11 Use FAST_ZPP in few more frequently used functions 2015-01-12 19:26:12 +03:00
Anatol Belski 5f68ffad71 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #68771 SQL syntax error in sqlite lib
2015-01-12 17:03:00 +01:00
Anatol Belski edb66e05db Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #68771 SQL syntax error in sqlite lib
2015-01-12 17:02:18 +01:00
Anatol Belski ef58622534 Fixed bug #68771 SQL syntax error in sqlite lib 2015-01-12 16:55:47 +01:00
Dmitry Stogov 8d2a7e98db Added special optimized cases when strtr() called with zero or one search/replace pair. 2015-01-12 16:51:59 +03:00
Anatol Belski 13657f3e9c Merge branch 'master' of git.php.net:php-src 2015-01-12 13:01:27 +01:00
Anatol Belski 2752b409b3 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libs_versions.txt
  updated libs_versions.txt
  Fix bug #68784
  Fix bug #68784
  We can't output absolute S and T values for the Diophantine solution here since it can vary based on the libgmp version we are linking against and in general there are almost always multiple valid solutions
  We can't output absolute S and T values for the Diophantine solution here since it can vary based on the libgmp version we are linking against and in general there are almost always multiple valid solutions
2015-01-12 13:00:45 +01:00
Anatol Belski 344a61a613 updated libs_versions.txt 2015-01-12 12:59:59 +01:00
Anatol Belski 7a2dbc0e7c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated libs_versions.txt
  Fix bug #68784
  We can't output absolute S and T values for the Diophantine solution here since it can vary based on the libgmp version we are linking against and in general there are almost always multiple valid solutions
2015-01-12 12:58:37 +01:00
Anatol Belski 2923f24042 updated libs_versions.txt 2015-01-12 12:58:00 +01:00
Dmitry Stogov b277d360e9 Fixed reference support 2015-01-12 14:43:32 +03:00
Xinchen Hui 2f1ddff2a5 Faster strrpos implementation 2015-01-12 17:24:37 +08:00
Jakub Zelenka b3823f5cab Merge branch 'master' into jsond
Conflicts:
	ext/json/JSON_parser.c
	ext/json/JSON_parser.h
	ext/json/json.c
	ext/json/utf8_decode.c
2015-01-12 09:02:17 +00:00
Xinchen Hui 31817447cc Faster zend_memnstr for long text 2015-01-12 15:34:46 +08:00
Jakub Zelenka e6fb493e5d Refactore json double encoding to use php_gcvt 2015-01-11 13:30:21 +00:00
Stanislav Malyshev 2fc178cf44 Fix bug #68799: Free called on unitialized pointer 2015-01-11 00:51:05 -08:00
Xinchen Hui d805fa0d81 Fixed #68790 (Missing return) 2015-01-10 22:19:49 -05:00
Stanislav Malyshev b7a7b1a624 trailing whitespace removal 2015-01-10 15:07:38 -08:00
Bob Weinand 773c8b0c09 Fix missing ZVAL_DEREF() 2015-01-10 22:29:00 +01:00
Jakub Zelenka 8304e468cd Replace encoder functions json prefix with php_json 2015-01-10 19:13:28 +00:00
Brad Broerman 9ec7fac127 Change declaration of subtractTimeval and compareTimeval to static 2015-01-10 11:19:17 -05:00
Xinchen Hui 84f2311bc9 Fixed #68779 (Incorrect sizeof) 2015-01-10 10:58:22 -05:00
Jakub Zelenka 1e49e96917 Merge branch 'master' into jsond 2015-01-10 15:31:06 +00:00
Rasmus Lerdorf dbd02ad23b Fix bug #68784 2015-01-09 18:09:44 -08:00
Rasmus Lerdorf 5065505c93 Fix bug #68784 2015-01-09 18:09:13 -08:00
Rasmus Lerdorf e4b3d623a2 Fix bug #68784 2015-01-09 18:08:36 -08:00
Rasmus Lerdorf 50c721a623 These tests all assume that IPV6 is available. 2015-01-09 17:24:48 -08:00
Rasmus Lerdorf 16d779a833 Adding a note here for my future self so I won't
need to look into this again
2015-01-09 16:36:21 -08:00
Rasmus Lerdorf deca940406 We can't output absolute S and T values for the
Diophantine solution here since it can vary based
on the libgmp version we are linking against and
in general there are almost always multiple valid
solutions
2015-01-09 16:27:09 -08:00
Rasmus Lerdorf 46f429f8e6 We can't output absolute S and T values for the
Diophantine solution here since it can vary based
on the libgmp version we are linking against and
in general there are almost always multiple valid
solutions
2015-01-09 16:23:50 -08:00
Rasmus Lerdorf 3b9057bc6f We can't output absolute S and T values for the
Diophantine solution here since it can vary based
on the libgmp version we are linking against and
in general there are almost always multiple valid
solutions
2015-01-09 16:16:47 -08:00
Nikita Popov e9068cefb4 Make empty list() check stricter
Now also includes list()s with just commas in it.
2015-01-09 18:27:06 +01:00
Nikita Popov 41a249fef6 Fix bug #68775 2015-01-09 17:59:41 +01:00
Anthony Ferrara 9cc9887224 Fix spaces -> tabs 2015-01-09 11:23:06 -05:00
Anthony Ferrara 462fef794f Add deprecated notice to invalid DES salts.
This will cause an error in the case where invalid salts are provided for other algorithms. Currently, these invalid salts will silently fall back to STD_DES which is extremely weak. By detecting invalid DES salts, we can alert the user that there is a bug in their code.

The error is currently E_DEPRECATED as this has potential to break currently working (yet insecure) code. In the future it should be changed to an E_WARNING and return *0
2015-01-09 11:18:33 -05:00
Julien Pauli 32f761d7f8 Updated NEWS 2015-01-09 16:26:10 +01:00
Julien Pauli fb069be475 Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS
  Fix bug #68260
2015-01-09 16:25:14 +01:00
Julien Pauli 287217a3a3 Updated NEWS 2015-01-09 16:25:02 +01:00
Julien Pauli 138b6442d4 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #68260
2015-01-09 16:24:32 +01:00
Julien Pauli dc810543cf Fix bug #68260 2015-01-09 16:24:14 +01:00
Guilherme Blanco d51fb69c01 Removed parsing support traits to have extends and implements. 2015-01-09 15:45:02 +01:00
Guilherme Blanco f48c232740 Decoupled class declaration statement into more granular pieces. 2015-01-09 15:45:01 +01:00
Julien Pauli 13e290d5e9 remove PHP4 extension structure compat 2015-01-09 15:07:04 +01:00
Francois Laupretre 63346f4c4b Fix README.PARAMETER_PARSING_API 2015-01-09 14:52:23 +01:00
krakjoe b99dd1e895 Merge branch 'master' of git://git.php.net/php-src 2015-01-09 07:48:29 +00:00
krakjoe 159c331844 optimization for bug report #68679 2015-01-09 07:45:21 +00:00
Xinchen Hui 7142dd76ff Update NEWs 2015-01-09 11:54:41 +08:00
Xinchen Hui aa5b3b0e4a Merge branch 'PHP-5.6' 2015-01-09 11:54:01 +08:00
Xinchen Hui 0547edb5c2 Fixed bug (try block removed while combined with xdebug) 2015-01-09 11:53:47 +08:00
Dmitry Stogov 7b4808a647 Fixed bug #68636 (setlocale no longer returns current value per category). 2015-01-09 01:41:13 +03:00
Adam Harvey ed8ebd6ce4 Merge branch 'PHP-5.6'
* PHP-5.6:
  Calling crypt() with a salt of *0 should always return *1.

Conflicts:
	configure.in
	main/php_version.h
2015-01-08 19:17:53 +00:00
Adam Harvey 16b6f6c7f4 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Calling crypt() with a salt of *0 should always return *1.
  5.5.22 now

Conflicts:
	configure.in
	main/php_version.h
2015-01-08 19:16:32 +00:00
Adam Harvey 8b0f105761 Calling crypt() with a salt of *0 should always return *1. 2015-01-08 19:13:23 +00:00
Anatol Belski e383f05e2f Merge branch 'PHP-5.6'
* PHP-5.6:
  fix test
2015-01-08 18:11:46 +01:00
Anatol Belski 2e79820c0e fix test 2015-01-08 18:11:15 +01:00
Xinchen Hui 777c39f404 Fixed #68677 2015-01-08 16:32:20 +08:00
Xinchen Hui 7ebdc8d70d Fixed #68692 2015-01-08 16:29:33 +08:00
Xinchen Hui f3ea1b0b6a Fixed #68694 2015-01-08 16:28:32 +08:00
Xinchen Hui d7fd940691 Fixed #68704 2015-01-08 16:26:20 +08:00
Xinchen Hui 1b4f7c3a77 Fixed #68711 2015-01-08 16:20:20 +08:00
Xinchen Hui e3012d0f6c Merge branch 'master' of https://git.php.net/repository/php-src 2015-01-08 16:09:41 +08:00
Xinchen Hui 124fb22a13 Fixed bug #68739 #68740 #68741 2015-01-08 16:09:02 +08:00
Keyur Govande 961da40809 Merge branch 'PHP-5.6'
* PHP-5.6:
  Add NEWS
  Add NEWS
  Patch commit d9f85373e32 by moving the float_to_double function to a header file.
  Fix for bugs #68114 (Build fails on OS X due to undefined symbols) and #68657 (Reading 4 byte floats with Mysqli and libmysqlclient has rounding errors).
  5.5.22 now

Conflicts:
	ext/mysqli/mysqli_api.c
2015-01-07 23:23:26 +00:00
Keyur Govande 39f8960b17 Add NEWS 2015-01-07 22:52:27 +00:00
Keyur Govande 90144c0d08 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Add NEWS
  Patch commit d9f85373e32 by moving the float_to_double function to a header file.
  Fix for bugs #68114 (Build fails on OS X due to undefined symbols) and #68657 (Reading 4 byte floats with Mysqli and libmysqlclient has rounding errors).
  5.5.22 now

Conflicts:
	configure.in
	main/php_version.h
2015-01-07 22:50:55 +00:00
Keyur Govande 9bbd55ddc7 Add NEWS 2015-01-07 22:45:23 +00:00
Keyur Govande 3062cf1b42 Patch commit d9f85373e32 by moving the float_to_double function to
a header file.
2015-01-07 22:45:23 +00:00
Keyur Govande f2eadb93b9 Fix for bugs #68114 (Build fails on OS X due to undefined symbols)
and #68657 (Reading 4 byte floats with Mysqli and libmysqlclient
has rounding errors).

The patch removes support for Decimal floating point numbers and
now defaults to using similar logic as what libmysqlclient does:
convert a 4 byte floating point number into a string, and then the
string into a double. The quirks of MySQL are maintained as seen in
Field_Float::val_str()
2015-01-07 22:45:23 +00:00
Nikita Popov 3e826c9736 Fix the same leak with %= 2015-01-07 23:21:12 +01:00
Nikita Popov 98c2ceacf8 Fix leak for compound shift self-assign error cases 2015-01-07 23:13:45 +01:00
Julien Pauli 3f1d1892c9 5.5.22 now 2015-01-07 10:42:53 +01:00
Danack 92e11f22c5 Fix freeing null segfault. Added test for behaviour. 2015-01-06 22:09:13 +00:00
Ferenc Kovacs 8c9415e5d7 Merge branch 'PHP-5.6'
* PHP-5.6:
  PHP-5.6.6 is next

Conflicts:
	configure.in
	main/php_version.h
2015-01-06 23:00:11 +01:00
Ferenc Kovacs b0a26ab8f8 PHP-5.6.6 is next 2015-01-06 22:58:22 +01:00
Remi Collet 1b5e87862f Merge branch 'PHP-5.6'
* PHP-5.6:
  cleanup old unused typedef
2015-01-06 11:07:10 +01:00
Remi Collet 0ba32e5cf9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  cleanup old unused typedef
2015-01-06 11:06:53 +01:00
Remi Collet 8404f8ac2a cleanup old unused typedef 2015-01-06 11:06:25 +01:00
Adam Harvey a607a1db1d Merge branch 'PHP-5.6'
* PHP-5.6:
  Handle NULL strings in sapi_cli_server_register_variable().
  Allow CLI server test scripts to specify the name of the router file.

Conflicts:
	sapi/cli/php_cli_server.c
2015-01-06 01:29:40 +00:00
Adam Harvey 27ff425b78 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Handle NULL strings in sapi_cli_server_register_variable().
  Allow CLI server test scripts to specify the name of the router file.

Conflicts:
	sapi/cli/tests/php_cli_server.inc
2015-01-06 01:27:37 +00:00
Adam Harvey 448ef30f75 Handle NULL strings in sapi_cli_server_register_variable().
Fixes bug #68745 (Invalid HTTP requests make web server segfault).
2015-01-06 01:23:27 +00:00
Adam Harvey 0cc2810498 Allow CLI server test scripts to specify the name of the router file.
This is required to write tests that behave differently when an index.php isn't
present in the document root. (Such as the one I'm about to commit.)
2015-01-06 01:22:59 +00:00
Levi Morrison bb7ceb046e Fix bug #55416
Remove extra, unnecessary warning when the callback fails for
array_map, array_reduce and array_filter
2015-01-05 17:27:25 -07:00
Anatol Belski a26ecbd572 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix ACLs tests, make it create dir where it has to, not file
2015-01-05 19:20:33 +01:00
Anatol Belski 4756207e7e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix ACLs tests, make it create dir where it has to, not file
2015-01-05 19:20:07 +01:00
Anatol Belski 339139f876 fix ACLs tests, make it create dir where it has to, not file 2015-01-05 19:19:24 +01:00
Anatol Belski 923394c509 fix ACLs setup for tests 2015-01-05 19:14:44 +01:00
Remi Collet e7cdf9df7c Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  NEWS
  Fix bug #68751 listen.allowed_clients is broken
2015-01-05 17:36:26 +01:00
Remi Collet 480044a0ea NEWS 2015-01-05 17:35:36 +01:00
Remi Collet eb1a1d5feb Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  Fix bug #68751 listen.allowed_clients is broken
2015-01-05 17:35:14 +01:00
Remi Collet 4bb580adb1 NEWS 2015-01-05 17:34:45 +01:00
Remi Collet 1b6d076244 Fix bug #68751 listen.allowed_clients is broken 2015-01-05 17:33:57 +01:00
Nikita Popov 1266515e19 Fix uses of zval_add_ref and add comment on usage
zval_add_ref should be used as a copy ctor, after the value was
already copied.

In particular when used with hash insertions, it should be applied
to the return value of the insert function.
2015-01-05 17:02:11 +01:00
Xinchen Hui 411980a8bc Merge branch 'master' of https://git.php.net/repository/php-src 2015-01-05 22:21:56 +08:00
Xinchen Hui faa4171507 Add test script and use efree_size 2015-01-05 22:21:37 +08:00
Xinchen Hui 40230eef81 Revert "Revert "Fix memory leak when dereferencing reference with refcount 1""
This reverts commit 7aab9659ee.
2015-01-05 22:13:22 +08:00
Matteo Beccati a51de2168d Merge branch 'PHP-5.6'
* PHP-5.6:
  Update test after fixing bug #68371
2015-01-05 12:12:02 +01:00
Matteo Beccati 38f1b569c2 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Update test after fixing bug #68371
2015-01-05 12:11:46 +01:00
Matteo Beccati ea1c0c5627 Update test after fixing bug #68371 2015-01-05 12:11:16 +01:00
Matteo Beccati 28ff513115 Merge branch 'PHP-5.6'
* PHP-5.6:
  Updated NEWS for #68371
  Ref #68371 - Added support for PDO::PGSQL_ATTR_DISABLE_PREPARES
2015-01-05 11:03:50 +01:00
Matteo Beccati e372e037dd Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Updated NEWS for #68371
2015-01-05 11:03:31 +01:00
Matteo Beccati 4a9ad2faff Updated NEWS for #68371 2015-01-05 11:01:54 +01:00
Matteo Beccati 3de6f80ff5 Ref #68371 - Added support for PDO::PGSQL_ATTR_DISABLE_PREPARES 2015-01-05 11:00:11 +01:00
Matteo Beccati 7d0887a229 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #68371 PDO#getAttribute() cannot be called with platform-specific attribute names
2015-01-05 10:48:40 +01:00
Matteo Beccati 488d3dac2e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #68371 PDO#getAttribute() cannot be called with platform-specific attribute names
2015-01-05 10:48:18 +01:00
Matteo Beccati 7d2f8525d8 Fixed bug #68371 PDO#getAttribute() cannot be called with platform-specific attribute names 2015-01-05 09:25:48 +01:00
Xinchen Hui c234ca8e17 Merge branch 'master' of https://git.php.net/repository/php-src 2015-01-05 00:26:33 -05:00
Xinchen Hui 7aab9659ee Revert "Fix memory leak when dereferencing reference with refcount 1"
This reverts commit f4cb5cc09d.

breaks tests Zend/tests/bug27268.phpt and Zend/tests/bug68262.phpt
2015-01-05 00:26:10 -05:00
Stanislav Malyshev d780334964 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix memory leak
2015-01-04 21:08:24 -08:00
Stanislav Malyshev 95183cc339 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix memory leak
2015-01-04 21:08:16 -08:00
Stanislav Malyshev 184b6d9e73 fix memory leak 2015-01-04 21:07:57 -08:00
Stanislav Malyshev e6e0b51db9 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixes #66764 -  configure doesn't define EXPANDED_DATADIR / PHP_DATADIR correctly
2015-01-04 20:55:25 -08:00
Stanislav Malyshev ec550cd783 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixes #66764 -  configure doesn't define EXPANDED_DATADIR / PHP_DATADIR correctly
2015-01-04 20:55:17 -08:00
Stanislav Malyshev eeae4651f7 Merge branch 'pull-request/975' into PHP-5.5
* pull-request/975:
  Fixes #66764 -  configure doesn't define EXPANDED_DATADIR / PHP_DATADIR correctly
2015-01-04 20:54:29 -08:00
Stanislav Malyshev 75e042e57a Merge branch 'PHP-5.6'
* PHP-5.6:
  fix GD tests with no GD loaded
  Fixed typo
  GD: imagepalettetotruecolor tests
2015-01-04 19:57:46 -08:00
Stanislav Malyshev 97f894e189 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix GD tests with no GD loaded
  Fixed typo
  GD: imagepalettetotruecolor tests
2015-01-04 19:57:29 -08:00
Stanislav Malyshev 5639c3350e Merge branch 'pull-request/742' into PHP-5.5
* pull-request/742:
  Fixed typo
  GD: imagepalettetotruecolor tests
2015-01-04 19:47:54 -08:00
Stanislav Malyshev 75f93ed663 fix GD tests with no GD loaded 2015-01-04 19:45:57 -08:00
Gustavo Frederico Temple Pedrosa f5e22d06c3 Specifying MACRO for ppc64
Add PowerPC64 too, which is capable to access unaligned words.
2015-01-04 19:24:41 -08:00
Chris Christoff 1ec26346bb Formatting fixes for git rules file
Formatting fixes for git rules file

This commit fixes 2 issues with the git rules
file. First, a typo of "::" has been changed to
":". Second, an extraneous space has been
removed.
2015-01-04 19:24:41 -08:00
Xinchen Hui 28985e982b Still -1 on *BSD now 2015-01-04 22:08:35 -05:00
Xinchen Hui 80c0a02286 This is 511 now (ebf4ffc935) 2015-01-04 22:04:32 -05:00
Stanislav Malyshev 73d74ac54c Merge branch 'pull-request/731'
* pull-request/731:
  Set FPM_BACKLOG_DEFAULT to 511
2015-01-04 19:00:05 -08:00
Bob Weinand f4cb5cc09d Fix memory leak when dereferencing reference with refcount 1 2015-01-05 00:28:53 +01:00
Jakub Zelenka 1119c4d2b2 Allow ill-formed unicode escapes in decoder 2015-01-04 17:34:49 +00:00
Jakub Zelenka 32d54acd00 Merge branch 'master' into jsond 2015-01-04 17:17:00 +00:00
Nikita Popov 2269b1801d Add missing string cast for non-cv var fetches 2015-01-04 18:07:44 +01:00
Nikita Popov 69a4b135f3 Fix use after free for variables with integer names 2015-01-04 17:57:23 +01:00
Anatol Belski 4d6fb5e684 updated libmagic.patch 2015-01-04 17:09:06 +01:00
Anatol Belski 85bdb21b6e Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libmagic.patch in 5.6
  updated libmagic.patch in 5.5
  updated libmagic.patch in 5.4
2015-01-04 17:08:15 +01:00
Anatol Belski 03ae6f22b6 updated libmagic.patch in 5.6 2015-01-04 17:07:32 +01:00
Anatol Belski d104f2ea88 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated libmagic.patch in 5.5
  updated libmagic.patch in 5.4
2015-01-04 17:06:15 +01:00
Anatol Belski 4ed261870f updated libmagic.patch in 5.5 2015-01-04 17:05:42 +01:00
Anatol Belski c772261319 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated libmagic.patch in 5.4
2015-01-04 17:04:53 +01:00
Anatol Belski ebb98e7aeb updated libmagic.patch in 5.4 2015-01-04 17:04:13 +01:00
Anatol Belski 723319813b Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  updated NEWS
  Fixed bug #68735 fileinfo out-of-bounds memory access
2015-01-04 14:25:28 +01:00
Anatol Belski 5c0f03275e updated NEWS 2015-01-04 14:24:59 +01:00
Anatol Belski 28e44f9d44 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  Fixed bug #68735 fileinfo out-of-bounds memory access
2015-01-04 14:23:56 +01:00
Anatol Belski d3f171117c updated NEWS 2015-01-04 14:23:33 +01:00
Anatol Belski 5fe54dbaf9 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #68735 fileinfo out-of-bounds memory access
2015-01-04 14:22:37 +01:00
Anatol Belski ede59c8feb Fixed bug #68735 fileinfo out-of-bounds memory access 2015-01-04 14:20:21 +01:00
Anatol Belski f6abcd981f Merge branch 'PHP-5.6'
* PHP-5.6:
  removed dead code
2015-01-04 09:43:33 +01:00
Anatol Belski c06f66563a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  removed dead code

Conflicts:
	ext/fileinfo/libmagic/readelf.c
	ext/fileinfo/libmagic/readelf.h
2015-01-04 09:42:46 +01:00
Anatol Belski b644dcfb72 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  removed dead code
2015-01-04 09:40:56 +01:00
Remi Collet 919abf0cb1 removed dead code 2015-01-04 09:40:19 +01:00
Stanislav Malyshev 599d7a3968 Fix bug #68706 - uninitalized pointer in mbstring 2015-01-03 21:55:29 -08:00
Ferenc Kovacs 83db775323 Fixes #66764 - configure doesn't define EXPANDED_DATADIR / PHP_DATADIR correctly 2015-01-03 19:18:07 +01:00
Remi Collet df4aaa81ef Fix Bug #68713 infinite loop / infinite free
PHP not affected (emalloc never return NULL)
Just to reduce diff with upstream and for legibility

Apply:
https://bitbucket.org/libgd/gd-libgd/commits/3c0d2203b2672b688d4d2326ff3a60b019879062
https://bitbucket.org/libgd/gd-libgd/commits/4af76c97a478d4e7c4b64e08ac67abbca7cbd0fb
2015-01-03 08:34:27 +01:00
Ferenc Kovacs c3b44b1175 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixes #67960 - Long/short day names reversed in jddayofweek()

Conflicts:
	ext/calendar/calendar.c
2015-01-02 10:16:37 +01:00
Ferenc Kovacs fe46966678 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixes #67960 - Long/short day names reversed in jddayofweek()
2015-01-02 10:15:01 +01:00
Greg Roach 244fc1e053 Fixes #67960 - Long/short day names reversed in jddayofweek() 2015-01-02 10:14:12 +01:00
Stanislav Malyshev b585a3aed7 Fix for bug #68710 (Use After Free Vulnerability in PHP's unserialize()) 2015-01-01 16:19:05 -08:00
Jakub Zelenka 8e10250449 Use ZVAL_COPY_VALUE for copying parser result to return_value 2015-01-01 19:19:31 +00:00
Brad Broerman 8ded274413 Re-ordered the read and write methods to match the order of the original code, to make the DIFF easier to read. 2014-12-31 13:30:48 -05:00
Brad Broerman fea9253c1c try to update mod 2014-12-31 10:59:57 -05:00
Brad Broerman f22c3d643a Fixed indentation 2014-12-31 10:49:21 -05:00
Anatol Belski 95e04fed24 cleanup redundand macros 2014-12-31 16:25:42 +01:00
Brad Broerman 49571cfad7 Merge remote-tracking branch 'upstream/master'
Conflicts:
	ext/openssl/xp_ssl.c
2014-12-30 19:44:45 -05:00
Sara Golemon 365f428d46 Allow the third arg to DateTime(Immutable)::createFromFormat() to be null.
Permit the same meaning as not passing the arg at all.
2014-12-30 13:58:59 -08:00
Anatol Belski ef19072af2 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated libmagic.patch
  updated libmagic.patch
2014-12-30 20:28:52 +01:00
Anatol Belski fa0b5e2c6d updated libmagic.patch 2014-12-30 20:28:13 +01:00
Anatol Belski ce6cbb3110 updated libmagic.patch 2014-12-30 20:22:51 +01:00
Anatol Belski a0cf63f526 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated libmagic.patch
2014-12-30 20:22:08 +01:00
Anatol Belski 99162b8198 updated libmagic.patch 2014-12-30 20:21:28 +01:00
Anatol Belski a78eaddbe0 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  Fixed bug #68671 incorrect expression in libmagic

Conflicts:
	ext/fileinfo/libmagic/print.c
2014-12-30 19:41:07 +01:00
Anatol Belski 85b4a65520 updated NEWS 2014-12-30 19:39:14 +01:00
Anatol Belski 091ea62262 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #68671 incorrect expression in libmagic
2014-12-30 19:38:08 +01:00
Anatol Belski d92a87d7cb Fixed bug #68671 incorrect expression in libmagic 2014-12-30 19:37:27 +01:00
Adam Harvey 2d561e0e26 Merge branch 'PHP-5.6'
* PHP-5.6:
  Check the return value of lo_export.
2014-12-30 18:01:51 +00:00
Adam Harvey 3ef6e3726c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Check the return value of lo_export.
2014-12-30 17:59:39 +00:00
Adam Harvey 211f4ceeae Check the return value of lo_export.
Patch by Ondřej Surý. Fixes bug #68697 (lo_export return -1 on failure).
2014-12-30 17:47:19 +00:00
Anatol Belski 68d212748d Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWS
  Fixed bug #66679 Alignment Bug in PCRE 8.34 upstream
  remove BOM from NEWS
2014-12-30 16:52:54 +01:00
Anatol Belski ab3a746a2d updated NEWS 2014-12-30 16:52:17 +01:00
Anatol Belski 3485925a3a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #66679 Alignment Bug in PCRE 8.34 upstream
  remove BOM from NEWS
2014-12-30 16:51:06 +01:00
Anatol Belski d5123415f6 Fixed bug #66679 Alignment Bug in PCRE 8.34 upstream 2014-12-30 16:50:22 +01:00
Anatol Belski 6e36ded569 remove BOM from NEWS 2014-12-30 16:47:10 +01:00
Dmitry Stogov aa8ecbedcb Simplify array_splice() 2014-12-30 18:15:15 +03:00
Dmitry Stogov c6bc209e50 Simplify array_unshift() 2014-12-30 17:04:24 +03:00
Dmitry Stogov f9a70c50a4 Simplify array_pad() 2014-12-30 17:03:38 +03:00
Stanislav Malyshev 16b904cc1c Merge branch 'PHP-5.6'
* PHP-5.6:
  FIx bug #68618 (out of bounds read crashes php-cgi)
  Fixed bug #68676 (Explicit Double Free)
  Fixed bug #68676 (Explicit Double Free)
2014-12-30 01:27:20 -08:00
Stanislav Malyshev 4c0f17caca Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  FIx bug #68618 (out of bounds read crashes php-cgi)
  Fixed bug #68676 (Explicit Double Free)
2014-12-30 01:26:53 -08:00
Stanislav Malyshev 71c970077d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  FIx bug #68618 (out of bounds read crashes php-cgi)
2014-12-30 01:26:00 -08:00
Stanislav Malyshev f9ad308669 FIx bug #68618 (out of bounds read crashes php-cgi) 2014-12-30 01:23:05 -08:00
Stanislav Malyshev f2fc1bdb33 Make the code lesss suspicious (can't be really 0 but it's not obvious) 2014-12-30 00:16:21 -08:00
Stanislav Malyshev 949ffc0a8f Merge branch 'intl_size_t'
* intl_size_t:
  cleanup intl types
2014-12-29 15:04:00 -08:00
Stanislav Malyshev 82f3d36583 cleanup intl types 2014-12-29 14:06:12 -08:00
Dmitry Stogov 6b20895c21 Use HashTable.u.flags instead of HashTable.arHash to check if HashTable is properly initialized 2014-12-30 00:14:13 +03:00
Stanislav Malyshev ee7decb7ff Revert "Add type info for spl_autoload_register"
This reverts commit ad728725cb.

Revert the change for now, probably needs better handling with account to BC
or joined with exceptions-in-engine RFC.
2014-12-29 09:50:00 -08:00
Andrea Faulds 41e3fdba8e Make zend_parse_parameters share fast zpp implementation where possible
Rename shared implementation functions and build them unconditionally

Don't fail on empty path for zend_parse_arg_path

Update type names

Fix behaviour of by-reference "z"

Make 'o' use zend_parse_arg_object

Fix NULL string check in zend_parse_arg_path(_str)
2014-12-29 12:28:28 +00:00
Dmitry Stogov cd5ea1619e Micro optimization for better register allocation 2014-12-29 14:21:16 +03:00
Dmitry Stogov 0fa50fb95d Reored conditions 2014-12-29 14:20:52 +03:00
Dmitry Stogov d909a837e2 Cleanup 2014-12-29 13:38:36 +03:00
Kalle Sommer Nielsen fbf3a6bc1a Fixed bug #68676 (Explicit Double Free) 2014-12-29 11:04:23 +01:00
Kalle Sommer Nielsen bb3bcf0c5d Merge branch 'master' of https://git.php.net/push/php-src 2014-12-29 11:00:15 +01:00
Kalle Sommer Nielsen 24125f0f26 Fixed bug #68676 (Explicit Double Free) 2014-12-29 10:57:42 +01:00
Kalle Sommer Nielsen 2bcf69d073 Fixed bug #68676 (Explicit Double Free) 2014-12-29 10:55:14 +01:00
Stanislav Malyshev 78d7ad27e2 eliminate usage of deprecated zend_get_parameters_ex 2014-12-28 23:46:42 -08:00
Stanislav Malyshev b946621333 fix "comparing size_t to <0" warning 2014-12-28 23:46:28 -08:00
Stanislav Malyshev 983fdb25ea fix typo 2014-12-28 23:18:12 -08:00
Kalle Sommer Nielsen 334b9718d5 Fix tests I broke with the E_ERROR > E_RECOVERABLE_ERROR change 2014-12-29 07:54:44 +01:00
Xinchen Hui 3bd96e0735 Use internd string as key 2014-12-29 14:35:08 +08:00
Xinchen Hui f579ae81c9 Fixed build of litespped 2014-12-29 13:46:01 +08:00
Kalle Sommer Nielsen c0b56232ba Be verbose if --with-mp is enabled 2014-12-28 19:40:33 +01:00
Levi Morrison ad728725cb Add type info for spl_autoload_register 2014-12-28 10:16:25 -07:00
Anatol Belski 68dd8e8bd7 fix invalid free mentioned in bug 68665
thanks honey at internot dot info
2014-12-28 16:36:07 +01:00
Anatol Belski 67c47e7861 added test for bug #68665 2014-12-28 16:29:07 +01:00
Anatol Belski ef89ab2f99 Merge branch 'PHP-5.6'
* PHP-5.6:
  updated NEWs
  Fixed bug #68665 (Invalid free)
2014-12-28 14:02:25 +01:00
Anatol Belski 422f323982 updated NEWs 2014-12-28 14:00:58 +01:00
Anatol Belski a72cd07f29 Fixed bug #68665 (Invalid free) 2014-12-28 13:58:01 +01:00
Levi Morrison 9a7ee202bb Fix bug #68641
Include more reflection information for spl_autoload_register
2014-12-27 19:05:16 -07:00
Kalle Sommer Nielsen ff7e8e94d7 Implemented FR #55428 (E_RECOVERABLE_ERROR when output buffering in output buffering handler)
## Can probably go in lower branches, but I'd like to keep it in
## master for now
2014-12-27 20:56:39 +01:00
Jakub Zelenka 8c4c16d1c2 Merge branch 'master' into jsond 2014-12-27 19:43:16 +00:00
Jakub Zelenka b68da91d52 Merge branch 'master' into jsond
Conflicts:
	ext/json/JSON_parser.c
	ext/json/JSON_parser.h
	ext/json/config.m4
	ext/json/config.w32
	ext/json/json.c
	ext/json/php_json.h
2014-12-27 19:42:04 +00:00
Dmitry Stogov 107ae86ca6 Introduce specialized functions to compare with integer and string, to eliminate repeatable checks on each loop iteration in in_array() function. 2014-12-27 11:11:40 +03:00
Dmitry Stogov 37466b0368 Use special flag (HASH_FLAG_INITIALIZED) instead of (nTableMask == 0) to indicate that HashTable is allocated.
Make nTableMask to be 0 for packed arrays.
Remove checks fo HASH_FLAG_PACKED in zend_hash_find/zend_hash_del and family (string keys are resolved through uninitialized_bucket).
Change HashTable layout for better locality.
2014-12-27 11:07:12 +03:00
Keyur Govande e4ef6bf2e5 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix for failing tests. gcc 4.8.3 would optimize away the assigment.
2014-12-26 20:38:26 +00:00
Keyur Govande 83e5547827 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix for failing tests. gcc 4.8.3 would optimize away the assigment.
2014-12-26 20:37:50 +00:00
Keyur Govande aa192f57c9 Fix for failing tests. gcc 4.8.3 would optimize away the assigment. 2014-12-26 20:36:19 +00:00
Nikita Popov 2d212b426a Drop duplicate arg from hash_get_current_key_ex 2014-12-26 21:06:18 +01:00
Nikita Popov 3d12fc796b Small cleanups in hash implementation
* Drop unnecessary checks in non-inlined part of numeric key
   detection
 * Drop zend_hash_apply_deleter in favor of zend_hash_del_el.
   Also move block/unblock interruption macros in there.
2014-12-26 21:06:18 +01:00
Dmitry Stogov ab0b15b8ff Optimized destruction of extra arguments passed to user functions.
If no refcounted arguments are passed, then destruction code is not triggered at all.
(Full rebuild required)
2014-12-26 22:34:44 +03:00
Xinchen Hui 4409b6db3e Revert "Revert "Fix failing tests""
This reverts commit c2a047cf99.
2014-12-26 09:38:24 -05:00
Anatol Belski c71cd8f8e0 remove the extra comma 2014-12-26 13:08:57 +01:00
Dmitry Stogov 814df43fb9 Reimplemented used stack size recalculation (replaced 3d4babdc2b) 2014-12-26 12:42:38 +03:00
Remi Collet af11f818fb Merge branch 'PHP-5.6'
* PHP-5.6:
  NEWS
  Fix bug #68656 Report gd library version
2014-12-26 08:35:31 +01:00
Remi Collet 76d6c4f9ec NEWS 2014-12-26 08:35:08 +01:00
Remi Collet faba230153 Fix bug #68656 Report gd library version 2014-12-26 08:33:21 +01:00
Xinchen Hui 898cae2e63 Merge branch 'PHP-5.6' 2014-12-25 06:21:48 -05:00
Xinchen Hui 316f72ce28 Merge branch 'PHP-5.5' into PHP-5.6 2014-12-25 06:21:14 -05:00
Xinchen Hui 80260bcfa6 Fixed test 2014-12-25 06:20:52 -05:00
Xinchen Hui 3d4babdc2b Adjust tempoary variable used in caller's side 2014-12-25 14:57:58 +08:00
Xinchen Hui 457c53182b Re-apply part fix of 4e2c016 2014-12-25 00:43:39 -05:00
Xinchen Hui 99e2889a2c Fixed test 2014-12-25 00:39:54 -05:00
Xinchen Hui c2a047cf99 Revert "Fix failing tests"
This fix break test due to precision setting

This reverts commit 4e2c01617f.

Conflicts:
	ext/mysqli/tests/mysqli_change_user.phpt
	ext/mysqli/tests/table.inc
2014-12-25 00:36:26 -05:00
Xinchen Hui 31e978ff5c Fixed tests fails 2014-12-25 11:33:07 +08:00
Xinchen Hui 94d26ad4b9 Add php_string_tolower/toupper which is locale depened 2014-12-25 11:29:11 +08:00
Xinchen Hui f26c50e320 Revert "Use zend_string_tolower in zif_strtolower"
This reverts commit 06abeab50c.
2014-12-25 10:41:10 +08:00
Xinchen Hui 0c45d1dac6 Merge branch 'master' of https://git.php.net/repository/php-src 2014-12-24 08:16:44 -05:00
Xinchen Hui 06abeab50c Use zend_string_tolower in zif_strtolower 2014-12-24 08:16:17 -05:00
Anatol Belski 86af370b81 remove unused variable 2014-12-24 14:14:29 +01:00
Anatol Belski 385bda6cdf C89 compat 2014-12-24 14:14:28 +01:00
Xinchen Hui 231db90b28 Merge branch 'master' of https://git.php.net/repository/php-src 2014-12-24 07:45:25 -05:00
Xinchen Hui e0ca75a454 No need to do this check for master, ZEND_COMPILE_NO_BUILTIN_STRLEN already cover it 2014-12-24 20:42:17 +08:00
Dmitry Stogov f2c2acb9a9 For disabled function, to disable arguments checks, we have to reset num_args and some related flags (in addition to arg_info) 2014-12-24 15:34:52 +03:00
Dmitry Stogov c42ac09518 Added new API function 'zend_string* zend_string_tolower(zend_string*)'.
It simplifies code and avoids unnecessary allocation and copying if string is already in lower case.
2014-12-24 15:04:51 +03:00
Xinchen Hui 288b6d78b0 Update NEWs 2014-12-24 18:30:36 +08:00
Xinchen Hui d4f89fbda4 Merge branch 'PHP-5.6'
Conflicts:
	ext/opcache/Optimizer/pass1_5.c
2014-12-24 18:30:06 +08:00
Xinchen Hui bba4a8aad5 Fixed bug #68644 (strlen incorrect : mbstring + func_overload=2 +UTF-8 + Opcache) 2014-12-24 17:55:58 +08:00
Xinchen Hui 3139ba6116 FAST_ZPP for hot functions 2014-12-23 23:07:55 -05:00
Anatol Belski e46852d2d5 better fix for script encoding ini 2014-12-23 17:33:30 +01:00
Anatol Belski e2e5ed06d1 fix NULL deref when the script encoding wasn't previously set 2014-12-23 17:09:13 +01:00
Dmitry Stogov 106b1017d4 API for fast construction of packed arrays 2014-12-23 19:08:28 +03:00
K. c462ff7ac2 zend_hash_do_resize: fix compacting condition
nNumUsed should always be greater or equal to nNumOfElements so original condition is never true and arrays are always doubled in size and compaction is never triggered
2014-12-23 15:32:15 +01:00
Anatol Belski 60d491c970 throw error in configure.js when no 64-bit compiler detected 2014-12-23 14:06:30 +01:00
Anatol Belski bc33171ac6 improved system time function determination
It doesn't need to LoadLibrary and all that stuff every time, but
once on the first access. Also the functions which are not directly
used inlined now.
2014-12-23 13:00:30 +01:00
Anatol Belski e60b7207db cleanup 2014-12-23 13:00:29 +01:00
Dmitry Stogov 7624fb6e8b Fixed possible crash (pcre cache must keep permanent strings) 2014-12-23 14:38:30 +03:00
Xinchen Hui 62e2973602 Revert "Improve Hash foreach macros"
This reverts commit 95bb0a0f7a.
2014-12-23 03:51:06 -05:00
Xinchen Hui 95bb0a0f7a Improve Hash foreach macros 2014-12-23 00:50:39 -05:00
Xinchen Hui 4b26c5d004 Please becareful with the tailed space after slash 2014-12-22 22:59:17 -05:00
Andrea Faulds b2853e7494 share that hunk of code 2014-12-23 01:51:19 +00:00
Dmitry Stogov 6ec5ab77df Improved trim/ltrim/rtrim functions.
Now php_trim() operates on zend_string and returns zend_string (it may return the same zend_string).
2014-12-23 04:29:41 +03:00
Dmitry Stogov dedf44bacc Improved array_keys() 2014-12-23 04:29:27 +03:00
Dmitry Stogov f3506dfacb Improved get_object_vars() 2014-12-23 02:49:47 +03:00
Dmitry Stogov 6a6cdecbdb Improved unserialize() 2014-12-23 02:49:33 +03:00
krakjoe 854ccf50c9 remove 3.0 from excluded versions because limitation lifted by native-tls 2014-12-22 21:32:14 +00:00
Dmitry Stogov fd4844e079 Removed useless checks 2014-12-22 19:04:29 +03:00
Xinchen Hui e0e2d50046 Merge branch 'master' of https://git.php.net/repository/php-src 2014-12-22 23:48:10 +08:00
Xinchen Hui 8cd8c2ccfb Fixed warning 2014-12-22 23:39:32 +08:00
Dmitry Stogov 2646f7bcb9 Don't count variadic argument in zend_func.common.num_args. This allows faster CALL/RETURN code. 2014-12-22 16:44:39 +03:00
Anatol Belski 2bc63e7b6d missed include for intptr_t/uintptr_t 2014-12-22 11:28:13 +01:00
Anatol Belski d59fc5951e use cleaner tsrm_intptr_t/tsrm_uintptr_t typedef 2014-12-22 11:08:52 +01:00
Dmitry Stogov 552c06d439 typo 2014-12-22 12:31:00 +03:00
Xinchen Hui b5b617674e Micro optimaztion (yeah, I know compiler supposed to do that) 2014-12-22 00:10:46 -05:00
Xinchen Hui cc4a198d19 Fixed segfault 2014-12-21 23:18:56 -05:00
Xinchen Hui c24125e2f9 Micro optimization 2014-12-21 23:16:25 -05:00
Xinchen Hui 201e1b8a8d Micro optimizations 2014-12-21 22:35:25 -05:00
Xinchen Hui 0adceaa87b Merge branch 'master' of https://git.php.net/repository/php-src 2014-12-21 21:53:32 -05:00
Ferenc Kovacs a9e86957c7 fix zts build on mac/clang 2014-12-21 20:01:39 +01:00
Adrian bdb2d49071 Update zend_accelerator_hash.c 2014-12-21 15:22:49 +01:00
Andrea Faulds e5eb9530ab Use "float" and "integer" in typehint and zpp errors 2014-12-21 13:23:02 +00:00
Andrea Faulds e20cbdbe97 Unify HTTP status code maps 2014-12-21 03:12:39 +00:00
Andrea Faulds dca2e96885 UPGRADING and NEWS cleanups 2014-12-21 03:08:29 +00:00
Dmitry Stogov 0833fd4619 Allow arrays with define(), to match const syntax support 2014-12-21 03:03:49 +00:00
Xinchen Hui abb98080c7 Make it inline 2014-12-20 05:17:56 -05:00
Nikita Popov c94f62d0d9 Merge branch 'PHP-5.6'
Conflicts:
	ext/opcache/Optimizer/pass2.c
2014-12-19 21:51:05 +01:00
Nikita Popov 87ccf50bad Merge branch 'PHP-5.5' into PHP-5.6 2014-12-19 21:46:38 +01:00
Nikita Popov aa394e70ff Fix bug #67111
Loop variables need to be freed for both "break" and "continue".

I'm adding the test to Zend/ because it's good to have a test for
this even without opcache.
2014-12-19 21:42:42 +01:00
Dmitry Stogov 00628afd74 Fixed memory leaks 2014-12-19 19:43:17 +03:00
Dmitry Stogov ffc49acabc Avoid NULL pointer dereferencing 2014-12-19 18:20:55 +03:00
Dmitry Stogov 4514ba016f Improved setlocale(). Eliminated locale comparison in ext/pcre if it's not necessary. 2014-12-19 18:00:16 +03:00
Dmitry Stogov 92655be7cf Enabled JIT for preg_split(). Use better zend_hash_*() functions. 2014-12-19 14:51:41 +03:00
Dmitry Stogov f7b6518d10 don't sort array with single element 2014-12-19 13:07:35 +03:00
Dmitry Stogov 441270db2c Simplify condition 2014-12-19 13:06:34 +03:00
Anatol Belski 373a7a4a75 fixed tests 2014-12-19 10:24:57 +01:00
Anatol Belski 6b59b276fd C89 compat 2014-12-19 07:17:30 +01:00
Dmitry Stogov 6a992e4583 Improves strtotime() function. 2014-12-19 05:07:47 +03:00
Dmitry Stogov dae53dfc69 Improved array_diff() function (use simple and more efficient algorithm). 2014-12-19 05:06:54 +03:00
Dmitry Stogov 989c6ecfb5 Improved chr() function. Use FAST_ZPP, use interned strings. 2014-12-19 05:05:30 +03:00
Andrea Faulds 489961d02c More UPGRADING, NEWS 2014-12-19 01:06:46 +00:00
Andrea Faulds ccebf60db3 UPGRADING for Unicode Codepoint Escape Syntax 2014-12-19 00:58:49 +00:00
Andrea Faulds bae46f307c Unicode Codepoint Escape Syntax 2014-12-19 00:40:59 +00:00
Nikita Popov 0f815642e0 Drop ZEND_PRINT opcode in favor of ZEND_ECHO
The return value long(1) is an IS_CONST operand now.
2014-12-18 14:39:40 +01:00
Anatol Belski 4b943c9c0d Merge remote-tracking branch 'origin/native-tls' 2014-12-18 10:09:02 +01:00
Jakub Zelenka 4f6539bdaf Remove old parser 2014-12-14 19:12:24 +00:00
Jakub Zelenka b9ad0002f5 Merge branch 'master' into jsond 2014-12-14 18:39:14 +00:00
Jakub Zelenka 0bfa245aa3 Modify json/tests/pass003 to ignore internal object ID
Child is now created first - bottom up parsing (LR)
2014-12-12 20:00:08 +00:00
Jakub Zelenka 9e5f687957 Fix json object decoding 2014-12-12 19:52:45 +00:00
redfoxli 7953d830ab follow C89 format 2014-12-10 21:58:57 +08:00
redfoxli d0a58695d0 fix-bug-68571-to-php5.5 2014-12-09 19:42:55 +08:00
Adrian 3141922321 hashmap sizes 2014-12-08 13:54:12 +01:00
Adrian 9995452583 Wasted Shared Memory aboce 2Gb fix 2014-12-08 13:14:15 +01:00
Jakub Zelenka c6d0905158 Do not copy return_value in parser 2014-12-07 20:27:03 +00:00
Gustavo Frederico Temple Pedrosa bce2e670aa Update config.guess and config.sub 2014-12-04 17:56:20 +00:00
Jakub Zelenka c51ea47996 Change string buffer handling in json scanner 2014-12-03 20:47:52 +00:00
Jakub Zelenka 098097d83f Fix compilation for json scanner 2014-11-30 18:29:48 +00:00
Jakub Zelenka f18aae6042 Fix compilation for json_encoder 2014-11-30 17:47:17 +00:00
Jakub Zelenka 79e8355631 Fix compilation issues in json_parser 2014-11-26 20:49:55 +00:00
Jakub Zelenka a4e59c39a7 Add missing bits to php_json.h 2014-11-25 20:36:41 +00:00
Jakub Zelenka e18dd67975 Move json encoding stuff 2014-11-24 20:46:13 +00:00
Jakub Zelenka f00b80a511 Implement initial changes for json_parser 2014-11-23 19:53:06 +00:00
Jakub Zelenka ba70ba5f13 Replace INIT_PZVAL_COPY with ZVAL_DUP 2014-11-16 15:21:01 +00:00
Jakub Zelenka 432b73fdee Add error codes to php_json.h 2014-11-16 15:13:15 +00:00
Jakub Zelenka d07bf91328 Initial import of jsond 2014-11-13 20:20:46 +00:00
Matteo Beccati 3e4b91ec7f Fixed bug #68371 PDO#getAttribute() cannot be called with platform-specific attribute names 2014-11-10 08:16:35 +01:00
Frank Stolle 1106b10ae8 Fix #66479: Wrong response to FCGI_GET_VALUES
Requesting Get-Values via FCGI caused an "endless" loop over the last requested parameter and ended with an invalid response. this patch solves this loop bug.
2014-10-30 13:24:06 +01:00
Tjerk Meesters fcb1ab1b0e Revert "Revert "Updated UPGRADING for ext/ereg removal""
This reverts commit 98b8050433.
2014-09-11 19:26:18 +08:00
Tjerk Meesters 18fa07e68f Revert "Revert "Removing ext/ereg and dependencies""
This reverts commit 1981dd9c73.
2014-09-11 19:25:42 +08:00
Carlos André Ferrari 2659b0f3cb Fixed typo 2014-07-25 09:45:16 -03:00
Carlos André Ferrari 660cfeabb4 GD: imagepalettetotruecolor tests 2014-07-25 09:45:16 -03:00
renyongquan ebf4ffc935 Set FPM_BACKLOG_DEFAULT to 511
It is too large for php-fpm to set the listen backlog to 65535.
It is realy NOT a good idea to clog the accept queue especially
when the client or nginx has a timeout for this connection.

Assume that the php-fpm qps is 5000. It will take 13s to completely
consume the 65535 backloged connections. The connection maybe already
have been closed cause of timeout of nginx or clients. So when we accept
the 65535th socket, we get a broken pipe.

Even worse, if hundreds of php-fpm processes get a closed connection
they are just wasting time and resouces to run a heavy task and finally
get error when writing to the closed connection(error: Broken Pipe).

The really max accept queue size will be backlog+1(ie, 512 here).
We take 511 which is the same as nginx and redis.
2014-07-22 16:16:22 +08:00
Rouven Weßling 7e43b4f908 Remove unused code from ext/json. 2014-03-30 18:06:39 +02:00
Rouven Weßling aee6344e24 Add ZEND_ARG_CALLABLE_INFO to allow internal function to type hint against callable. 2014-01-25 00:04:50 +01:00
Brad Broerman e4c967a028 Refactored read / write and enabe
Per requests from users, I refactored the read / write methods and pulled out some of the common code between the new refactored method and php_openssl_enable_crypto(). Personally, I think that too much factoring can reduce readability, but it was specifically asked for.
2013-02-24 09:54:39 -05:00
Brad Broerman 40bebe54f9 Fixed whitespace, tabbing, etc.
Updated to meet existing style, and PHP coding standards.
2013-01-24 20:22:01 -05:00
Brad Broerman fae955a1ae Updated to fix async reads/writes. 2013-01-21 11:35:58 -05:00
Brad Broerman 277efaffab Updated to fix timeouts on blocking I/O
Read and write on blocking SSL based IO will now obey the configured timeout.
2013-01-20 12:48:24 -05:00
4549 changed files with 381530 additions and 232885 deletions

No files matched your search

+2 -2
View File
@@ -73,7 +73,7 @@ define dump_bt
set $callFrameSize = (sizeof(zend_execute_data) + sizeof(zval) - 1) / sizeof(zval)
set $count = $ex->num_args
set $count = $ex->This.u2.num_args
set $arg = 0
while $arg < $count
if $arg > 0
@@ -181,7 +181,7 @@ define ____printzv_contents
printf "array: "
if ! $arg1
set $ind = $ind + 1
____print_ht $zvalue->value.ht 1
____print_ht $zvalue->value.arr
set $ind = $ind - 1
set $i = $ind
while $i > 0
-1
View File
@@ -49,7 +49,6 @@ UPGRADING.INTERNALS merge=NEWS
/ext/spl/tests/SplArray_fromArray.phpt -crlf
/ext/standard/tests/dir/scandir_variation3.phpt -crlf
/ext/standard/tests/general_functions/escapeshellcmd-win32.phpt -crlf
/ext/standard/tests/general_functions/set_magic_quotes_runtime_error.phpt -crlf
/ext/standard/tests/strings/bug26817.phpt -crlf
/ext/standard/tests/strings/bug26973.phpt -crlf
/ext/standard/tests/strings/bug27457.phpt -crlf
+2 -3
View File
@@ -188,6 +188,7 @@ ext/iconv/php_have_glibc_iconv.h
ext/iconv/php_php_iconv_impl.h
ext/iconv/php_have_iconv.h
ext/iconv/php_iconv_supports_errno.h
ext/iconv/php_iconv_broken_ignore.h
ext/mbstring/libmbfl/Makefile.in
ext/mbstring/libmbfl/autoscan.log
ext/mbstring/libmbfl/config.sub
@@ -256,7 +257,7 @@ main/config.w32.h
main/stamp-h1
main/streams/build-defs.h
main/streams/stamp-h1
pear/install-pear-nozlib.phar
#pear/install-pear-nozlib.phar
pear/phpize
pear/run-tests
pear/php-config
@@ -284,5 +285,3 @@ win32/*.positions
win32/ext
win32/phpts.def
win32/wsyslog.h
win32/win32.dsp
win32/php.dsw
+8 -2
View File
@@ -7,6 +7,11 @@ branches:
notifications:
email:
on_failure: change
irc:
channels:
- "irc.efnet.org#php.pecl"
on_success: change
on_failure: always
cache:
- apt
@@ -26,7 +31,7 @@ env:
before_install:
- sudo apt-get update -qq
- sudo apt-get install -y libenchant-dev libaspell-dev libpspell-dev librecode-dev
- sudo apt-get install -y libenchant-dev libaspell-dev libpspell-dev librecode-dev libsasl2-dev libxpm-dev libt1-dev libc-client2007e-dev
- sudo cp ./travis/de /var/lib/locales/supported.d/de
- sudo dpkg-reconfigure locales
- ./travis/install.sh
@@ -40,8 +45,9 @@ before_script:
- . ./travis/ext/pdo_mysql/setup.sh
- . ./travis/ext/pgsql/setup.sh
- . ./travis/ext/pdo_pgsql/setup.sh
- . ./travis/ext/imap/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
- ./sapi/cli/php run-tests.php -p `pwd`/sapi/cli/php $(if [ $ENABLE_DEBUG == 1 ]; then echo "-d opcache.enable_cli=1 -d zend_extension=`pwd`/modules/opcache.so"; fi) -g "FAIL,XFAIL,BORK,WARN,LEAK,SKIP" --offline --show-diff --set-timeout 120
- ./sapi/cli/php sapi/phpdbg/tests/run-tests.php -diff2stdout --phpdbg sapi/phpdbg/phpdbg
+2
View File
@@ -18,6 +18,7 @@ Code Implementation
For instance, ``function int mail(char *to, char *from)`` should NOT free
to and/or from.
Exceptions:
- The function's designated behavior is freeing that resource. E.g. efree()
@@ -112,6 +113,7 @@ User Functions/Methods Naming Conventions
of ``parent_*``::
A family of 'foo' functions, for example:
Good:
'foo_select_bar'
'foo_insert_baz'
+73
View File
@@ -0,0 +1,73 @@
# Contributing to PHP
Anybody who programs in PHP can be a contributing member of the community that
develops and deploys it; the task of deploying PHP, documentation and
associated websites is a never ending one. With every release, or release
candidate comes a wave of work, which takes a lot of organization and
co-ordination.
## Pull requests
PHP welcomes pull requests to [add tests](#writing-tests), fix bugs and to
implement RFCs. Please be sure to include tests as appropriate!
If you are fixing a bug, then please submit your PR against the lowest branch
of PHP that the bug affects, or the oldest fully supported version (the first
green branch on
[the supported version page](http://php.net/supported-versions.php). For
example, at the time of writing in mid-2015, this is PHP 5.5, which corresponds
to the `PHP-5.5` branch in Git. Please also make sure you add a link to the PR
in the bug on [the bug tracker](https://bugs.php.net/).
Pull requests to implement RFCs should be submitted against `master`.
## Filing bugs
Bugs can be filed on the [PHP bug tracker](https://bugs.php.net/). If this is
the first time you've filed a bug, we suggest reading the
[guide to reporting a bug](https://bugs.php.net/how-to-report.php).
Where possible, please include a self-contained reproduction case!
## Feature requests
Feature requests are generally submitted in the form of
[Requests for Comment](https://wiki.php.net/rfc/howto), ideally accompanied by
[pull requests](#pull-requests). You can find the extremely large list of RFCs
that have been previously considered on the
[PHP Wiki](https://wiki.php.net/rfc).
You may want to read
[The Mysterious PHP RFC Process](https://blogs.oracle.com/opal/entry/the_mysterious_php_rfc_process)
for additional notes on the best way to approach submitting an RFC.
## Writing tests
We love getting new tests! PHP is a huge project and improving code coverage is
a huge win for every PHP user.
[Our QA site includes a page detailing how to write test cases.](http://qa.php.net/write-test.php)
Please note that the section on submitting pull requests is outdated: in
addition to the process listed there, you can also
[submit pull requests](#pull-requests).
## Writing documentation
There are two ways to contribute to the PHP manual. You can edit the manual and
send patches anonymously via [the online editor](https://edit.php.net/), or you
can check the XML source out from Subversion and edit that and build it
[per the instructions on the documentation site](http://doc.php.net/tutorial/).
Patches created that way should be sent to the
[documentation mailing list](mailto:phpdoc@lists.php.net).
## Getting help
If you are having trouble contributing to PHP, or just want to talk to a human
about what you're working on, you can contact us via the
[internals mailing list](mailto:internals@lists.php.net), or the
[documentation mailing list](mailto:phpdoc@lists.php.net) for documentation
issues.
Although not a formal channel, you can also find a number of core developers on
the #php.pecl channel on [EFnet](http://www.efnet.org/). Similarly, many
documentation writers can be found on #php.doc.
+7 -85
View File
@@ -26,34 +26,12 @@ Status legend
== Server APIs ==
-------------------------------------------------------------------------------
EXTENSION: aolserver
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: apache
PRIMARY MAINTAINER: Rasmus Lerdorf <rasmus@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: apache_hooks
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: apache2filter
PRIMARY MAINTAINER: Aaron Bannert <aaron@php.net>
MAINTENANCE: Maintained
STATUS: Experimental
-------------------------------------------------------------------------------
EXTENSION: apache2handler
PRIMARY MAINTAINER: Aaron Bannert <aaron@php.net>, Ilia Alshanetsky <iliaa@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: caudium
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: cgi
MAINTENANCE: Unknown
STATUS: Working
@@ -63,11 +41,6 @@ MAINTENANCE: Marcus Boerger <helly@php.net>, Edin Kadribasic <edink@php.
STATUS: Working
SINCE: 4.3.0
-------------------------------------------------------------------------------
EXTENSION: continuity
PRIMARY MAINTAINER: Alex Leigh <aleigh@php.net>
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: embed
PRIMARY MAINTAINER: Edin Kadribasic <edink@php.net>
MAINTENANCE: Maintained
@@ -79,50 +52,15 @@ MAINTENANCE: Maintained
STATUS: Working
SINCE: 5.3.3
-------------------------------------------------------------------------------
EXTENSION: isapi
MAINTENANCE: Unknown
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: litespeed
PRIMARY MAINTAINER: George Wang <gwang@php.net>
MAINTENANCE: Maintained
STATUS: Working
SINCE: 5.3
-------------------------------------------------------------------------------
EXTENSION: milter
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: nsapi
PRIMARY MAINTAINER: Uwe Schindler <thetaphi@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: phttpd
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: pi3web
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: roxen
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: thttpd
PRIMARY MAINTAINER: Sascha Schumann <sascha@schumann.cx>
MAINTENANCE: Odd fixes
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: tux
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: webjames
PRIMARY MAINTAINER: Alex Waugh <alex@alexwaugh.com>
MAINTENANCE: Maintained
STATUS: Experimental
EXTENSION: phpdbg
MAINTENANCE: Joe Watkins <krakjoe@php.net>, Bob Weinand <bwoebi@php.net>
STATUS: 5.6
-------------------------------------------------------------------------------
@@ -136,21 +74,10 @@ STATUS: Working
COMMENT: DBM abstraction for db2, db3, db4, dbm, ndbm, gdbm, ini
-------------------------------------------------------------------------------
EXTENSION: interbase
PRIMARY MAINTAINER: Ard Biesheuvel <ard@ard.nu>, Jouni Ahto <jouni.ahto@exdec.fi>
PRIMARY MAINTAINER: Ard Biesheuvel <ard@ard.nu>
MAINTENANCE: Odd fixes
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: mssql
PRIMARY MAINTAINER: Frank M. Kromann <fmk@swwwing.com>
MAINTENANCE: Maintained
STATUS: Working
COMMENT: Tested on phpts and isapi versions
-------------------------------------------------------------------------------
EXTENSION: mysql
PRIMARY MAINTAINER: Zak Greant <zak@mysql.com>, Georg Richter <georg@php.net>, Andrey Hristov <andrey@php.net>, Johannes Schlüter <johannes@php.net>, Ulf Wendel <uw@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: mysqli
PRIMARY MAINTAINER: Georg Richter <georg@php.net>, Andrey Hristov <andrey@php.net>, Johannes Schlüter <johannes@php.net>, Ulf Wendel <uw@php.net>
MAINTENANCE: Maintained
@@ -235,11 +162,6 @@ STATUS: Working
SINCE: 5.3
COMMENT: Integrates SQLite 3 embeddable SQL database engine.
-------------------------------------------------------------------------------
EXTENSION: sybase_ct
PRIMARY MAINTAINER: Timm Friebe <thekid@thekid.de>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
== XML extensions ==
@@ -401,13 +323,13 @@ MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: json
PRIMARY MAINTAINER: Unknown
MAINTENANCE: Odd fixes
PRIMARY MAINTAINER: Jakub Zelenka <bukka@php.net>
MAINTENANCE: Maintained
STATUS: Working
SINCE: 5.2
-------------------------------------------------------------------------------
EXTENSION: ldap
PRIMARY MAINTAINER: Stig Venaas <venaas@php.net>, Douglas Goldstein <cardoe@php.net>, Pierre-Alain Joye <pajoye@php.net>
PRIMARY MAINTAINER: Stig Venaas <venaas@php.net>, Douglas Goldstein <cardoe@php.net>, Pierre-Alain Joye <pajoye@php.net>, Côme Bernigaud <mcmic@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
+1 -1
View File
@@ -464,7 +464,7 @@ LoadModule php7_module modules/libphp7.so
Or, if we wanted to allow .php, .php2, .php3, .php4, .php5, .php7,
and .phtml files to be executed as PHP, but nothing else, we'd use
this:
<FilesMatch "\.ph(p[2-6]?|tml)$">
<FilesMatch "\.ph(p[2-7]?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
And to allow .phps files to be handled by the php source filter,
+1 -1
View File
@@ -1,6 +1,6 @@
--------------------------------------------------------------------
The PHP License, version 3.01
Copyright (c) 1999 - 2014 The PHP Group. All rights reserved.
Copyright (c) 1999 - 2015 The PHP Group. All rights reserved.
--------------------------------------------------------------------
Redistribution and use in source and binary forms, with or without
+1 -1
View File
@@ -20,4 +20,4 @@ $(srcdir)/zend_ini_parser.c: $(srcdir)/zend_ini_parser.y
$(srcdir)/zend_ini_scanner.c: $(srcdir)/zend_ini_scanner.l
@(cd $(top_srcdir); $(RE2C) $(RE2C_FLAGS) --no-generation-date --case-inverted -cbdFt Zend/zend_ini_scanner_defs.h -oZend/zend_ini_scanner.c Zend/zend_ini_scanner.l)
$(builddir)/zend_indent.lo $(builddir)/zend_highlight.lo $(builddir)/zend_compile.lo: $(srcdir)/zend_language_parser.h
$(builddir)/zend_highlight.lo $(builddir)/zend_compile.lo: $(srcdir)/zend_language_parser.h
+14 -1
View File
@@ -130,5 +130,18 @@ distclean: clean
fi
$(EGREP) define'.*include/php' $(top_srcdir)/configure | $(SED) 's/.*>//'|xargs rm -f
.PHONY: all clean install distclean test
prof-gen:
CCACHE_DISABLE=1 $(MAKE) PROF_FLAGS=-fprofile-generate all
prof-clean:
find . -name \*.lo -o -name \*.o | xargs rm -f
find . -name \*.la -o -name \*.a | xargs rm -f
find . -name \*.so | 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/*
prof-use:
CCACHE_DISABLE=1 $(MAKE) PROF_FLAGS=-fprofile-use all
.PHONY: all clean install distclean test prof-gen prof-clean prof-use
.NOEXPORT:
+348 -28
View File
@@ -1,47 +1,269 @@
PHP NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
?? ??? 20??, PHP 7.0.0
23 Jul 2015, PHP 7.0.0 Beta 2
- Core:
. Fixed bug #70012 (Exception lost with nested finally block). (Laruence)
- Soap:
. Fixed bug #70032 (make_http_soap_request calls
zend_hash_get_current_key_ex(,,,NULL). (Laruence)
- Standard:
. Fixed bug #70018 (exec does not strip all whitespace). (Laruence)
- Tokenizer:
. Fixed bug #69430 (token_get_all has new irrecoverable errors). (Nikita)
09 Jul 2015, PHP 7.0.0 Beta 1
- Core:
. Fixed bug #70006 (cli - function with default arg = STDOUT crash output).
(Laruence)
. Fixed bug #69521 (Segfault in gc_collect_cycles()).
(arjen at react dot com, Laruence)
. Improved zend_string API (Francois Laupretre)
. Fixed bug #69955 (Segfault when trying to combine [] and assign-op on
ArrayAccess object). (Laruence)
. Fixed bug #69957 (Different ways of handling div/mod/intdiv). (Bob)
. Fixed bug #69900 (Too long timeout on pipes). (Anatol)
. Fixed bug #62210 (Exceptions can leak temporary variables. As a part of
the fix serious refactoring was done. op_array->brk_cont_array was removed,
and replaced with more general and speed efficient op_array->T_liveliness.
ZEND_GOTO opcode is always replaced by ZEND_JMP at compile time).
(Bob, Dmitry, Laruence)
- CLI server:
. Fixed bug #69655 (php -S changes MKCALENDAR request method to MKCOL). (cmb)
. Fixed bug #64878 (304 responses return Content-Type header). (cmb)
- COM:
. Fixed bug #69939 (Casting object to bool returns false). (Kalle)
- JSON
. Fixed bug #62010 (json_decode produces invalid byte-sequences).
(Jakub Zelenka)
- OCI8:
. Corrected oci8 hash destructors to prevent segfaults, and a few other fixes.
(Cameron Porter)
- ODBC:
. Fixed bug #69975 (PHP segfaults when accessing nvarchar(max) defined
columns). (cmb)
- OpenSSL:
. Fixed bug #69882 (OpenSSL error "key values mismatch" after
openssl_pkcs12_read with extra cert) (Tomasz Sawicki)
- PCRE:
. Fixed bug #53823 (preg_replace: * qualifier on unicode replace garbles the
string). (cmb)
- Session:
. Fixed bug #69952 (Data integrity issues accessing superglobals by
reference). (Bob)
- SPL:
. Fixed bug #69970 (Use-after-free vulnerability in
spl_recursive_it_move_forward_ex()). (Laruence)
- Standard:
. Fixed bug #69983 (get_browser fails with user agent of null).
(Kalle, cmb, Laruence)
. Fixed bug #69976 (Unable to parse "all" urls with colon char). (cmb)
. Fixed bug #69768 (escapeshell*() doesn't cater to !). (cmb)
- Sqlite3:
. Fixed bug #69972 (Use-after-free vulnerability in
sqlite3SafetyCheckSickOrOk()). (Laruence)
25 Jun 2015, PHP 7.0.0 Alpha 2
- Core:
. Fixed bug #69872 (uninitialised value in strtr with array). (Laruence)
. Fixed bug #69868 (Invalid read of size 1 in zend_compile_short_circuiting).
(Laruence)
. Fixed bug #69849 (Broken output of apache_request_headers). (Kalle)
. Fixed bug #69840 (iconv_substr() doesn't work with UTF-16BE). (Kalle)
. Fixed bug #69823 (PHP 7.0.0alpha1 segmentation fault when exactly 33
extensions are loaded). (Laruence)
. Fixed bug #69805 (null ptr deref and seg fault in zend_resolve_class_name).
(Laruence)
. Fixed bug #69802 (Reflection on Closure::__invoke borks type hint class
name). (Dmitry)
. Fixed bug #69761 (Serialization of anonymous classes should be prevented).
(Laruence)
. Fixed bug #69551 (parse_ini_file() and parse_ini_string() segmentation
fault). (Christoph M. Becker)
. Fixed bug #69781 (phpinfo() reports Professional Editions of Windows
7/8/8.1/10 as "Business"). (Christian Wenz)
. Fixed bug #69835 (phpinfo() does not report many Windows SKUs).
(Christian Wenz)
. Fixed bug #69889 (Null coalesce operator doesn't work for string offsets).
(Nikita)
. Fixed bug #69891 (Unexpected array comparison result). (Nikita)
. Fixed bug #69892 (Different arrays compare indentical due to integer key
truncation). (Nikita)
. Fixed bug #69893 (Strict comparison between integer and empty string keys
crashes). (Nikita)
- DOM:
. Fixed bug #69846 (Segmenation fault (access violation) when iterating over
DOMNodeList). (Anatol Belski)
- GD:
. Fixed bug #61221 (imagegammacorrect function loses alpha channel). (cmb)
- JSON
. Fixed bug #68546 (json_decode() Fatal error: Cannot access property
started with '\0'). (Jakub Zelenka)
- mysqlnd:
. Fixed Bug #69796 (mysqli_stmt::fetch doesn't assign null values to
bound variables). (Laruence)
- Curl:
. Fixed bug #69831 (Segmentation fault in curl_getinfo). (im dot denisenko at
yahoo dot com)
- Opcache:
. Removed opcache.load_comments configuration directive. Now doc comments
loading costs nothing and always enabled. (Dmitry)
. Fixed bug #69838 (Wrong size calculation for function table). (Anatol)
- PCRE:
. Fixed bug #69864 (Segfault in preg_replace_callback) (cmb, ab)
- PDO_pgsql:
. Fixed bug #69752 (PDOStatement::execute() leaks memory with DML
Statements when closeCuror() is u). (Philip Hofstetter)
- SPL
. Fixed bug #69845 (ArrayObject with ARRAY_AS_PROPS broken). (Dmitry)
- SQLite3
. Fixed bug #69897 (segfault when manually constructing SQLite3Result).
(Kalle)
- Standard
. Fixed bug #62922 (Truncating entire string should result in string).
(Nikita)
11 Jun 2015, PHP 7.0.0 Alpha 1
- Core:
. Fixed bug #69767 (Default parameter value with wrong type segfaults).
(cmb, Laruence)
. Fixed bug #69756 (Fatal error: Nesting level too deep - recursive dependency
? with ===). (Dmitry, Laruence)
. Fixed bug #69758 (Item added to array not being removed by array_pop/shift
). (Laruence)
. Fixed bug #68475 (Add support for $callable() sytnax with 'Class::method').
(Julien, Aaron Piotrowski)
. Fixed bug #69485 (Double free on zend_list_dtor). (Laruence)
. Fixed bug #69427 (Segfault on magic method __call of private method in
superclass). (Laruence)
. Improved __call() and __callStatic() magic method handling. Now they are
called in a stackless way using ZEND_CALL_TRAMPOLINE opcode, without
additional stack frame. (Laruence, Dmitry)
. Optimized strings concatenation. (Dmitry, Laruence)
. Fixed weird operators behavior. Division by zero now emits warning and
returns +/-INF, modulo by zero and intdid() throws an exception, shifts
by negative offset throw exceptions. Compile-time evaluation of division
by zero is disabled. (Dmitry, Andrea, Nikita)
. Fixed bug #69371 (Hash table collision leads to inaccessible array keys).
(Laruence)
. Fixed bug #68933 (Invalid read of size 8 in zend_std_read_property).
(Laruence, arjen at react dot com)
. Fixed bug #68252 (segfault in Zend/zend_hash.c in function
_zend_hash_del_el). (Laruence)
. Fixed bug #65598 (Closure executed via static autoload incorrectly marked as
static). (Nikita)
. Fixed bug #66811 (Cannot access static::class in lambda, writen outside of a
class). (Nikita)
. Fixed bug #69568 (call a private function in closure failed). (Nikita)
. Added PHP_INT_MIN constant. (Andrea)
. Added Closure::call() method. (Andrea)
. Fixed bug #67959 (Segfault when calling phpversion('spl')). (Florian)
. Implemented the RFC `Catchable "Call to a member function bar() on a
non-object"`. (Timm)
. Added options parameter for unserialize allowing to specify acceptable
classes (https://wiki.php.net/rfc/secure_unserialize). (Stas)
. Fixed bug #63734 (Garbage collector can free zvals that are still
referenced). (Dmitry)
. Removed ZEND_ACC_FINAL_CLASS, promoting ZEND_ACC_FINAL as final class
modifier. (Guilherme Blanco)
. is_long() & is_integer() is now an alias of is_int(). (Kalle)
. Implemented FR #55467 (phpinfo: PHP Variables with $ and single quotes). (Kalle)
. Added ?? operator. (Andrea)
. Added <=> operator. (Andrea)
. Added \u{xxxxx} Unicode Codepoint Escape Syntax. (Andrea)
. Fixed oversight where define() did not support arrays yet const syntax did.
(Andrea, Dmitry)
. Use "integer" and "float" instead of "long" and "double" in ZPP, type hint
and conversion error messages. (Andrea)
. Implemented FR #55428 (E_RECOVERABLE_ERROR when output buffering in output
buffering handler). (Kalle)
. Removed scoped calls of non-static methods from an incompatible $this
context. (Nikita)
. Removed support for #-style comments in ini files. (Nikita)
. Removed support for assigning the result of new by reference. (Nikita)
. Invalid octal literals in source code now produce compile errors, fixes
PHPSadness #31. (Andrea)
. Removed dl() function on fpm-fcgi. (Nikita)
. Removed support for hexadecimal numeric strings. (Nikita)
. Removed obsolete extensions and SAPIs. See the full list in UPGRADING. (Anatol)
. Added NULL byte protection to exec, system and passthru. (Yasuo)
. Added error_clear_last() function. (Reeze Xia)
. Fixed bug #68797 (Number 2.2250738585072012e-308 converted incorrectly).
(Anatol)
. Improved zend_qsort(using hybrid sorting algo) for better performance,
and also renamed zend_qsort to zend_sort. (Laruence)
. Added stable sorting algo zend_insert_sort. (Laruence)
. Implemented the RFC `Scalar Type Decalarations v0.5`. (Anthony)
. Implemented the RFC `Group Use Declarations`. (Marcio)
. Implemented the RFC `Continue Output Buffering`. (Mike)
. Implemented the RFC `Constructor behaviour of internal classes`. (Dan, Dmitry)
. Implemented the RFC `Fix "foreach" behavior`. (Dmitry)
. Implemented the RFC `Generator Delegation`. (Bob)
. Implemented the RFC `Anonymous Class Support`. (Joe, Nikita, Dmitry)
. Implemented the RFC `Context Sensitive Lexer`. (Marcio Almada)
. Fixed bug #69511 (Off-by-one buffer overflow in php_sys_readlink).
(Jan Starke, Anatol)
- CLI server:
. 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)
. Added support for SEARCH WebDav method. (Mats Lindh)
- Core:
. Fixed bug #68104 (Segfault while pre-evaluating a disabled function).
(Laruence)
. Fixed bug #68252 (segfault in Zend/zend_hash.c in function
_zend_hash_del_el). (Laruence)
. Added PHP_INT_MIN constant. (Andrea)
. Added Closure::call() method. (Andrea)
. Implemented FR #38409 (parse_ini_file() looses the type of booleans). (Tjerk)
. Fixed #67959 (Segfault when calling phpversion('spl')). (Florian)
. Implemented the RFC `Catchable "Call to a member function bar() on a
non-object"`. (Timm)
. Added options parameter for unserialize allowing to specify acceptable
classes (https://wiki.php.net/rfc/secure_unserialize). (Stas)
. Fixed bug #68185 ("Inconsistent insteadof definition."- incorrectly triggered). (Julien)
. Fixed bug #65419 (Inside trait, self::class != __CLASS__). (Julien)
. Fixed bug #65576 (Constructor from trait conflicts with inherited
constructor). (dunglas at gmail dot com)
. Removed ZEND_ACC_FINAL_CLASS, promoting ZEND_ACC_FINAL as final class
modifier. (Guilherme Blanco)
. is_long() & is_integer() is now an alias of is_int(). (Kalle)
. Implemented FR #55467 (phpinfo: PHP Variables with $ and single quotes). (Kalle)
. Fixed bug #55415 (php_info produces invalid anchor names). (Kalle, Johannes)
- Curl:
. Fixed bug #68937 (Segfault in curl_multi_exec). (Laruence)
. Removed support for unsafe file uploads. (Nikita)
- Date:
. Fixed day_of_week function as it could sometimes return negative values
internally. (Derick)
. Removed $is_dst parameter from mktime() and gmmktime(). (Nikita)
. Removed date.timezone warning
(https://wiki.php.net/rfc/date.timezone_warning_removal). (Bob)
. Added "v" DateTime format modifier to get the 3-digit version of fraction
of seconds. (Mariano Iglesias)
. Implemented FR #69089: Added DateTime::RFC3339_EXTENDED to output in
RFC3339 Extended format which includes fraction of seconds (Mariano
Iglesias)
- DBA:
. Fixed bug #62490 (dba_delete returns true on missing item (inifile)). (Mike)
. Fixed bug #68711 (useless comparisons). (bugreports at internot dot info)
- DOM:
. Made DOMNode::textContent writeable. (Tjerk)
- GD:
. Made fontFetch's path parser thread-safe. (Sara)
. Removed T1Lib support. (Kalle)
- Fileinfo:
. Fixed bug #66242 (libmagic: don't assume char is signed). (ArdB)
@@ -50,51 +272,149 @@
. New FILTER_VALIDATE_DOMAIN and better RFC conformance for FILTER_VALIDATE_URL. (Kevin Dunglas)
- FPM:
. Fixed bug #68945 (Unknown admin values segfault pools). (Laruence)
. Fixed bug #65933 (Cannot specify config lines longer than 1024 bytes). (Chris Wright)
. Implement request #67106 (Split main fpm config). (Elan Ruusamäe, Remi)
- FTP:
. Fixed bug #69082 (FTPS support on Windows). (Anatol)
- Intl:
. Removed deprecated aliases datefmt_set_timezone_id() and
IntlDateFormatter::setTimeZoneID(). (Nikita)
- JSON
. Replace non-free JSON parser with a parser from Jsond extension, fixes #63520
(JSON extension includes a problematic license statement). (Jakub Zelenka)
. Fixed bug #68938 (json_decode() decodes empty string without error).
(jeremy at bat-country dot us)
- LDAP
. Fixed bug #47222 (Implement LDAP_OPT_DIAGNOSTIC_MESSAGE). (Andreas Heigl)
- LiteSpeed:
. Updated LiteSpeed SAPI code from V5.5 to V6.6. (George Wang)
- libxml:
. Fixed handling of big lines in error messages with libxml >= 2.9.0.
(Christoph M. Becker)
- Mcrypt:
. Fixed possible read after end of buffer and use after free. (Dmitry)
. Removed mcrypt_generic_end() alias. (Nikita)
. Removed mcrypt_ecb(), mcrypt_cbc(), mcrypt_cfb(), mcrypt_ofb(). (Nikita)
- Opcache:
. Fixed bug #69688 (segfault with eval and opcache fast shutdown).
(Laruence)
. Added experimental (disabled by default) file based opcode cache.
(Dmitry, Laruence, Anatol)
. Fixed bug with try blocks being removed when extended_info opcode
generation is turned on. (Laruence)
. Fixed bug #68644 (strlen incorrect : mbstring + func_overload=2 +UTF-8
+ Opcache). (Laruence)
- OpenSSL:
. Added "alpn_protocols" SSL context option allowing encrypted client/server
streams to negotiate alternative protocols using the ALPN TLS extension when
built against OpenSSL 1.0.2 or newer. Negotiated protocol information is
accessible through stream_get_meta_data() output.
. Removed "CN_match" and "SNI_server_name" SSL context options. Use automatic
detection or the "peer_name" option instead. (Nikita)
- pcntl:
. Fixed bug #60509 (pcntl_signal doesn't decrease ref-count of old handler
when setting SIG_DFL). (Julien)
. Added wifcontinued and wcontinued. (xilon-jul)
. Added rusage support to pcntl_wait() and pcntl_waitpid(). (Anton Stepanenko,
Tony)
- PCRE:
. Removed support for the /e (PREG_REPLACE_EVAL) modifier. (Nikita)
- PDO:
. Fixed bug #59450 (./configure fails with "Cannot find php_pdo_driver.h").
(maxime dot besson at smile dot fr)
- PDO_mysql:
. Fixed bug #68424 (Add new PDO mysql connection attr to control multi
statements option). (peter dot wolanin at acquia dot com)
- PDO_pgsql:
. Removed PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT attribute in favor of
ATTR_EMULATE_PREPARES). (Nikita)
- Reflection
. Fixed inheritance chain of Reflector interface (Tjerk)
. Fixed inheritance chain of Reflector interface. (Tjerk)
. Added ReflectionGenerator class. (Bob)
. Added reflection support for return types and type declarations. (Sara,
Matteo)
- Session:
. Fixed bug #67694 (Regression in session_regenerate_id()). (Tjerk)
. Fixed bug #68941 (mod_files.sh is a bash-script). (bugzilla at ii.nl, Yasuo)
- SOAP:
. Fixed bug #68361 (Segmentation fault on SoapClient::__getTypes).
(Laruence)
. Fixed bug #68361 (Segmentation fault on SoapClient::__getTypes). (Laruence)
- SPL:
. Changed ArrayIterator implementation using zend_hash_iterator_... API.
Allowed modification of iterated ArrayObject using the same behavior
as proposed in `Fix "foreach" behavior`. Removed "Array was modified
outside object and internal position is no longer valid" hack. (Dmitry)
. Implemented #67886 (SplPriorityQueue/SplHeap doesn't expose extractFlags
nor curruption state). (Julien)
. Fixed bug #66405 (RecursiveDirectoryIterator::CURRENT_AS_PATHNAME
breaks the RecursiveIterator). (Paul Garvin)
. Fixed bug #68479 (Added escape parameter to SplFileObject::fputcsv). (Salathe)
- Sqlite3:
. Fixed bug #68260 (SQLite3Result::fetchArray declares wrong
required_num_args). (Julien)
- Standard:
. Fixed bug #69723 (Passing parameters by reference and array_column).
(Laruence)
. Fixed bug #69523 (Cookie name cannot be empty). (Christoph M. Becker)
. Fixed bug #69325 (php_copy_file_ex does not pass the argument).
(imbolk at gmail dot com)
. Fixed bug #69299 (Regression in array_filter's $flag argument in PHP 7).
(Laruence)
. Removed call_user_method() and call_user_method_array() functions. (Kalle)
. Fix user session handlers (See rfc:session.user.return-value). (Sara)
. Fixed user session handlers (See rfc:session.user.return-value). (Sara)
. Added intdiv() function. (Andrea)
. Improved precision of log() function for base 2 and 10. (Marc Bennewitz)
. Remove string category support in setlocale(). (Nikita)
. Remove set_magic_quotes_runtime() and its alias magic_quotes_runtime().
(Nikita)
. Fixed bug #65272 (flock() out parameter not set correctly in windows).
(Daniel Lowrey)
. Added preg_replace_callback_array function. (Wei Dai)
. Deprecated salt option to password_hash. (Anthony)
. Fixed bug #69686 (password_verify reports back error on PHP7 will null
string). (Anthony)
. Added Windows support for getrusage(). (Kalle)
. Removed hardcoded limit on number of pipes in proc_open(). (Tony)
- Streams:
. Fixed bug #68532 (convert.base64-encode omits padding bytes).
(blaesius at krumedia dot de)
. Removed set_socket_blocking() in favor of its alias stream_set_blocking().
(Nikita)
- XSL:
. Fixed bug #64776 (The XSLT extension is not thread safe). (Mike)
. Removed xsl.security_prefs ini option. (Nikita)
- Zlib:
. Added deflate_init(), deflate_add(), inflate_init(), inflate_add()
functions allowing incremental/streaming compression/decompression.
(Daniel Lowrey & Bob Weinand)
- Zip:
. Added ZipArchive::setCompressionName and ZipArchive::setCompressionIndex
methods (Remi, Cedric Delmas)
. Update bundled libzip to 1.0.1 (Remi, Anatol)
. Fixed bug #67161. (ZipArchive::getStream() returns NULL for certain file)
(Christoph M. Becker)
<<< NOTE: Insert NEWS from last stable release here prior to actual release! >>>
+4 -4
View File
@@ -164,11 +164,11 @@ PHP_FUNCTION(module_name_drawtext)
char *text = NULL;
int argc = ZEND_NUM_ARGS();
int image_id = -1;
int text_len;
size_t text_len;
int font_id = -1;
long x;
long y;
long color;
zend_long x;
zend_long y;
zend_long color;
zval *image = NULL;
zval *font = NULL;
+2 -2
View File
@@ -114,9 +114,9 @@ If you fix some bugs, you should note the bug ID numbers in your
commit message. Bug ID should be prefixed by "#" for easier access to
bug report when developers are browsing CVS via LXR or Bonsai.
Example::
Example:
Fixed bug #14016 (pgsql notice handler double free crash bug.)
Fixed bug #14016 (pgsql notice handler double free crash bug.)
When you change the NEWS file for a bug fix, then please keep the bugs
sorted in decreasing order under the fixed version.
+1 -1
View File
@@ -34,7 +34,7 @@ API adjustment to the old output control code:
php_output_handler_started(handler_name, handler_name_len TSRMLS_CC);
Flushing one output buffer:
// php_ob_end_buffer(1, 1 TSRMLS_CC);
// php_end_ob_buffer(1, 1 TSRMLS_CC);
php_output_flush(TSRMLS_C);
Flushing all output buffers:
+2 -2
View File
@@ -59,7 +59,7 @@ Type specifiers
h - array (returned as HashTable*)
H - array or HASH_OF(object) (returned as HashTable*)
l - long (zend_long)
L - long, limits out-of-range numbers to LONG_MAX/LONG_MIN (zend_long)
L - long, limits out-of-range numbers to LONG_MAX/LONG_MIN (zend_long, ZEND_LONG_MAX/ZEND_LONG_MIN)
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*, size_t)
@@ -90,7 +90,7 @@ Note on 64bit compatibility
---------------------------
Please note that since version 7 PHP uses zend_long as integer type and
zend_string with size_t as length, so make sure you pass zend_longs to "l"
and size_t to strings length (i.e. for "s" you need to pass char * and int),
and size_t to strings length (i.e. for "s" you need to pass char * and size_t),
not the other way round!
Both mistakes might cause memory corruptions and segfaults:
+24 -11
View File
@@ -196,11 +196,11 @@ last commit id to web/php.git, then, mirrors will now sync
Getting the stable release announced
------------------------------------
1. Run the bumpRelease script for phpweb on your local checkout
1. Update phpweb/include/releases.inc with the old release info
(updates the download archives)
a. ``php bin/bumpRelease 5`` to create the release file (releases/x_y_z.php)
The release announcement file should list in detail security fixes and
changes in behavior (whether due to a bug fix or not).
a. You can run ``php bin/bumpRelease 5`` if you are making a release for the
highest branch, otherwise you have to do this manually, see point 1.b
b. In case multiple PHP minor versions are in active development you have
to manually copy the old information to include/releases.inc
@@ -213,15 +213,18 @@ Getting the stable release announced
c. ``$PHP_X_MD5`` array and update all the md5 sums
d. set ``$PHP_X_RC`` to false!
d. ``$PHP_X_SHA256`` array and update all the SHA256 sums
e. Make sure there are no outdated "notes" or edited "date" keys in the
e. set ``$PHP_X_RC`` to false!
f. Make sure there are no outdated "notes" or edited "date" keys in the
``$RELEASES[X][$PHP_X_VERSION]["source"]`` array
f. if the windows builds aren't ready yet prefix the "windows" key with a dot (".windows")
g. if the windows builds aren't ready yet prefix the "windows" key with a dot (".windows")
3. Update phpweb/include/releases.php with the old release info
(updates the download archives)
3. Create the release file (releases/x_y_z.php)
Usually we use the same content as for point 6, but included in php template
instead of the release xml.
4. Update php-qa/include/release-qa.php and add the next version as an QARELEASE
(prepare for next RC)
@@ -263,9 +266,14 @@ to upgrade.
8. Commit all the changes to their respective git repos
9. Wait an hour or two, then send a mail to php-announce@lists.php.net,
9. Please note down the sha256 and the PGP signature (.asc). These *must* be
included in the release mail.
10. Wait an hour or two, then send a mail to php-announce@lists.php.net,
php-general@lists.php.net and internals@lists.php.net with a text similar to
http://news.php.net/php.internals/17222.
Please make sure that the mail to php-announce@ is its own completely seperate email.
This is to make sure that repiles to the announcement on php-general@ or internals@
will not accidentally hit the php-announce@ mailinglist.
Re-releasing the same version (or -pl)
--------------------------------------
@@ -282,7 +290,9 @@ Re-releasing the same version (or -pl)
d. ``$PHP_X_MD5`` array and update all the md5 sums
e. Make sure there are no outdated "notes" or edited "date" keys in the
e. ``$PHP_X_SHA256`` array and update all the SHA256 sums
f. Make sure there are no outdated "notes" or edited "date" keys in the
``$RELEASES[X][$PHP_X_VERSION]["source"]`` array
3. Add a short notice to phpweb stating that there is a new release, and
@@ -299,3 +309,6 @@ to upgrade.
5. Wait an hour or two, then send a mail to php-announce@lists.php.net,
php-general@lists.php.net and internals@lists.php.net with a text similar to
the news entry.
Please make sure that the mail to php-announce@ is its own completely seperate email.
This is to make sure that repiles to the announcement on php-general@ or internals@
will not accidentally hit the php-announce@ mailinglist.
+3 -2
View File
@@ -104,7 +104,8 @@ The php file will be generated always.
NOTE: You can set environment variable TEST_PHP_DETAILED to enable
detailed test information.
[Automated testing]
[Automated Testing]
--------------
If you like to keep up to speed, with latest developments and quality
assurance, setting the environment variable NO_INTERACTION to 1, will not
prompt the tester for any user input.
@@ -142,7 +143,7 @@ then
fi
========== end of qa-test.sh =============
NOTE: the exit status of run-tests.php will be 1 when
NOTE: The exit status of run-tests.php will be 1 when
REPORT_EXIT_STATUS is set. The result of "make test" may be higher
than that. At present, gmake 3.79.1 returns 2, so it is
advised to test for non-zero, rather then a specific value.
+1 -1
View File
@@ -4,7 +4,7 @@ The PHP Interpreter
This is the github mirror of the official PHP repository located at
http://git.php.net.
[![Build Status](https://secure.travis-ci.org/php/php-src.png?branch=master)](http://travis-ci.org/php/php-src)
[![Build Status](https://secure.travis-ci.org/php/php-src.svg?branch=master)](http://travis-ci.org/php/php-src)
Pull Requests
=============
+12 -9
View File
@@ -277,7 +277,10 @@ static void allocate_new_resource(tsrm_tls_entry **thread_resources_ptr, THREAD_
TSRM_ERROR((TSRM_ERROR_LEVEL_CORE, "Creating data structures for thread %x", thread_id));
(*thread_resources_ptr) = (tsrm_tls_entry *) malloc(sizeof(tsrm_tls_entry));
(*thread_resources_ptr)->storage = (void **) malloc(sizeof(void *)*id_count);
(*thread_resources_ptr)->storage = NULL;
if (id_count > 0) {
(*thread_resources_ptr)->storage = (void **) malloc(sizeof(void *)*id_count);
}
(*thread_resources_ptr)->count = id_count;
(*thread_resources_ptr)->thread_id = thread_id;
(*thread_resources_ptr)->next = NULL;
@@ -435,7 +438,7 @@ void *tsrm_new_interpreter_context(void)
current = tsrm_tls_get();
allocate_new_resource(&new_ctx, thread_id);
/* switch back to the context that was in use prior to our creation
* of the new one */
return tsrm_set_interpreter_context(current);
@@ -613,7 +616,7 @@ TSRM_API MUTEX_T tsrm_mutex_alloc(void)
#elif defined(BETHREADS)
mutexp = (beos_ben*)malloc(sizeof(beos_ben));
mutexp->ben = 0;
mutexp->sem = create_sem(1, "PHP sempahore");
mutexp->sem = create_sem(1, "PHP sempahore");
#endif
#ifdef THR_DEBUG
printf("Mutex created thread: %d\n",mythreadid());
@@ -642,7 +645,7 @@ TSRM_API void tsrm_mutex_free(MUTEX_T mutexp)
st_mutex_destroy(mutexp);
#elif defined(BETHREADS)
delete_sem(mutexp->sem);
free(mutexp);
free(mutexp);
#endif
}
#ifdef THR_DEBUG
@@ -676,8 +679,8 @@ TSRM_API int tsrm_mutex_lock(MUTEX_T mutexp)
#elif defined(TSRM_ST)
return st_mutex_lock(mutexp);
#elif defined(BETHREADS)
if (atomic_add(&mutexp->ben, 1) != 0)
return acquire_sem(mutexp->sem);
if (atomic_add(&mutexp->ben, 1) != 0)
return acquire_sem(mutexp->sem);
return 0;
#endif
}
@@ -708,9 +711,9 @@ TSRM_API int tsrm_mutex_unlock(MUTEX_T mutexp)
#elif defined(TSRM_ST)
return st_mutex_unlock(mutexp);
#elif defined(BETHREADS)
if (atomic_add(&mutexp->ben, -1) != 1)
if (atomic_add(&mutexp->ben, -1) != 1)
return release_sem(mutexp->sem);
return 0;
return 0;
#endif
}
@@ -795,7 +798,7 @@ void tsrm_error_set(int level, char *debug_filename)
#endif
}
TSRM_API inline void *tsrm_get_ls_cache(void)
TSRM_API void *tsrm_get_ls_cache(void)
{
return tsrm_tls_get();
}
+18 -17
View File
@@ -20,6 +20,8 @@
# include <tsrm_config.h>
#endif
#include "main/php_stdint.h"
#ifdef TSRM_WIN32
# ifdef TSRM_EXPORTS
# define TSRM_API __declspec(dllexport)
@@ -32,13 +34,8 @@
# define TSRM_API
#endif
#ifdef _WIN64
typedef __int64 tsrm_intptr_t;
typedef unsigned __int64 tsrm_uintptr_t;
#else
typedef long tsrm_intptr_t;
typedef unsigned long tsrm_uintptr_t;
#endif
typedef intptr_t tsrm_intptr_t;
typedef uintptr_t tsrm_uintptr_t;
/* Only compile multi-threading functions if we're in ZTS mode */
#ifdef ZTS
@@ -56,7 +53,7 @@ typedef unsigned long tsrm_uintptr_t;
#elif defined(TSRM_ST)
# include <st.h>
#elif defined(BETHREADS)
#include <kernel/OS.h>
#include <kernel/OS.h>
#include <TLS.h>
#endif
@@ -87,7 +84,7 @@ typedef struct {
sem_id sem;
int32 ben;
} beos_ben;
# define MUTEX_T beos_ben *
# define MUTEX_T beos_ben *
#endif
#ifdef HAVE_SIGNAL_H
@@ -155,7 +152,7 @@ TSRM_API void *tsrm_new_interpreter_context(void);
TSRM_API void *tsrm_set_interpreter_context(void *new_ctx);
TSRM_API void tsrm_free_interpreter_context(void *context);
TSRM_API inline void *tsrm_get_ls_cache(void);
TSRM_API void *tsrm_get_ls_cache(void);
#ifdef TSRM_WIN32
# define TSRM_TLS __declspec(thread)
@@ -171,15 +168,19 @@ TSRM_API inline void *tsrm_get_ls_cache(void);
#define TSRMG(id, type, element) (((type) (*((void ***) tsrm_get_ls_cache()))[TSRM_UNSHUFFLE_RSRC_ID(id)])->element)
#define TSRMG_STATIC(id, type, element) (((type) (*((void ***) TSRMLS_CACHE))[TSRM_UNSHUFFLE_RSRC_ID(id)])->element)
#define TSRMLS_CACHE_EXTERN extern TSRM_TLS void *TSRMLS_CACHE
#define TSRMLS_CACHE_DEFINE TSRM_TLS void *TSRMLS_CACHE = NULL
#define TSRMLS_CACHE_UPDATE if (!TSRMLS_CACHE) TSRMLS_CACHE = tsrm_get_ls_cache()
#define TSRMLS_CACHE_EXTERN() extern TSRM_TLS void *TSRMLS_CACHE
#define TSRMLS_CACHE_DEFINE() TSRM_TLS void *TSRMLS_CACHE = NULL
#if ZEND_DEBUG
#define TSRMLS_CACHE_UPDATE() TSRMLS_CACHE = tsrm_get_ls_cache()
#else
#define TSRMLS_CACHE_UPDATE() if (!TSRMLS_CACHE) TSRMLS_CACHE = tsrm_get_ls_cache()
#endif
#define TSRMLS_CACHE _tsrm_ls_cache
/* BC only */
#define TSRMLS_D void
#define TSRMLS_DC
#define TSRMLS_C
#define TSRMLS_C
#define TSRMLS_CC
#define TSRMLS_FETCH()
@@ -194,9 +195,9 @@ TSRM_API inline void *tsrm_get_ls_cache(void);
#define TSRMLS_SET_CTX(ctx)
#define TSRMG_STATIC(id, type, element)
#define TSRMLS_CACHE_EXTERN
#define TSRMLS_CACHE_DEFINE
#define TSRMLS_CACHE_UPDATE
#define TSRMLS_CACHE_EXTERN()
#define TSRMLS_CACHE_DEFINE()
#define TSRMLS_CACHE_UPDATE()
#define TSRMLS_CACHE
/* BC only */
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 7 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2014 The PHP Group |
| Copyright (c) 1997-2015 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 7 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2014 The PHP Group |
| Copyright (c) 1997-2015 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
+1 -1
View File
@@ -56,7 +56,7 @@ main()
printf ("Token = '%s'\n", token);
token = tsrm_strtok_r(NULL, "/\\", &last);
}
return 0;
}
+3 -3
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 7 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2014 The PHP Group |
| Copyright (c) 1997-2015 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
@@ -43,7 +43,7 @@ static tsrm_win32_globals win32_globals;
static void tsrm_win32_ctor(tsrm_win32_globals *globals)
{
#ifdef ZTS
TSRMLS_CACHE_UPDATE;
TSRMLS_CACHE_UPDATE();
#endif
globals->process = NULL;
globals->shm = NULL;
@@ -52,7 +52,7 @@ TSRMLS_CACHE_UPDATE;
globals->comspec = _strdup((GetVersion()<0x80000000)?"cmd.exe":"command.com");
/* Set it to INVALID_HANDLE_VALUE
* It will be initialized correctly in tsrm_win32_access or set to
* It will be initialized correctly in tsrm_win32_access or set to
* NULL if no impersonation has been done.
* the impersonated token can't be set here as the impersonation
* will happen later, in fcgi_accept_request (or whatever is the
+2 -2
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 7 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2014 The PHP Group |
| Copyright (c) 1997-2015 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
@@ -72,7 +72,7 @@ typedef struct {
#ifdef ZTS
# define TWG(v) TSRMG_STATIC(win32_globals_id, tsrm_win32_globals *, v)
TSRMLS_CACHE_EXTERN;
TSRMLS_CACHE_EXTERN();
#else
# define TWG(v) (win32_globals.v)
#endif
+660 -41
View File
@@ -1,4 +1,4 @@
$Id$
$Id$
PHP X.Y UPGRADE NOTES
@@ -9,7 +9,7 @@ PHP X.Y UPGRADE NOTES
5. Changed Functions
6. New Functions
7. New Classes and Interfaces
8. Removed Extensions
8. Removed Extensions and SAPIs
9. Other Changes to Extensions
10. New Global Constants
11. Changes to INI File Handling
@@ -21,32 +21,432 @@ PHP X.Y UPGRADE NOTES
1. Backward Incompatible Changes
========================================
- Core
. list() now always supports ArrayAccess and never supports strings.
Previously both were accepted in some situations and not in others.
(RFC: https://wiki.php.net/rfc/fix_list_behavior_inconsistency)
. Bitwise shifts by negative numbers of bits are disallowed (throws E_WARNING
and gives FALSE, like a division by zero).
. Left bitwise shifts by a number of bits beyond the bit width of an integer
will always result in 0, even on CPUs which wrap around.
. Right bitwise shifts by a number of bits beyond the bit width of an integer
will always result in 0 or -1 (depending on sign), even on CPUs which wrap
around.
Language changes
================
Changes to variable handling
----------------------------
* Indirect variable, property and method references are now interpreted with
left-to-right semantics. Some examples:
$$foo['bar']['baz'] // interpreted as ($$foo)['bar']['baz']
$foo->$bar['baz'] // interpreted as ($foo->$bar)['baz']
$foo->$bar['baz']() // interpreted as ($foo->$bar)['baz']()
Foo::$bar['baz']() // interpreted as (Foo::$bar)['baz']()
To restore the previous behavior add explicit curly braces:
${$foo['bar']['baz']}
$foo->{$bar['baz']}
$foo->{$bar['baz']}()
Foo::{$bar['baz']}()
* The global keyword now only accepts simple variables. Instead of
global $$foo->bar;
it is now required to write the following:
global ${$foo->bar};
* Parentheses around variables or function calls no longer have any influence
on behavior. For example the following code, where the result of a function
call is passed to a by-reference function
function getArray() { return [1, 2, 3]; }
$last = array_pop(getArray());
// Strict Standards: Only variables should be passed by reference
$last = array_pop((getArray()));
// Strict Standards: Only variables should be passed by reference
will now throw a strict standards error regardless of whether parentheses
are used. Previously no notice was generated in the second case.
* Array elements or object properties that are automatically created during
by-reference assignments will now result in a different order. For example
$array = [];
$array["a"] =& $array["b"];
$array["b"] = 1;
var_dump($array);
now results in the array ["a" => 1, "b" => 1], while previously the result
was ["b" => 1, "a" => 1];
Relevant RFCs:
* https://wiki.php.net/rfc/uniform_variable_syntax
* https://wiki.php.net/rfc/abstract_syntax_tree
Changes to list()
-----------------
* list() will no longer assign variables in reverse order. For example
list($array[], $array[], $array[]) = [1, 2, 3];
var_dump($array);
will now result in $array == [1, 2, 3] rather than [3, 2, 1]. Note that only
the **order** of the assignments changed, but the assigned values stay the
same. E.g. a normal usage like
list($a, $b, $c) = [1, 2, 3];
// $a = 1; $b = 2; $c = 3;
will retain its current behavior.
* Empty list() assignments are no longer allowed. As such all of the following
are invalid:
list() = $a;
list(,,) = $a;
list($x, list(), $y) = $a;
* list() no longer supports unpacking strings (while previously this was only
supported in some cases). The code
$string = "xy";
list($x, $y) = $string;
will now result in $x == null and $y == null (without notices) instead of
$x == "x" and $y == "y". Furthermore list() is now always guaranteed to
work with objects implementing ArrayAccess, e.g.
list($a, $b) = (object) new ArrayObject([0, 1]);
will now result in $a == 0 and $b == 1. Previously both $a and $b were null.
Relevant RFCs:
* https://wiki.php.net/rfc/abstract_syntax_tree#changes_to_list
* https://wiki.php.net/rfc/fix_list_behavior_inconsistency
Changes to foreach
------------------
* Iteration with foreach() no longer has any effect on the internal array
pointer, which can be accessed through the current()/next()/etc family of
functions. For example
$array = [0, 1, 2];
foreach ($array as &$val) {
var_dump(current($array));
}
will now print the value int(0) three times. Previously the output was int(1),
int(2) and bool(false).
* When iterating arrays by-value, foreach will now always operate on a copy of
the array, as such changes to the array during iteration will not influence
iteration behavior. For example
$array = [0, 1, 2];
$ref =& $array; // Necessary to trigger the old behavior
foreach ($array as $val) {
var_dump($val);
unset($array[1]);
}
will now print all three elements (0 1 2), while previously the second element
1 was skipped (0 2).
* When iterating arrays by-reference, modifications to the array will continue
to influence the iteration. However PHP will now do a better job of
maintaining a correct position in a number of cases. E.g. appending to an
array during by-reference iteration
$array = [0];
foreach ($array as &$val) {
var_dump($val);
$array[1] = 1;
}
will now iterate over the appended element as well. As such the output of this
example will now be "int(0) int(1)", while previously it was only "int(0)".
* Iteration of plain (non-Traversable) objects by-value or by-reference will
behave like by-reference iteration of arrays. This matches the previous
behavior apart from the more accurate position management mentioned in the
previous point.
* Iteration of Traversable objects remains unchanged.
Relevant RFC: https://wiki.php.net/rfc/php7_foreach
Changes to parameter handling
-----------------------------
* It is no longer possible to define two function parameters with the same name.
For example, the following method will trigger a compile-time error:
public function foo($a, $b, $unused, $unused) {
// ...
}
Code like this should be changed to use distinct parameter names, for example:
public function foo($a, $b, $unused1, $unused2) {
// ...
}
* The func_get_arg() and func_get_args() functions will no longer return the
original value that was passed to a parameter and will instead provide the
current value (which might have been modified). For example
function foo($x) {
$x++;
var_dump(func_get_arg(0));
}
foo(1);
will now print "2" instead of "1". This code should be changed to either
perform modifications only after calling func_get_arg(s)
function foo($x) {
var_dump(func_get_arg(0));
$x++;
}
or avoid modifying the parameters altogether:
function foo($x) {
$newX = $x + 1;
var_dump(func_get_arg(0));
}
* Similarly exception backtraces will no longer display the original value that
was passed to a function and show the modified value instead. For example
function foo($x) {
$x = 42;
throw new Exception;
}
foo("string");
will now result in the stack trace
Stack trace:
#0 file.php(4): foo(42)
#1 {main}
while previously it was:
Stack trace:
#0 file.php(4): foo('string')
#1 {main}
While this should not impact runtime behavior of your code, it is worthwhile
to be aware of this difference for debugging purposes.
The same limitation also applies to debug_backtrace() and other functions
inspecting function arguments.
Relevant RFC: https://wiki.php.net/phpng
Changes to integer handling
---------------------------
* Invalid octal literals (containing digits larger than 7) now produce compile
errors. For example, the following is no longer valid:
$i = 0781; // 8 is not a valid octal digit!
Previously the invalid digits (and any following valid digits) were simply
ignored. As such $i previously held the value 7, because the last two digits
were silently discarded.
* Bitwise shifts by negative numbers will now throw an ArithmeticError:
var_dump(1 >> -1);
// ArithmeticError: Bit shift by negative number
* Left bitwise shifts by a number of bits beyond the bit width of an integer
will always result in 0:
var_dump(1 << 64); // int(0)
Previously the behavior of this code was dependent on the used CPU
architecture. For example on x86 (including x86-64) the result was int(1),
because the shift operand was wrapped.
* Similarly right bitwise shifts by a number of bits beyond the bit width of an
integer will always result in 0 or -1 (depending on sign):
var_dump(1 >> 64); // int(0)
var_dump(-1 >> 64); // int(-1)
Relevant RFC: https://wiki.php.net/rfc/integer_semantics
Changes to string handling
--------------------------
* Strings that contain hexadecimal numbers are no longer considered to be
numeric and don't receive special treatment anymore. Some examples of the
new behavior:
var_dump("0x123" == "291"); // bool(false) (previously true)
var_dump(is_numeric("0x123")); // bool(false) (previously true)
var_dump("0xe" + "0x1"); // int(0) (previously 16)
var_dump(substr("foo", "0x1")); // string(3) "foo" (previously "oo")
// Notice: A non well formed numeric value encountered
filter_var() can be used to check if a string contains a hexadecimal number
or convert such a string into an integer:
$str = "0xffff";
$int = filter_var($str, FILTER_VALIDATE_INT, FILTER_FLAG_ALLOW_HEX);
if (false === $int) {
throw new Exception("Invalid integer!");
}
var_dump($int); // int(65535)
* Due to the addition of the Unicode Codepoint Escape Syntax for double-quoted
strings and heredocs, "\u{" followed by an invalid sequence will now result in
an error:
$str = "\u{xyz}"; // Fatal error: Invalid UTF-8 codepoint escape sequence
To avoid this the leading backslash should be escaped:
$str = "\\u{xyz}"; // Works fine
However, "\u" without a following { is unaffected. As such the following code
won't error and will work the same as before:
$str = "\u202e"; // Works fine
Relevant RFCs:
* https://wiki.php.net/rfc/remove_hex_support_in_numeric_strings
* https://wiki.php.net/rfc/unicode_escape
Changes to error handling
-------------------------
* There are now two exception classes: Exception and Error. Both classes
implement a new interface Throwable. Type hints in exception handling code
may need to be changed to account for this.
* Some fatal errors and recoverable fatal errors now throw an Error instead.
As Error is a separate class from Exception, these exceptions will not be
caught by existing try/catch blocks.
For the recoverable fatal errors which have been converted into an exception,
it is no longer possible to silently ignore the error from an error handler.
In particular, it is no longer possible to ignore type hint failures.
* Parser errors now generate a ParseError that extends Error. Error
handling for eval()s on potentially invalid code should be changed to catch
ParseError in addition to the previous return value / error_get_last()
based handling.
* Constructors of internal classes will now always throw an exception on
failure. Previously some constructors returned NULL or an unusable object.
* The error level of some E_STRICT notices has been changed.
Relevant RFCs:
* https://wiki.php.net/rfc/engine_exceptions_for_php7
* https://wiki.php.net/rfc/throwable-interface
* https://wiki.php.net/rfc/internal_constructor_behaviour
* https://wiki.php.net/rfc/reclassify_e_strict
Other language changes
----------------------
* Removed support for static calls to non-static calls form an incompatible
$this context. In this case $this will not be defined, but the call will be
allowed with a deprecation notice. An example:
class A {
public function test() { var_dump($this); }
}
// Note: Does NOT extend A
class B {
public function callNonStaticMethodOfA() { A::test(); }
}
(new B)->callNonStaticMethodOfA();
// Deprecated: Non-static method A::test() should not be called statically
// Notice: Undefined variable $this
NULL
Note that this only applies to calls from an incompatible context. If class B
extended from A the call would be allowed without any notices.
* It is no longer possible to use the following class, interface and trait names
(case-insensitive):
bool
int
float
string
null
false
true
This applies to class/interface/trait declarations, class_alias() and use
statements.
Furthermore the following class, interface and trait names are now reserved
for future use, but do not yet throw an error when used:
resource
object
mixed
numeric
* The yield language construct no longer requires parentheses when used in an
expression context. It is now a right-associative operator with precedence
between the "print" and "=>" operators. This can result in different behavior
in some cases, for example:
echo yield -1;
// Was previously interpreted as
echo (yield) - 1;
// And is now interpreted as
echo yield (-1);
yield $foo or die;
// Was previously interpreted as
yield ($foo or die);
// And is now interpreted as
(yield $foo) or die;
Such cases can always be resolved by adding additional parentheses.
. Removed ASP (<%) and script (<script language=php>) tags.
(RFC: https://wiki.php.net/rfc/remove_alternative_php_tags)
. Removed support for assigning the result of new by reference.
. Removed support for scoped calls to non-static methods from an incompatible
$this context. See details in https://wiki.php.net/rfc/incompat_ctx.
. Removed support for #-style comments in ini files. Use ;-style comments
instead.
. $HTTP_RAW_POST_DATA is no longer available. Use the php://input stream instead.
Standard library changes
========================
. call_user_method() and call_user_method_array() no longer exists.
. PHP 7 doesn't keep original values of arguments passed to user functions,
so func_get_arg() and func_get_args() will return current value of argument
instead of the actually passed. The following code is going to be affected:
function foo($x) { $x = 2; return func_get_arg(0);} var_dump(foo(1));
It will now produce 2, not 1.
. Function parameters with duplicate name are not allowed anymore. Definitions
like “function foo($x,$x) {}” will lead to compile time error.
. Indirect variable, property and method references are now interpreted with
left-to-right semantics. See details in:
https://wiki.php.net/rfc/uniform_variable_syntax#semantic_differences_in_existing_syntax
. The global keyword now only accepts simple variables. See details in:
https://wiki.php.net/rfc/uniform_variable_syntax#global_keyword_takes_only_simple_variables
. ob_start() no longer issues an E_ERROR, but instead an E_RECOVERABLE_ERROR in case an
output buffer is created in an output buffer handler.
. Improved zend_qsort(using hybrid sorting algo) for better performance,
and also renamed zend_qsort to zend_sort.
. Added stable sorting algo zend_insert_sort.
. Removed dl() function on fpm-fcgi.
. setcookie() with an empty cookie name now issues a WARNING and doesn't send an empty set-cookie header line anymore.
Other
=====
- Curl:
. Removed support for disabling the CURLOPT_SAFE_UPLOAD option. All curl file
uploads must use the curl_file / CURLFile APIs.
- Date:
. Removed $is_dst parameter from mktime() and gmmktime().
- DBA
. dba_delete() now returns false if the key was not found for the inifile
@@ -57,18 +457,125 @@ PHP X.Y UPGRADE NOTES
. gmp_setbit() and gmp_clrbit() now return FALSE for negative indices, making
them consistent with other GMP functions.
- Intl:
. Removed deprecated aliases datefmt_set_timezone_id() and
IntlDateFormatter::setTimeZoneID(). Use datefmt_set_timezone() and
IntlDateFormatter::setTimeZone() instead.
- libxml:
. Added LIBXML_BIGLINES parser option. It's available starting with libxml 2.9.0
and adds suppport for line numbers >16-bit in the error reporting.
- Mcrypt
. Removed deprecated mcrypt_generic_end() alias in favor of
mcrypt_generic_deinit().
. Removed deprecated mcrypt_ecb(), mcrypt_cbc(), mcrypt_cfb() and mcrypt_ofb()
functions in favor of mcrypt_encrypt() and mcrypt_decrypt() with an
MCRYPT_MODE_* flag.
- Session
. session_start() accepts all INI settings as array. e.g. ['cache_limiter'=>'private']
sets session.cache_limiter=private. It also supports 'read_and_close' which closes
session data immediately after read data.
. Save handler accepts validate_sid(), update_timestamp() which validates session
ID existence, updates timestamp of session data. Compatibility of old user defined
save handler is retained.
. SessionUpdateTimestampHandlerInterface is added. validateSid(), updateTimestamp()
is defined in the interface.
. session.lazy_write(default=On) INI setting enables only write session data when
session data is updated.
- Opcache
. Removed opcache.load_comments configuration directive. Now doc comments
loading costs nothing and always enabled.
- OpenSSL:
. Removed the "rsa_key_size" SSL context option in favor of automatically
setting the appropriate size given the negotiated crypto algorithm.
. Removed "CN_match" and "SNI_server_name" SSL context options. Use automatic
detection or the "peer_name" option instead.
- PCRE:
. Removed support for /e (PREG_REPLACE_EVAL) modifier. Use
preg_replace_callback() instead.
- PDO_pgsql:
. Removed PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT attribute in favor of
ATTR_EMULATE_PREPARES.
- Standard:
. Removed string category support in setlocale(). Use the LC_* constants
instead.
. Removed set_magic_quotes_runtime() and its alias magic_quotes_runtime().
- JSON:
. Rejected RFC 7159 incompatible number formats in json_decode string -
top level (07, 0xff, .1, -.1) and all levels ([1.], [1.e1])
. Calling json_decode with 1st argument equal to empty PHP string or value that
after casting to string is empty string (NULL, FALSE) results in JSON syntax error.
- Stream:
. Removed set_socket_blocking() in favor of its alias stream_set_blocking().
- XSL:
. Removed xsl.security_prefs ini option. Use XsltProcessor::setSecurityPrefs()
instead.
========================================
2. New Features
========================================
- Core
. Added group use declarations.
(RFC: https://wiki.php.net/rfc/group_use_declarations)
. Added null coalesce operator (??).
(RFC: https://wiki.php.net/rfc/isset_ternary)
. Support for strings with length >= 2^31 bytes in 64 bit builds
. Closure::call() method added
. Support for strings with length >= 2^31 bytes in 64 bit builds.
. Closure::call() method added (works only with userland classes).
. Added \u{xxxxxx} Unicode Codepoint Escape Syntax for double-quoted strings
and heredocs.
. define() now supports arrays as constant values, fixing an oversight where define() did not support arrays yet const syntax did.
. Added the comparison operator (<=>), aka the spaceship operator.
(RFC: https://wiki.php.net/rfc/combined-comparison-operator)
. Added the yield from operator for delegating Generators like coroutines.
(RFC: https://wiki.php.net/rfc/generator-delegation)
. Reserved keywords can now be used in various new contexts.
(RFC: https://wiki.php.net/rfc/context_sensitive_lexer)
. Added support for scalar type declarations and strict mode using
declare(strict_types=1) (RFC: https://wiki.php.net/rfc/scalar_type_hints_v5)
. Added support for cryptographically secure user land RNG
(RFC: https://wiki.php.net/rfc/easy_userland_csprng)
- Standard
. intdiv() function for integer division added.
- Opcache
. Added second level file based opcode cache (experimental - disabled by
default). To enable it, PHP should be configured and built with
--enable-opcache-file, then opcache.file_cache=<DIR> configuration directive
should be set in php.ini. The second level cache may improve performance
at server restart or SHM reset. In addition, it's possibe to use file cache
without SHM at all, using opcache.file_cache_only=1 (this may be useful for
sharing hosting), and disable file cache consistency check, to speedup
loading at the cost of safety, using opcache.file_cache_consistency_checks=0.
- OpenSSL
. Added "alpn_protocols" SSL context option allowing encrypted client/server
streams to negotiate alternative protocols using the ALPN TLS extension when
built against OpenSSL 1.0.2 or newer. Negotiated protocol information is
accessible through stream_get_meta_data() output.
- Reflection
. Added a ReflectionGenerator class (yield from Traces, current file/line,
etc.)
. Added a ReflectionType class to better support the new return type and
scalar type declarations features. The new ReflectionParameter::getType()
and ReflectionFunctionAbstract::getReturnType() methods both return an
instance of ReflectionType.
- Stream:
. New Windows only stream context options was added to allow blocking reads
on pipes. To enable it, pass array("pipe" => array("blocking" => true))
when creating the stream context. Be aware, that this option can under
circumstances cause dead locks on the pipe buffer. However it can be useful
in several CLI use case scenarios.
========================================
3. Changes in SAPI modules
@@ -82,6 +589,15 @@ PHP X.Y UPGRADE NOTES
4. Deprecated Functionality
========================================
- Core
. PHP 4 style constructors, where the constructor name is the same as the
class name, are now deprecated.
. Static calls to non-static methods are now deprecated.
- OpenSSL
. The "capture_session_meta" SSL context option is now deprecated. Meta
data concerning active crypto on a stream resource is now accessible
through the return result from stream_get_meta_data().
========================================
5. Changed Functions
@@ -89,19 +605,50 @@ PHP X.Y UPGRADE NOTES
- parse_ini_file():
- parse_ini_string():
Added scanner mode INI_SCANNER_TYPED to yield typed .ini values.
. Added scanner mode INI_SCANNER_TYPED to yield typed .ini values.
- unserialize():
Added second parameter for unserialize function
(RFC: https://wiki.php.net/rfc/secure_unserialize) allowing to specify
acceptable classes:
unserialize($foo, ["allowed_classes" => ["MyClass", "MyClass2"]);
. Added second parameter for unserialize function
(RFC: https://wiki.php.net/rfc/secure_unserialize) allowing to specify
acceptable classes:
unserialize($foo, ["allowed_classes" => ["MyClass", "MyClass2"]]);
- proc_open():
. The maximum number of pipes used by proc_open() was previously limited by
hardcoded value of 16. This limit is now removed and the number of pipes is
effectively limited by the amount of memory available to PHP.
. New Windows only configuration option "blocking_pipes" can be used to
force blocking reads on child process pipes. This covers several
edge cases in CLI usage however can lead to dead locks. Also, this
correlates with the new stream context options for pipes.
- array_column():
The function now supports an array of objects as well as two-dimensional
arrays. Only public properties are considered, and objects that make use of
__get() for dynamic properties must also implement __isset().
- stream_context_create()
It accepts now a Windows only configuration
array("pipe" => array("blocking" => <boolean>)) which forces blocking reads
on pipes. This option should be used carefully because due to the
platform restrictions dead locks on pipe buffers are possible.
========================================
6. New Functions
========================================
- GMP
Added gmp_random_seed()
. Added gmp_random_seed().
- PCRE:
. Added preg_replace_callback_array function
(RFC: https://wiki.php.net/rfc/preg_replace_callback_array)
- Standard
. Added intdiv() function for integer division.
. Added error_clear_last() function to reset error state.
- Zlib:
. Added deflate_init(), deflate_add(), inflate_init(), inflate_add()
functions allowing incremental/streaming compression/decompression.
========================================
7. New Classes and Interfaces
@@ -109,14 +656,44 @@ PHP X.Y UPGRADE NOTES
========================================
8. Removed Extensions
8. Removed Extensions and SAPIs
========================================
- sapi/aolserver
- sapi/apache
- sapi/apache_hooks
- sapi/apache2filter
- sapi/caudium
- sapi/continuity
- sapi/isapi
- sapi/milter
- sapi/nsapi
- sapi/phttpd
- sapi/pi3web
- sapi/roxen
- sapi/thttpd
- sapi/tux
- sapi/webjames
- ext/mssql
- ext/mysql
- ext/sybase_ct
- ext/ereg
For more details see
https://wiki.php.net/rfc/removal_of_dead_sapis_and_exts
https://wiki.php.net/rfc/remove_deprecated_functionality_in_php7
NOTE: NSAPI was not voted in the RFC, however it was removed afterwards. It turned
out, that the corresponding SDK isn't available anymore.
========================================
9. Other Changes to Extensions
========================================
- Mhash
Mhash is not an extension anymore, use function_exists("mhash") to check whether
it is avaliable.
========================================
10. New Global Constants
@@ -125,6 +702,33 @@ PHP X.Y UPGRADE NOTES
- Core
. PHP_INT_MIN added.
- Zlib
. These constants are added to control flush behavior with the new
incremental deflate_add() and inflate_add() functions:
. ZLIB_NO_FLUSH
. ZLIB_PARTIAL_FLUSH
. ZLIB_SYNC_FLUSH
. ZLIB_FULL_FLUSH
. ZLIB_BLOCK
. ZLIB_FINISH
- GD
. T1Lib support removed, thus lifting the optional dependency on T1Lib, the
following is therefore not available anymore:
Functions:
- imagepsbbox()
- imagepsencodefont()
- imagepsextendedfont()
- imagepsfreefont()
- imagepsloadfont()
- imagepsslantfont()
- imagepstext()
Resources:
- 'gd PS font'
- 'gd PS encoding'
========================================
11. Changes to INI File Handling
========================================
@@ -132,14 +736,25 @@ PHP X.Y UPGRADE NOTES
- Core
. Removed asp_tags ini directive. Trying to enable it will result in a fatal
error.
. Removed always_populate_raw_post_data ini directive.
========================================
12. Windows Support
========================================
- Core
. Support for native 64 bit integers in 64 bit builds
. Support for large files in 64 bit builds
. Support for native 64 bit integers in 64 bit builds.
. Support for large files in 64 bit builds.
. Support for getrusage()
- ftp
. The ftp extension is always shipped shared
. For SSL support, the dependency on the openssl extension was abolished. Instead
it depends alone on the openssl library. If it's present at the compile time,
ftp_ssl_connect() is enabled automatically.
- odbc
. The odbc extension is always shipped shared
========================================
13. Other Changes
@@ -147,6 +762,10 @@ PHP X.Y UPGRADE NOTES
- Core
. Instead of being undefined and platform-dependent, NaN and Infinity will
always be zero when casted to integer.
. Calling a method on a non-object no longer raises a fatal error; see
also: https://wiki.php.net/rfc/catchable-call-to-member-of-non-object
always be zero when cast to integer.
. Calling a method on a non-object now raises a catchable error instead of a
fatal error; see: https://wiki.php.net/rfc/catchable-call-to-member-of-non-object
. Error messages for zend_parse_parameters, type hints and conversions now
always say "integer" and "float" instead of "long" and "double".
. Output buffering now continues to work for an aborted connection if
ignore_user_abort is set to true.
+102 -6
View File
@@ -2,6 +2,7 @@ $Id$
PHP 7.0 INTERNALS UPGRADE NOTES
0. Wiki Examples
1. Internal API changes
e. New data types
f. zend_parse_parameters() specs
@@ -15,17 +16,30 @@ PHP 7.0 INTERNALS UPGRADE NOTES
n. ZEND_ENGINE_2 removal
o. Updated final class modifier
p. TSRM changes
q. gc_collect_cycles() is now hookable
r. PDO uses size_t for lengths
s. Resource API changes
t. Optimized strings concatenation.
u. Streams changes
2. Build system changes
a. Unix build system changes
b. Windows build system changes
3. Module changes
================
0. Wiki Examples
================
The wiki contains multiple examples and further explanations of the internal
changes. See: https://wiki.php.net/phpng-upgrading
========================
1. Internal API changes
========================
a. zend_set_memory_limit() now takes the TSRMLS_CC macro as its last argument
e. New data types
String
@@ -69,15 +83,15 @@ PHP 7.0 INTERNALS UPGRADE NOTES
g. sprintf() formats
New printf modifier 'p' was implemented to platform independently output zend_long,
zend_ulong and php_size_t datatypes. That modifier can be used with'd', 'u', 'x' and 'o'
zend_ulong and php_size_t datatypes. That modifier can be used with 'd', 'u', 'x' and 'o'
printf format specs with spprintf, snprintf and the wrapping printf implementations.
%pu is sufficient for both zend_ulong and php_size_t. the code using %p spec to output
pointer address might need to be enclosed into #ifdef when it unlickily followed by 'd',
'u', 'x' or 'o'.
The only exceptions are the snprintf and zend_sprintf functions yet, because in some cases
they can use the implemenations available on the system, not the PHP one. Fro snprintf the
the macros ZEND_INT_FMT ZEND_UINT_FMT should be used.
they can use the implemenations available on the system, not the PHP one. With snprintf the
macros ZEND_INT_FMT and ZEND_UINT_FMT should be used.
h. HashTable API
@@ -105,6 +119,10 @@ PHP 7.0 INTERNALS UPGRADE NOTES
- ZEND_ULONG_MAX replaces ULONG_MAX where appropriate
- SIZEOF_ZEND_LONG reworked SIZEOF_ZEND_LONG representing the size of zend_long datatype
- ZEND_SIZE_MAX Max value of size_t
- Z_L casts an integral constant to zend_long
- Z_UL casts an integral constant to zend_ulong
The macro ZEND_ENABLE_ZVAL_LONG64 reveals whether zval operates on 64 or 32 bit integer.
k. The get_class_entry object handler is no longer available. Instead
zend_object.ce is always used.
@@ -164,11 +182,42 @@ PHP 7.0 INTERNALS UPGRADE NOTES
before any globals was accessed.
Porting an extension or SAPI is usually as easy as removing all the TSRMLS_*
ocurrences and integrating the macros mentioned above. However if tsrm_ls
is used explicitly, its usage can considered obsolete in most cases.
occurrences and integrating the macros mentioned above. However if tsrm_ls
is used explicitly, its usage can be considered obsolete in most cases.
Additionally, if an extension triggers its own threads, TSRMLS_CACHE shouldn't
be passed to that threads directly.
When working with CTOR/DTOR for the extension globals, only the data passed
as parameters should be touched. For example, don't use code like
free(MYEXT_G(vars)); inside globals destructor, as it possibly can destroy
the data from a wrong thread. Instead use the pointer to the data delivered
into the destructor. So the previous example could look like
free(my_struct->vars); given the income was casted to (struct my_struct *).
q. gc_collect_cycles() is now a function pointer, and can be replaced in the
same manner as zend_execute_ex() if needed (for example, to include the
time spent in the garbage collector in a profiler). The default
implementation has been renamed to zend_gc_collect_cycles(), and is
exported with ZEND_API.
r. In accordance with general use of size_t as string length, all PDO API
functions now use size_t for string length.
s. Removed ZEND_REGISTER/FETCH_RESOURCE, use zend_fetch_resource and
and zend_register_resource instead, zend_fetch_resource accepts a zend_resource *
as first argument, if you still need to fetch a resource from zval, use
zend_fetch_resource_ex. More details can be found in Zend/zend_list.c.
t. Optimized strings concatenation.
ZEND_ADD_STRING/VAR/CHAR are replaced with ZEND_ROPE_INIT, ZEND_ROPE_ADD,
ZEND_ROPE_END.
Instead of reallocation and copying string on each ZEND_ADD_STRING/VAR/CAHR,
collect all the strings and then allocate and construct the resulting string once.
u. Streams changes
- It is possible to do blocking reads on Windows pipes. It can be done either
using context stream option PHP_STREAM_OPTION_PIPE_BLOCKING or
adding STREAM_USE_BLOCKING_PIPE when opening the stream.
========================
2. Build system changes
@@ -193,3 +242,50 @@ PHP 7.0 INTERNALS UPGRADE NOTES
- configure.js now produces response files which are passed to the linker
and library manager. This solves the issues with the long command lines
which can exceed the OS limit.
- with clang toolset, an option --with-uncritical-warn-choke is available,
which suppresses the most frequent false positive warnings
- the --with-mp option will by default utilize all the available cores. It's
enabled by default for release builds and can be disabled with the special
"disable" keyword.
========================
3. Module changes
========================
Session:
- PS_MOD_UPDATE_TIMESTAMP() session save handler definition is added. New
save handler should use PS_MOD_UPDATE_TIMESTAMP() definition. Save handler
must not refer/change PS() variables directly from save handler. Use
parameters.
- PS_MOD()/PS_MOD_SID() macro exist only for transition. Beware these
save handlers are less secure and slower than PS_MOD_UPDATE_TIMESTAMP().
- PS(invalid_session_id) was removed. It was never worked as it supposed.
To report invalid session ID, use PS_VALIDATE_SID() handler.
- PS_VALIDATE_SID() defines session ID validation handler. This handler
must validate if requested session ID exists in session data storage or not.
Do not access PS(id) directly, but use this handler and it's parameter.
- PS_UPDATE_TIMESTAMP() defines timestamp updating handler. This handler
must update session data timestamp for GC if it is needed. e.g. Memcache
updates timestamp on read, so it does not need to update timestamp. Return
SUCCESS simply for this case.
- PS_CREATE_SID() should check session ID collision. Return NULL for failure.
- More documentation can be found in ext/session/mod_files.c as comments.
mod_files.c may be used as reference implementation.
Openssl:
- several ext/openssl functions require the inclusion of the applink shim
as documented in the OpenSSL FAQ https://www.openssl.org/support/faq.html#PROG2
to properly work on Windows. While this primarily affects the OpenSSL
functionality, the shim needs to be included into the executable file
which loads the extension DLL, not into the extension DLL itself. Alternatively
it can be compiled and linked with the main program as a separate object file.
More information and explanation in the linked OpenSSL FAQ.
Thus, this primarily affects any WAMP or other redistributions bundling the
official PHP release zipballs or building from sources. The applink shim is
already integrated with all the PHP executables from the official distribution
starting with 7.0.0beta1.
+3 -3
View File
@@ -12,13 +12,13 @@ libZend_la_SOURCES=\
zend_execute.c zend_execute_API.c zend_highlight.c zend_llist.c \
zend_vm_opcodes.c zend_opcode.c zend_operators.c zend_ptr_stack.c zend_stack.c \
zend_variables.c zend.c zend_API.c zend_extensions.c zend_hash.c \
zend_list.c zend_indent.c zend_builtin_functions.c zend_sprintf.c \
zend_ini.c zend_qsort.c zend_objects.c zend_object_handlers.c \
zend_list.c zend_builtin_functions.c zend_sprintf.c \
zend_ini.c zend_sort.c zend_objects.c zend_object_handlers.c \
zend_objects_API.c zend_ts_hash.c zend_stream.c \
zend_default_classes.c \
zend_iterators.c zend_interfaces.c zend_exceptions.c \
zend_strtod.c zend_closures.c zend_float.c zend_string.c zend_signal.c \
zend_generators.c zend_virtual_cwd.c zend_ast.c
zend_generators.c zend_virtual_cwd.c zend_ast.c zend_smart_str.c
libZend_la_CFLAGS = -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1
libZend_la_LDFLAGS =
+61 -31
View File
@@ -153,14 +153,6 @@ AC_ARG_ENABLE(debug,
AC_DEFUN([LIBZEND_OTHER_CHECKS],[
AC_ARG_WITH(zend-vm,
[ --with-zend-vm=TYPE Set virtual machine dispatch method. Type is
one of "CALL", "SWITCH" or "GOTO" [TYPE=CALL]],[
PHP_ZEND_VM=$withval
],[
PHP_ZEND_VM=CALL
])
AC_ARG_ENABLE(maintainer-zts,
[ --enable-maintainer-zts Enable thread safety - for code maintainers only!!],[
ZEND_MAINTAINER_ZTS=$enableval
@@ -176,9 +168,6 @@ AC_ARG_ENABLE(inline-optimization,
ZEND_INLINE_OPTIMIZATION=yes
])
AC_MSG_CHECKING([virtual machine dispatch method])
AC_MSG_RESULT($PHP_ZEND_VM)
AC_MSG_CHECKING(whether to enable thread-safety)
AC_MSG_RESULT($ZEND_MAINTAINER_ZTS)
@@ -188,19 +177,6 @@ AC_MSG_RESULT($ZEND_INLINE_OPTIMIZATION)
AC_MSG_CHECKING(whether to enable Zend debugging)
AC_MSG_RESULT($ZEND_DEBUG)
case $PHP_ZEND_VM in
SWITCH)
AC_DEFINE(ZEND_VM_KIND,ZEND_VM_KIND_SWITCH,[virtual machine dispatch method])
;;
GOTO)
AC_DEFINE(ZEND_VM_KIND,ZEND_VM_KIND_GOTO,[virtual machine dispatch method])
;;
*)
PHP_ZEND_VM=CALL
AC_DEFINE(ZEND_VM_KIND,ZEND_VM_KIND_CALL,[virtual machine dispatch method])
;;
esac
if test "$ZEND_DEBUG" = "yes"; then
AC_DEFINE(ZEND_DEBUG,1,[ ])
echo " $CFLAGS" | grep ' -g' >/dev/null || DEBUG_CFLAGS="-g"
@@ -425,11 +401,65 @@ if test -r "/dev/urandom" && test -c "/dev/urandom"; then
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
AC_MSG_CHECKING(whether /dev/arandom exists)
if test -r "/dev/arandom" && test -c "/dev/arandom"; then
AC_DEFINE([HAVE_DEV_ARANDOM], 1, [Define if the target system has /dev/arandom device])
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
fi
AC_MSG_CHECKING(whether /dev/arandom exists)
if test -r "/dev/arandom" && test -c "/dev/arandom"; then
AC_DEFINE([HAVE_DEV_ARANDOM], 1, [Define if the target system has /dev/arandom device])
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
AC_ARG_ENABLE(gcc-global-regs,
[ --disable-gcc-global-regs
whether to enable GCC global register variables],[
ZEND_GCC_GLOBAL_REGS=$enableval
],[
ZEND_GCC_GLOBAL_REGS=yes
])
AC_MSG_CHECKING(for global register variables support)
if test "$ZEND_GCC_GLOBAL_REGS" != "no"; then
AC_TRY_COMPILE([
],[
#if defined(__GNUC__)
# define ZEND_GCC_VERSION (__GNUC__ * 1000 + __GNUC_MINOR__)
#else
# define ZEND_GCC_VERSION 0
#endif
#if defined(__GNUC__) && ZEND_GCC_VERSION >= 4008 && defined(i386)
# define ZEND_VM_FP_GLOBAL_REG "%esi"
# define ZEND_VM_IP_GLOBAL_REG "%edi"
#elif defined(__GNUC__) && ZEND_GCC_VERSION >= 4008 && defined(__x86_64__)
# define ZEND_VM_FP_GLOBAL_REG "%r14"
# define ZEND_VM_IP_GLOBAL_REG "%r15"
#elif defined(__GNUC__) && ZEND_GCC_VERSION >= 4008 && defined(__powerpc64__)
# define ZEND_VM_FP_GLOBAL_REG "r28"
# define ZEND_VM_IP_GLOBAL_REG "r29"
#else
# error "global register variables are not supported"
#endif
typedef int (*opcode_handler_t)(void);
register void *FP __asm__(ZEND_VM_FP_GLOBAL_REG);
register const opcode_handler_t *IP __asm__(ZEND_VM_IP_GLOBAL_REG);
int emu(const opcode_handler_t *ip, void *fp) {
const opcode_handler_t *orig_ip = IP;
void *orig_fp = FP;
IP = ip;
FP = fp;
while ((*ip)());
FP = orig_fp;
IP = orig_ip;
}
], [
ZEND_GCC_GLOBAL_REGS=yes
], [
ZEND_GCC_GLOBAL_REGS=no
])
fi
if test "$ZEND_GCC_GLOBAL_REGS" = "yes"; then
AC_DEFINE([HAVE_GCC_GLOBAL_REGS], 1, [Define if the target system has support for global register variables])
else
HAVE_GCC_GLOBAL_REGS=no
fi
AC_MSG_RESULT($ZEND_GCC_GLOBAL_REGS)
+1 -1
View File
@@ -9,7 +9,7 @@ AC_DEFUN([LIBZEND_BISON_CHECK],[
# non-working versions, e.g. "3.0 3.2";
# remove "none" when introducing the first incompatible bison version an
# separate any following additions by spaces
bison_version_exclude="3.0"
bison_version_exclude=""
# for standalone build of Zend Engine
test -z "$SED" && SED=sed
+3 -3
View File
@@ -90,10 +90,10 @@ int zend_sprintf(char *buffer, const char *format, ...);
#define zend_isinf(a) 0
#endif
#ifdef HAVE_FINITE
#define zend_finite(a) finite(a)
#elif defined(HAVE_ISFINITE) || defined(isfinite)
#if defined(HAVE_ISFINITE) || defined(isfinite)
#define zend_finite(a) isfinite(a)
#elif defined(HAVE_FINITE)
#define zend_finite(a) finite(a)
#elif defined(fpclassify)
#define zend_finite(a) ((fpclassify((a))!=FP_INFINITE&&fpclassify((a))!=FP_NAN)?1:0)
#else
+2 -4
View File
@@ -41,11 +41,9 @@ bool(true)
Notice: Constant test const already defined in %s on line %d
bool(false)
bool(true)
Warning: Constants may only evaluate to scalar values in %s on line %d
bool(false)
Warning: Constants may only evaluate to scalar values in %s on line %d
Warning: Constants may only evaluate to scalar values or arrays in %s on line %d
bool(false)
int(1)
int(2)
+2 -2
View File
@@ -30,10 +30,10 @@ var_dump(get_class($f2));
echo "Done\n";
?>
--EXPECTF--
Strict Standards: Non-static method foo::bar() should not be called statically in %s on line %d
Deprecated: Non-static method foo::bar() should not be called statically in %s on line %d
string(3) "foo"
Strict Standards: Non-static method foo::bar() should not be called statically in %s on line %d
Deprecated: Non-static method foo::bar() should not be called statically in %s on line %d
string(3) "foo"
string(3) "foo"
string(3) "foo"
+2 -2
View File
@@ -201,7 +201,7 @@ class Point
var $y;
var $lable;
function Point($x, $y) {
function __construct($x, $y) {
$this->x = $x;
$this->y = $y;
}
@@ -1271,7 +1271,7 @@ bool(false)
bool(true)
array(3) {
[0]=>
string(5) "Point"
string(11) "__construct"
[1]=>
string(8) "setLable"
[2]=>
+4 -1
View File
@@ -20,4 +20,7 @@ bool(true)
Notice: Undefined offset: 2 in %s on line %d
Fatal error: Function name must be a string in %s on line %d
Fatal error: Uncaught Error: Function name must be a string in %s:%d
Stack trace:
#0 {main}
thrown in %s on line %d
+4 -1
View File
@@ -16,4 +16,7 @@ var_dump($x::$x);
--EXPECTF--
int(1)
Fatal error: Access to undeclared static property: Closure::$x in %s on line %d
Fatal error: Uncaught Error: Access to undeclared static property: Closure::$x in %s:%d
Stack trace:
#0 {main}
thrown in %s on line %d
-1
View File
@@ -10,5 +10,4 @@ abstract class TestClass
===DONE===
--EXPECTF--
Strict Standards: Static function TestClass::getName() should not be abstract in %sabstract-static.php on line %d
===DONE===
+1 -1
View File
@@ -10,4 +10,4 @@ final final class test {
echo "Done\n";
?>
--EXPECTF--
Parse error: %s error,%sexpecting %s in %s on line %d
Fatal error: Multiple final modifiers are not allowed in %s on line %d
+6 -1
View File
@@ -28,4 +28,9 @@ new c;
?>
--EXPECTF--
Fatal error: Call to private method d::test2() from context 'a' in %s on line %d
Fatal error: Uncaught Error: Call to private method d::test2() from context 'a' in %s:%d
Stack trace:
#0 %s(%d): a->test()
#1 %s(%d): c->__construct()
#2 {main}
thrown in %s on line %d
+12
View File
@@ -0,0 +1,12 @@
--TEST--
Prevent abstract and final in the same class declaration
--FILE--
<?php
final abstract class C {
private function priv() { }
}
?>
--EXPECTF--
Fatal error: Cannot use the final modifier on an abstract class in %s on line %d
+14 -1
View File
@@ -8,12 +8,25 @@ $a = array(1,2,3);
$o = new stdclass;
$o->prop = "value";
try {
var_dump($a + $o);
} catch (Error $e) {
echo "\nException: " . $e->getMessage() . "\n";
}
$c = $a + $o;
var_dump($c);
echo "Done\n";
?>
--EXPECTF--
Notice: Object of class stdClass could not be converted to int in %sadd_002.php on line %d
Exception: Unsupported operand types
Notice: Object of class stdClass could not be converted to int in %s on line %d
Fatal error: Unsupported operand types in %s on line %d
Fatal error: Uncaught Error: Unsupported operand types in %s:%d
Stack trace:
#0 {main}
thrown in %s on line %d
+14 -1
View File
@@ -8,12 +8,25 @@ $a = array(1,2,3);
$o = new stdclass;
$o->prop = "value";
try {
var_dump($o + $a);
} catch (Error $e) {
echo "\nException: " . $e->getMessage() . "\n";
}
$c = $o + $a;
var_dump($c);
echo "Done\n";
?>
--EXPECTF--
Notice: Object of class stdClass could not be converted to int in %sadd_003.php on line %d
Exception: Unsupported operand types
Notice: Object of class stdClass could not be converted to int in %s on line %d
Fatal error: Unsupported operand types in %s on line %d
Fatal error: Uncaught Error: Unsupported operand types in %s:%d
Stack trace:
#0 {main}
thrown in %s on line %d
+12 -1
View File
@@ -5,10 +5,21 @@ adding numbers to arrays
$a = array(1,2,3);
try {
var_dump($a + 5);
} catch (Error $e) {
echo "\nException: " . $e->getMessage() . "\n";
}
$c = $a + 5;
var_dump($c);
echo "Done\n";
?>
--EXPECTF--
Fatal error: Unsupported operand types in %s on line %d
Exception: Unsupported operand types
Fatal error: Uncaught Error: Unsupported operand types in %s:%d
Stack trace:
#0 {main}
thrown in %s on line %d
+12 -1
View File
@@ -7,10 +7,21 @@ $a = array(1,2,3);
$s1 = "some string";
try {
var_dump($a + $s1);
} catch (Error $e) {
echo "\nException: " . $e->getMessage() . "\n";
}
$c = $a + $s1;
var_dump($c);
echo "Done\n";
?>
--EXPECTF--
Fatal error: Unsupported operand types in %s on line %d
Exception: Unsupported operand types
Fatal error: Uncaught Error: Unsupported operand types in %s:%d
Stack trace:
#0 {main}
thrown in %s on line %d
+10
View File
@@ -0,0 +1,10 @@
--TEST--
declare bare anonymous class
--FILE--
<?php
var_dump(new class{});
--EXPECTF--
object(class@%s)#%d (0) {
}
+21
View File
@@ -0,0 +1,21 @@
--TEST--
declare anonymous class extending another
--FILE--
<?php
class A{}
interface B{
public function method();
}
$a = new class extends A implements B {
public function method(){
return true;
}
};
var_dump($a instanceof A, $a instanceof B);
--EXPECTF--
bool(true)
bool(true)
+54
View File
@@ -0,0 +1,54 @@
--TEST--
reusing anonymous classes
--FILE--
<?php
while (@$i++<10) {
var_dump(new class($i) {
public function __construct($i) {
$this->i = $i;
}
});
}
--EXPECTF--
object(class@%s)#1 (1) {
["i"]=>
int(1)
}
object(class@%s)#1 (1) {
["i"]=>
int(2)
}
object(class@%s)#1 (1) {
["i"]=>
int(3)
}
object(class@%s)#1 (1) {
["i"]=>
int(4)
}
object(class@%s)#1 (1) {
["i"]=>
int(5)
}
object(class@%s)#1 (1) {
["i"]=>
int(6)
}
object(class@%s)#1 (1) {
["i"]=>
int(7)
}
object(class@%s)#1 (1) {
["i"]=>
int(8)
}
object(class@%s)#1 (1) {
["i"]=>
int(9)
}
object(class@%s)#1 (1) {
["i"]=>
int(10)
}
+30
View File
@@ -0,0 +1,30 @@
--TEST--
testing anonymous inheritance
--FILE--
<?php
class Outer {
protected $data;
public function __construct($data) {
$this->data = $data;
}
public function getArrayAccess() {
/* create a proxy object implementing array access */
return new class($this->data) extends Outer implements ArrayAccess {
public function offsetGet($offset) { return $this->data[$offset]; }
public function offsetSet($offset, $data) { return ($this->data[$offset] = $data); }
public function offsetUnset($offset) { unset($this->data[$offset]); }
public function offsetExists($offset) { return isset($this->data[$offset]); }
};
}
}
$outer = new Outer(array(
rand(1, 100)
));
/* not null because inheritance */
var_dump($outer->getArrayAccess()[0]);
--EXPECTF--
int(%d)
+36
View File
@@ -0,0 +1,36 @@
--TEST--
testing reusing anons that implement an interface
--FILE--
<?php
class Outer {
protected $data;
public function __construct(&$data) {
/* array access will be implemented by the time we get to here */
$this->data = &$data;
}
public function getArrayAccess() {
/* create a child object implementing array access */
/* this grants you access to protected methods and members */
return new class($this->data) implements ArrayAccess {
public function offsetGet($offset) { return $this->data[$offset]; }
public function offsetSet($offset, $data) { return ($this->data[$offset] = $data); }
public function offsetUnset($offset) { unset($this->data[$offset]); }
public function offsetExists($offset) { return isset($this->data[$offset]); }
};
}
}
$data = array(
rand(1, 100),
rand(2, 200)
);
$outer = new Outer($data);
$proxy = $outer->getArrayAccess();
/* null because no inheritance, so no access to protected member */
var_dump(@$outer->getArrayAccess()[0]);
--EXPECT--
NULL
+15
View File
@@ -0,0 +1,15 @@
--TEST--
testing anon classes inside namespaces
--FILE--
<?php
namespace lone {
$hello = new class{} ;
}
namespace {
var_dump ($hello);
}
--EXPECTF--
object(class@%s)#1 (0) {
}
+23
View File
@@ -0,0 +1,23 @@
--TEST--
testing anon classes in functions outside of classes in namespaces
--FILE--
<?php
namespace lone {
function my_factory() {
return new class{};
}
class Outer {
public function __construct() {
var_dump(
my_factory());
}
}
new Outer();
}
--EXPECTF--
object(class@%s)#2 (0) {
}
+23
View File
@@ -0,0 +1,23 @@
--TEST--
testing static access for methods and properties in anon classes
--FILE--
<?php
$anonClass = new class("cats", "dogs") {
public static $foo;
private static $bar;
public function __construct($foo, $bar) {
static::$foo = $foo;
static::$bar = $bar;
}
public static function getBar() {
return static::$bar;
}
};
var_dump($anonClass::$foo);
var_dump($anonClass::getBar());
--EXPECT--
string(4) "cats"
string(4) "dogs"
+18
View File
@@ -0,0 +1,18 @@
--TEST--
testing traits in anon classes
--FILE--
<?php
trait Foo {
public function someMethod() {
return "bar";
}
}
$anonClass = new class {
use Foo;
};
var_dump($anonClass->someMethod());
--EXPECT--
string(3) "bar"
+23
View File
@@ -0,0 +1,23 @@
--TEST--
Trait binding after anon class
--FILE--
<?php
trait T {
public function m1() { return 42; }
}
class C {
public function m2() {
return new class {};
}
use T;
}
$c = new C;
var_dump($c->m1());
?>
--EXPECT--
int(42)
+10 -6
View File
@@ -7,14 +7,18 @@ set_error_handler(function($errno, $errstr) {
var_dump($errstr);
});
var_dump(...[1, 2, "foo" => 3, 4]);
var_dump(...new ArrayIterator([1, 2, "foo" => 3, 4]));
try {
var_dump(...[1, 2, "foo" => 3, 4]);
} catch (Error $ex) {
var_dump($ex->getMessage());
}
try {
var_dump(...new ArrayIterator([1, 2, "foo" => 3, 4]));
} catch (Error $ex) {
var_dump($ex->getMessage());
}
?>
--EXPECTF--
string(36) "Cannot unpack array with string keys"
int(1)
int(2)
string(42) "Cannot unpack Traversable with string keys"
int(1)
int(2)
+1 -1
View File
@@ -13,4 +13,4 @@ class Sub extends Base {
}
?>
--EXPECTF--
Strict Standards: Declaration of Sub::test() should be compatible with & Base::test($foo, array $bar, $option = NULL, $extra = 'llllllllll...') in %sargument_restriction_001.php on line %d
Warning: Declaration of & Sub::test() should be compatible with & Base::test($foo, array $bar, $option = NULL, $extra = 'llllllllll...') in %sargument_restriction_001.php on line %d
+1 -1
View File
@@ -13,4 +13,4 @@ class Sub extends Base {
}
?>
--EXPECTF--
Strict Standards: Declaration of Sub::test() should be compatible with Base::test($foo, array &$bar, $option = NULL, $extra = 3.1415926535898) in %sargument_restriction_002.php on line %d
Warning: Declaration of Sub::test($foo, array &$bar) should be compatible with Base::test($foo, array &$bar, $option = NULL, $extra = 3.1415926535898) in %sargument_restriction_002.php on line %d
+1 -1
View File
@@ -16,4 +16,4 @@ class Sub extends Base {
}
?>
--EXPECTF--
Strict Standards: Declaration of Sub::test() should be compatible with Base::test(Foo $foo, array $bar, $option = NULL, $extra = 'llllllllll...') in %sargument_restriction_003.php on line %d
Warning: Declaration of Sub::test() should be compatible with Base::test(Foo $foo, array $bar, $option = NULL, $extra = 'llllllllll...') in %sargument_restriction_003.php on line %d
+1 -1
View File
@@ -13,4 +13,4 @@ class Sub extends Base {
}
?>
--EXPECTF--
Strict Standards: Declaration of Sub::test() should be compatible with Base::test($foo, $extra = Array) in %sargument_restriction_006.php on line %d
Warning: Declaration of Sub::test($foo, $extra) should be compatible with Base::test($foo, $extra = Array) in %sargument_restriction_006.php on line %d
+20
View File
@@ -0,0 +1,20 @@
--TEST--
Accept hashes being equal to zero
--FILE--
<?php
$hashes = [
"\x8e\x1a\x63\x0f\x61" => 32,
"\xf7\x17\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x6b\x03\x6a\x13\x63\x17\x6b\x1d\x67" => 64,
];
foreach ($hashes as $hash => $bits) {
var_dump($hashes[$hash], $bits);
}
?>
--EXPECT--
int(32)
int(32)
int(64)
int(64)
+21
View File
@@ -0,0 +1,21 @@
--TEST--
Ensure "undefined offset" notice formats message corectly when undefined key is negative
--FILE--
<?php
[][-1];
[][-1.1];
(new ArrayObject)[-1];
(new ArrayObject)[-1.1];
echo "Done\n";
?>
--EXPECTF--
Notice: Undefined offset: -1 in %s on line 3
Notice: Undefined offset: -1 in %s on line 4
Notice: Undefined offset: -1 in %s on line 5
Notice: Undefined offset: -1 in %s on line 6
Done
+5 -1
View File
@@ -12,4 +12,8 @@ foo(123);
--EXPECTF--
3
Catchable fatal error: Argument 1 passed to foo() must be of the type array, integer given, called in %sarray_type_hint_001.php on line 7 and defined in %sarray_type_hint_001.php on line 2
Fatal error: Uncaught TypeError: Argument 1 passed to foo() must be of the type array, integer given, called in %sarray_type_hint_001.php on line 7 and defined in %sarray_type_hint_001.php:2
Stack trace:
#0 %s(%d): foo(123)
#1 {main}
thrown in %sarray_type_hint_001.php on line 2
+12
View File
@@ -0,0 +1,12 @@
--TEST--
test passing assertion
--INI--
zend.assertions=1
assert.exception=1
--FILE--
<?php
assert(true);
var_dump(true);
?>
--EXPECTF--
bool(true)
+16
View File
@@ -0,0 +1,16 @@
--TEST--
test failing assertion
--INI--
zend.assertions=1
assert.exception=1
--FILE--
<?php
assert(false);
var_dump(true);
?>
--EXPECTF--
Fatal error: Uncaught AssertionError: assert(false) in %sexpect_002.php:%d
Stack trace:
#0 %sexpect_002.php(%d): assert(false, 'assert(false)')
#1 {main}
thrown in %sexpect_002.php on line %d
+15
View File
@@ -0,0 +1,15 @@
--TEST--
test catching failed assertion
--INI--
zend.assertions=1
assert.exception=1
--FILE--
<?php
try {
assert(false);
} catch (AssertionError $ex) {
var_dump($ex->getMessage());
}
?>
--EXPECT--
string(13) "assert(false)"
+15
View File
@@ -0,0 +1,15 @@
--TEST--
test providing reason (fail)
--INI--
zend.assertions=1
assert.exception=1
--FILE--
<?php
try {
assert(false, "I require this to succeed");
} catch (AssertionError $ex) {
var_dump($ex->getMessage());
}
?>
--EXPECT--
string(25) "I require this to succeed"
+17
View File
@@ -0,0 +1,17 @@
--TEST--
test providing reason (pass)
--INI--
zend.assertions=1
assert.exception=1
--FILE--
<?php
try {
/* by passing we test there are no leaks upon success */
assert(true, "I require this to succeed");
} catch (AssertionError $ex) {
var_dump($ex->getMessage());
}
var_dump(true);
?>
--EXPECT--
bool(true)
+14
View File
@@ -0,0 +1,14 @@
--TEST--
test looping assert (pass)
--INI--
zend.assertions=1
assert.exception=1
--FILE--
<?php
for($i=0; $i<100000; $i++) {
assert ($i < 100000, "The universe should make sense");
}
var_dump(true);
?>
--EXPECT--
bool(true)
+22
View File
@@ -0,0 +1,22 @@
--TEST--
test compiled reason
--INI--
zend.assertions=1
assert.exception=1
--FILE--
<?php
$next = 1;
$data = array(
"key" => "X-HTTP ",
"value" => "testing"
);
class HeaderMalfunctionError extends AssertionError {}
assert (preg_match("~^([a-zA-Z0-9-]+)$~", $data["key"]), new HeaderMalfunctionError("malformed key found at {$next} \"{$data["key"]}\""));
?>
--EXPECTF--
Fatal error: Uncaught HeaderMalfunctionError: malformed key found at 1 "X-HTTP " in %sexpect_007.php:10
Stack trace:
#0 {main}
thrown in %sexpect_007.php on line 10
+34
View File
@@ -0,0 +1,34 @@
--TEST--
test disabled expectations have no ill side effects
--INI--
zend.assertions=0
assert.exception=1
--FILE--
<?php
class One {
public function __construct() {
assert($this || 0);
}
}
class Two extends One {}
class OdEar extends AssertionError {}
function blah(){ return 1; }
$variable = 1;
assert(true, "constant message");
assert(($variable && $variable) || php_sapi_name(), new OdEar("constant message"));
assert(false);
assert(blah(), blah());
new Two();
new Two();
new Two();
assert (blah() || blah() || blah(), blah() || blah() || blah() || blah());
var_dump(true);
?>
--EXPECT--
bool(true)
+25
View File
@@ -0,0 +1,25 @@
--TEST--
test stack trace is correct from failed exception in extended class
--INI--
zend.assertions=1
assert.exception=1
--FILE--
<?php
class One {
public function __construct() {
}
}
class Two extends One {
public function __construct() {
assert(false);
}
}
new Two();
?>
--EXPECTF--
Fatal error: Uncaught AssertionError: assert(false) in %sexpect_009.php:%d
Stack trace:
#0 %sexpect_009.php(%d): assert(false, 'assert(false)')
#1 %sexpect_009.php(%d): Two->__construct()
#2 {main}
thrown in %sexpect_009.php on line %d
+23
View File
@@ -0,0 +1,23 @@
--TEST--
test stack trace is correct from failed exception in extended class (parent implementing constructor)
--INI--
zend.assertions=1
assert.exception=1
--FILE--
<?php
class One {
public function __construct() {
assert(false);
}
}
class Two extends One {}
new Two();
?>
--EXPECTF--
Fatal error: Uncaught AssertionError: assert(false) in %sexpect_010.php:%d
Stack trace:
#0 %sexpect_010.php(%d): assert(false, 'assert(false)')
#1 %sexpect_010.php(%d): One->__construct()
#2 {main}
thrown in %sexpect_010.php on line %d
+30
View File
@@ -0,0 +1,30 @@
--TEST--
test overloaded __toString on custom exception
--INI--
zend.assertions=1
assert.exception=1
--FILE--
<?php
class MyExpectations extends AssertionError {
public function __toString() {
return sprintf(
"[Message]: %s", __CLASS__);
}
}
class One {
public function __construct() {
assert(false, (string) new MyExpectations());
}
}
class Two extends One {}
new Two();
?>
--EXPECTF--
Fatal error: Uncaught AssertionError: [Message]: MyExpectations in %sexpect_011.php:%d
Stack trace:
#0 %sexpect_011.php(%d): assert(false, '[Message]: MyEx...')
#1 %sexpect_011.php(%d): One->__construct()
#2 {main}
thrown in %sexpect_011.php on line %d
+21
View File
@@ -0,0 +1,21 @@
--TEST--
test enable/disable assertions at runtime
--INI--
zend.assertions=1
assert.exception=1
--FILE--
<?php
var_dump((integer)ini_get("zend.assertions"));
ini_set("zend.assertions", 0);
var_dump((integer)ini_get("zend.assertions"));
assert(false);
ini_set("zend.assertions", 1);
var_dump((integer)ini_get("zend.assertions"));
assert(true);
var_dump(true);
?>
--EXPECT--
int(1)
int(0)
int(1)
bool(true)
+11
View File
@@ -0,0 +1,11 @@
--TEST--
test failing assertion when disabled (with return value)
--INI--
zend.assertions=0
assert.exception=1
--FILE--
<?php
var_dump(assert(false));
?>
--EXPECT--
bool(true)
+12
View File
@@ -0,0 +1,12 @@
--TEST--
test failing assertion when disabled
--INI--
zend.assertions=0
assert.exception=1
--FILE--
<?php
assert(false);
var_dump(true);
?>
--EXPECT--
bool(true)
+295
View File
@@ -0,0 +1,295 @@
--TEST--
AST pretty-peinter
--INI--
zend.assertions=1
assert.exception=0
--FILE--
<?php
assert(0 && ($a = function () {
global $a, $$b;
static $c, $d = 0;
unset($e);
$x = isset($a) && !empty($b) || eval($c);
$x = $a ? $b : $c;
$x = $a ?: $c;
$x = $a ?? $b;
list($a, $b, $c) = [1, 2=>'x', 'z'=>'c'];
@foo();
$y = clone $x;
yield 1 => 2;
yield from $x;
}));
assert(0 && ($a = function &(array &$a, X $b = null) use ($c,&$d) : X {
abstract class A extends B implements C, D {
const X = 12;
const Y = self::X, Z = "aaa";
public $a = 1, $b;
protected $c;
static private $d = null;
abstract function foo();
static private function f1() {
for ($i = 0, $j = 100; $i < $j; $i++, --$j) {
$s[$i] = $a[$j];
}
foreach ($a as $key => &$val) {
print "$key => $val\n";
}
while ($s[$i]) {
$i++;
}
do {
$i--;
} while ($s[$i]);
$x = foo($a + 1, 4, ...[1,2,3]);
$x = ${$a . "_1"}();
$x = A::foo();
$x = ${$a . "_1"}::foo();
$x = A::${$a . "_1"}();
$x = $x->foo();
$x = ${$a . "_1"}->foo();
$x = $x->{$a . "_1"}();
$x->a = C::C;
${$a . "_1"}->a = ${$a . "_1"}::C;
$x->{a . "_1"} = C::C;
$x = C::$z;
$x = ${$a . "_1"}::$z;
$x = C::${$z . "_1"};
}
}
}));
assert(0 && ($a = function &(array &$a, X $b = null) use ($c,&$d) : X {
final class A {
final protected function f2() {
if (!$x) {
return 0;
}
if ($x == 1) {
return 1;
} else if ($x == 2) {
return 2;
} else if ($x == 3) {
return 3;
} else {
if ($x == 9) {
return 9;
}
L0:
do {
switch ($x) {
case 4: break;
case 5: continue;
case 6: break 2;
case 7: continue 2;
case 8: goto L0;
default: return;
}
} while (0);
}
}
}
}));
assert(0 && ($a = function &(array &$a, X $b = null) use ($c,&$d) : X {
class A {
use T1, T2 {
T1::foo insteadof foo;
T2::foo as bar;
baz as public;
ops as protected x;
}
use T3;
}
}));
assert(0 && ($a = function &(array &...$a) {
declare(A=1,B=2);
try {
$i++;
} catch (MyException $e) {
echo 1;
} catch (Exception $e) {
echo 2;
} finally {
echo 3;
}
}));
assert(0 && ($a = function () {
declare(C=1) { echo 1; }
$x = '\'"`$a';
$x = "'\"`$a";
$x = `'"\`$a`;
$x = "{$a}b";
$x = "${a}b";
$x = " {$foo->bar} ${$foo->bar} ";
$x = " ${'---'} ";
foo();
\foo();
namespace\foo();
$x = foo;
$x = \foo;
$x = namespace\foo;
$x = new foo();
$x = new \foo();
$x = new namespace\foo();
if ($a) {
} elseif ($b) {
}
}));
?>
--EXPECTF--
Warning: assert(): assert(0 && ($a = function () {
global $a;
global $$b;
static $c;
static $d = 0;
unset($e);
$x = isset($a) && !empty($b) || eval($c);
$x = $a ? $b : $c;
$x = $a ?: $c;
$x = $a ?? $b;
list($a, $b, $c) = [1, 2 => 'x', 'z' => 'c'];
@foo();
$y = clone $x;
yield 1 => 2;
yield from $x;
})) failed in %sexpect_015.php on line %d
Warning: assert(): assert(0 && ($a = function &(array &$a, X $b = null) use($c, &$d): X {
abstract class A extends B implements C, D {
const X = 12;
const Y = self::X, Z = 'aaa';
public $a = 1, $b;
protected $c;
private static $d = null;
public abstract function foo();
private static function f1() {
for ($i = 0, $j = 100; $i < $j; $i++, --$j) {
$s[$i] = $a[$j];
}
foreach ($a as $key => &$val) {
print "$key => $val\n";
}
while ($s[$i]) {
$i++;
}
do {
$i--;
} while ($s[$i]);
$x = foo($a + 1, 4, ...[1, 2, 3]);
$x = ${$a . '_1'}();
$x = A::foo();
$x = ${$a . '_1'}::foo();
$x = A::${$a . '_1'}();
$x = $x->foo();
$x = ${$a . '_1'}->foo();
$x = $x->{$a . '_1'}();
$x->a = C::C;
${$a . '_1'}->a = ${$a . '_1'}::C;
$x->{a . '_1'} = C::C;
$x = C::$z;
$x = ${$a . '_1'}::$z;
$x = C::${$z . '_1'};
}
}
})) failed in %sexpect_015.php on line %d
Warning: assert(): assert(0 && ($a = function &(array &$a, X $b = null) use($c, &$d): X {
final class A {
protected final function f2() {
if (!$x) {
return 0;
}
if ($x == 1) {
return 1;
} else if ($x == 2) {
return 2;
} else if ($x == 3) {
return 3;
} else {
if ($x == 9) {
return 9;
}
L0:
do {
switch ($x) {
case 4:
break;
case 5:
continue;
case 6:
break 2;
case 7:
continue 2;
case 8:
goto L0;
default:
return;
}
} while (0);
}
}
}
})) failed in %sexpect_015.php on line %d
Warning: assert(): assert(0 && ($a = function &(array &$a, X $b = null) use($c, &$d): X {
class A {
use T1, T2 {
T1::foo insteadof foo;
T2::foo as bar;
baz as public;
ops as protected x;
}
use T3;
}
})) failed in %sexpect_015.php on line %d
Warning: assert(): assert(0 && ($a = function &(array &...$a) {
declare(A = 1, B = 2);
try {
$i++;
} catch (MyException $e) {
echo 1;
} catch (Exception $e) {
echo 2;
} finally {
echo 3;
}
})) failed in %sexpect_015.php on line %d
Warning: assert(): assert(0 && ($a = function () {
declare(C = 1) {
echo 1;
}
$x = '\'"`$a';
$x = "'\"`$a";
$x = `'"\`$a`;
$x = "{$a}b";
$x = "{$a}b";
$x = " {$foo->bar} {${$foo->bar}} ";
$x = " ${---} ";
foo();
\foo();
namespace\foo();
$x = foo;
$x = \foo;
$x = namespace\foo;
$x = new foo();
$x = new \foo();
$x = new namespace\foo();
if ($a) {
} elseif ($b) {
}
})) failed in %sexpect_015.php on line %d
+24
View File
@@ -0,0 +1,24 @@
--TEST--
test enable/disable assertions at runtime (assertions not completely disabled)
--INI--
zend.assertions=0
assert.exception=0
--FILE--
<?php
ini_set("zend.assertions", 0);
var_dump(assert(false));
var_dump(assert(true));
ini_set("zend.assertions", 1);
var_dump(assert(false));
var_dump(assert(true));
ini_set("zend.assertions", -1);
?>
--EXPECTF--
bool(true)
bool(true)
Warning: assert(): assert(false) failed in %sexpect_016.php on line 6
NULL
bool(true)
Warning: zend.assertions may be completely enabled or disabled only in php.ini in %sexpect_016.php on line 8
+19
View File
@@ -0,0 +1,19 @@
--TEST--
test enable/disable assertions at runtime (assertions completely disabled)
--INI--
zend.assertions=-1
assert.exception=0
--FILE--
<?php
var_dump(assert(false));
var_dump(assert(true));
ini_set("zend.assertions", 0);
ini_set("zend.assertions", 1);
?>
--EXPECTF--
bool(true)
bool(true)
Warning: zend.assertions may be completely enabled or disabled only in php.ini in %sexpect_017.php on line 4
Warning: zend.assertions may be completely enabled or disabled only in php.ini in %sexpect_017.php on line 5
+33
View File
@@ -0,0 +1,33 @@
--TEST--
test assertions in namespace
--INI--
zend.assertions=1
assert.exception=0
--FILE--
<?php
namespace Foo;
ini_set("zend.assertions", 0);
var_dump(\assert(false));
var_dump(\assert(true));
var_dump(assert(false));
var_dump(assert(true));
ini_set("zend.assertions", 1);
var_dump(\assert(false));
var_dump(\assert(true));
var_dump(assert(false));
var_dump(assert(true));
?>
--EXPECTF--
bool(true)
bool(true)
bool(true)
bool(true)
Warning: assert(): assert(false) failed in %sexpect_018.php on line 10
NULL
bool(true)
Warning: assert(): assert(false) failed in %sexpect_018.php on line 12
NULL
bool(true)
+19
View File
@@ -0,0 +1,19 @@
--TEST--
test assertions in namespace (assertions completely disabled)
--INI--
zend.assertions=-1
assert.exception=0
--FILE--
<?php
namespace Foo;
var_dump(\assert(false));
var_dump(\assert(true));
var_dump(assert(false));
var_dump(assert(true));
?>
--EXPECTF--
bool(true)
bool(true)
bool(true)
bool(true)
+24
View File
@@ -0,0 +1,24 @@
--TEST--
assgin to object leaks with ref
--FILE--
<?php
function &a($i) {
$a = "str". $i ."ing";
return $a;
}
class A {
public function test() {
$this->a = a(1);
unset($this->a);
}
}
$a = new A;
$a->test();
$a->test();
echo "okey";
?>
--EXPECT--
okey
+1 -1
View File
@@ -8,7 +8,7 @@ setlocale(LC_ALL, $g_lang);
class InfoBlob {
var $foo;
function InfoBlob() {
function __construct() {
$this->foo = "Foo";
}
}
+1 -1
View File
@@ -9,7 +9,7 @@ class test
{
public $member;
function test() {
function __construct() {
$this->member = 1;
register_shutdown_function(array($this, 'destructor'));
}
+4 -1
View File
@@ -6,4 +6,7 @@ Bug #24773 (unset() of integers treated as arrays causes a crash)
unset($array["lvl1"]["lvl2"]["b"]);
?>
--EXPECTF--
Fatal error: Cannot use string offset as an array in %s on line %d
Fatal error: Uncaught Error: Cannot use string offset as an array in %s:%d
Stack trace:
#0 {main}
thrown in %s on line %d
+6 -6
View File
@@ -37,25 +37,25 @@ function my_error_handler($errno, $errstr, $errfile, $errline) {
set_error_handler('my_error_handler');
class None
class NoneTest
{
function __toString() {
}
}
$o = new None;
$o = new NoneTest;
echo $o;
echo "===THROW===\n";
class Error
class ErrorTest
{
function __toString() {
throw new Exception("This is an error!");
}
}
$o = new Error;
$o = new ErrorTest;
try {
echo $o;
}
@@ -68,7 +68,7 @@ catch (Exception $e) {
--EXPECTF--
Hello World!
===NONE===
string(52) "Method None::__toString() must return a string value"
string(56) "Method NoneTest::__toString() must return a string value"
===THROW===
Fatal error: Method Error::__toString() must not throw an exception in %sbug26166.php on line %d
Fatal error: Method ErrorTest::__toString() must not throw an exception in %sbug26166.php on line %d
+4 -1
View File
@@ -8,4 +8,7 @@ $a->$x = "string('')";
var_dump($a);
?>
--EXPECTF--
Fatal error: Cannot access empty property in %sbug29015.php on line 4
Fatal error: Uncaught Error: Cannot access empty property in %sbug29015.php:4
Stack trace:
#0 {main}
thrown in %sbug29015.php on line 4
+5 -1
View File
@@ -38,4 +38,8 @@ NULL
===CHILD===
string(4) "Base"
Fatal error: Cannot access private property ChildClass::$private_child in %sbug29674.php on line %d
Fatal error: Uncaught Error: Cannot access private property ChildClass::$private_child in %sbug29674.php:%d
Stack trace:
#0 %s(%d): BaseClass->printVars()
#1 {main}
thrown in %sbug29674.php on line %d
+1 -1
View File
@@ -2,7 +2,7 @@
Bug #29890 (crash if error handler fails)
--FILE--
<?php
function customErrorHandler($fErrNo,$fErrStr,$fErrFile,$fErrLine,&$fClass) {
function customErrorHandler($fErrNo,$fErrStr,$fErrFile,$fErrLine,$fClass) {
echo "error :".$fErrStr."\n";
}
+1 -1
View File
@@ -3,7 +3,7 @@ Bug #30080 (Passing array or non array of objects)
--FILE--
<?php
class foo {
function foo($arrayobj) {
function __construct($arrayobj) {
var_dump($arrayobj);
}
}
+2 -2
View File
@@ -21,8 +21,8 @@ $b = new Blah();
$b->show();
?>
--EXPECTF--
Strict Standards: Accessing static property Blah::$x as non static in %sbug30820.php on line 7
Notice: Accessing static property Blah::$x as non static in %sbug30820.php on line 7
Blah::$x = 1
Strict Standards: Accessing static property Blah::$x as non static in %sbug30820.php on line 10
Notice: Accessing static property Blah::$x as non static in %sbug30820.php on line 10
$this->x = 5
+5 -1
View File
@@ -45,4 +45,8 @@ __autoload(Test2,2)
Caught: __autoload
__autoload(Test3,3)
Fatal error: Class 'Test3' not found in %sbug31102.php(%d) : eval()'d code on line 1
Fatal error: Uncaught Error: Class 'Test3' not found in %sbug31102.php(%d) : eval()'d code:1
Stack trace:
#0 %s(%d): eval()
#1 {main}
thrown in %sbug31102.php(%d) : eval()'d code on line 1
+2 -2
View File
@@ -3,13 +3,13 @@ Bug #31177 (memory corruption because of incorrect refcounting)
--FILE--
<?php
class foo {
function foo($n=0) {
function __construct($n=0) {
if($n) throw new Exception("new");
}
}
$x = new foo();
try {
$y=$x->foo(1);
$y=$x->__construct(1);
} catch (Exception $e) {
var_dump($x);
}
+1 -1
View File
@@ -17,6 +17,6 @@ $bar->destroyThis();
var_dump($bar);
?>
--EXPECTF--
Strict Standards: Only variables should be assigned by reference in %sbug31525.php on line 7
Notice: Only variables should be assigned by reference in %sbug31525.php on line 7
object(Foo)#1 (0) {
}
+1 -1
View File
@@ -5,7 +5,7 @@ Bug #32226 (SEGV with exception handler on non existing instance)
class A
{
public function A()
public function __construct()
{
set_exception_handler(array($this, 'EH'));
+2 -2
View File
@@ -68,13 +68,13 @@ Try static instance inside class :
New class Singleton1 created
Using old class Singleton1
Strict Standards: Only variables should be assigned by reference in %sbug32322.php on line 49
Notice: Only variables should be assigned by reference in %sbug32322.php on line 49
Using old class Singleton1
Try static instance inside function :
New class Singleton2 created
Using old class Singleton2
Strict Standards: Only variables should be assigned by reference in %sbug32322.php on line 55
Notice: Only variables should be assigned by reference in %sbug32322.php on line 55
Using old class Singleton2
Class Singleton1 destroyed at script end
Class Singleton2 destroyed at script end
+4 -1
View File
@@ -36,4 +36,7 @@ A Object
Notice: Indirect modification of overloaded property A::$whatever has no effect in %sbug32660.php on line 23
Fatal error: Cannot assign by reference to overloaded object in %sbug32660.php on line 23
Fatal error: Uncaught Error: Cannot assign by reference to overloaded object in %sbug32660.php:23
Stack trace:
#0 {main}
thrown in %sbug32660.php on line 23
+1 -1
View File
@@ -16,7 +16,7 @@ array_splice(X::getArr(), 1, 1);
print_r(X::getArr());
?>
--EXPECTF--
Strict Standards: Only variables should be passed by reference in %sbug33257.php on line 10
Notice: Only variables should be passed by reference in %sbug33257.php on line 10
Array
(
[0] => a
+4 -1
View File
@@ -5,4 +5,7 @@ Bug #33318 (throw 1; results in Invalid opcode 108/1/8)
throw 1;
?>
--EXPECTF--
Fatal error: Can only throw objects in %sbug33318.php on line 2
Fatal error: Uncaught Error: Can only throw objects in %sbug33318.php:2
Stack trace:
#0 {main}
thrown in %sbug33318.php on line 2
Loaded 100 of 4549 files, more files were not shown because too many files have changed in this diff. Show more