]> granicus.if.org Git - php/log
php
11 years agoMerge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6
Dmitry Stogov [Thu, 12 Dec 2013 09:59:51 +0000 (13:59 +0400)]
Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6

* 'PHP-5.6' of git.php.net:php-src:
  Fixed bug #65486 mysqli_poll() is broken on Win x64

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Dmitry Stogov [Thu, 12 Dec 2013 09:55:23 +0000 (13:55 +0400)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  Fixed tests
  Fixed ext/soap/tests/bugs/bug54911.phpt

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Anatol Belski [Thu, 12 Dec 2013 09:46:21 +0000 (10:46 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  Fixed bug #65486 mysqli_poll() is broken on Win x64

11 years agoFixed tests
Dmitry Stogov [Thu, 12 Dec 2013 09:35:37 +0000 (13:35 +0400)]
Fixed tests

11 years agoFixed bug #65486 mysqli_poll() is broken on Win x64
Anatol Belski [Thu, 12 Dec 2013 09:17:01 +0000 (10:17 +0100)]
Fixed bug #65486 mysqli_poll() is broken on Win x64

While this issue is visible in mysqli_poll() functions, the cause
lays deeper in the stream to socket casting API. On Win x64 the
SOCKET datatype is a 64 or 32 bit unsigned, while on Linux/Unix-like
it's 32 bit signed integer. The game of casting 32 bit var to/from
64 bit pointer back and forth is the best way to break it.

Further more, while socket and file descriptors are always integers
on Linux, those are different things using different APIs on Windows.
Even though using integer instead of SOCKET might work on Windows, this
issue might need to be revamped more carefully later. By this time
this patch is tested well with phpt and apps and shows no regressions,
neither in mysqli_poll() nor in any other parts.

11 years agoFixed ext/soap/tests/bugs/bug54911.phpt
Dmitry Stogov [Thu, 12 Dec 2013 09:02:50 +0000 (13:02 +0400)]
Fixed ext/soap/tests/bugs/bug54911.phpt

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Adam Harvey [Sun, 8 Dec 2013 03:41:44 +0000 (19:41 -0800)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  Switch to using freetype-config for freetype detection.

11 years agoAdded one more test for constant scalar expressions
Bob Weinand [Wed, 11 Dec 2013 18:17:07 +0000 (19:17 +0100)]
Added one more test for constant scalar expressions

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Anatol Belski [Wed, 11 Dec 2013 13:16:07 +0000 (14:16 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  added missing prototype

11 years agoadded missing prototype
Anatol Belski [Wed, 11 Dec 2013 13:15:40 +0000 (14:15 +0100)]
added missing prototype

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Anatol Belski [Wed, 11 Dec 2013 12:33:37 +0000 (13:33 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  fix dir separator in cve-2013-6420 test

11 years agoMerge branch 'PHP-5.4' into PHP-5.5
Anatol Belski [Wed, 11 Dec 2013 12:33:16 +0000 (13:33 +0100)]
Merge branch 'PHP-5.4' into PHP-5.5

* PHP-5.4:
  fix dir separator in cve-2013-6420 test

11 years agoMerge branch 'PHP-5.3' into PHP-5.4
Anatol Belski [Wed, 11 Dec 2013 12:32:49 +0000 (13:32 +0100)]
Merge branch 'PHP-5.3' into PHP-5.4

* PHP-5.3:
  fix dir separator in cve-2013-6420 test

11 years agofix dir separator in cve-2013-6420 test
Anatol Belski [Wed, 11 Dec 2013 12:31:29 +0000 (13:31 +0100)]
fix dir separator in cve-2013-6420 test

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Ard Biesheuvel [Wed, 11 Dec 2013 07:51:10 +0000 (08:51 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

11 years agoMerge branch 'PHP-5.4' into PHP-5.5
Ard Biesheuvel [Wed, 11 Dec 2013 07:50:53 +0000 (08:50 +0100)]
Merge branch 'PHP-5.4' into PHP-5.5

11 years agoZend: fix overflow handling bug in non-x86 fast_add_function()
Ard Biesheuvel [Tue, 10 Dec 2013 11:07:46 +0000 (12:07 +0100)]
Zend: fix overflow handling bug in non-x86 fast_add_function()

The 'result' argument of fast_add_function() may alias with either
of its operands (or both). Take care not to write to 'result' before
reading op1 and op2.

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Stanislav Malyshev [Tue, 10 Dec 2013 19:36:06 +0000 (11:36 -0800)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  5.3.29-dev
  Fix CVE-2013-6420 - memory corruption in openssl_x509_parse

11 years agoMerge branch 'PHP-5.4' into PHP-5.5
Stanislav Malyshev [Tue, 10 Dec 2013 19:35:26 +0000 (11:35 -0800)]
Merge branch 'PHP-5.4' into PHP-5.5

* PHP-5.4:
  5.3.29-dev
  Fix CVE-2013-6420 - memory corruption in openssl_x509_parse

11 years agoMerge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4
Stanislav Malyshev [Tue, 10 Dec 2013 19:34:45 +0000 (11:34 -0800)]
Merge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4

* 'PHP-5.4' of git.php.net:php-src:
  Fixed Bug #66218 zend_register_functions breaks reflection

11 years agoMerge branch 'PHP-5.3' into PHP-5.4
Stanislav Malyshev [Tue, 10 Dec 2013 19:33:40 +0000 (11:33 -0800)]
Merge branch 'PHP-5.3' into PHP-5.4

* PHP-5.3:
  5.3.29-dev
  Fix CVE-2013-6420 - memory corruption in openssl_x509_parse

Conflicts:
configure.in
main/php_version.h

11 years ago5.3.29-dev
Stanislav Malyshev [Tue, 10 Dec 2013 19:32:11 +0000 (11:32 -0800)]
5.3.29-dev

11 years agoFix CVE-2013-6420 - memory corruption in openssl_x509_parse
Stanislav Malyshev [Sun, 8 Dec 2013 19:40:18 +0000 (11:40 -0800)]
Fix CVE-2013-6420 - memory corruption in openssl_x509_parse

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Remi Collet [Tue, 10 Dec 2013 15:10:20 +0000 (16:10 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  NEWS
  Fixed Bug #66218 zend_register_functions breaks reflection

11 years agoNEWS
Remi Collet [Tue, 10 Dec 2013 15:10:02 +0000 (16:10 +0100)]
NEWS

11 years agoMerge branch 'PHP-5.4' into PHP-5.5
Remi Collet [Tue, 10 Dec 2013 15:09:41 +0000 (16:09 +0100)]
Merge branch 'PHP-5.4' into PHP-5.5

* PHP-5.4:
  Fixed Bug #66218 zend_register_functions breaks reflection

11 years agoFixed Bug #66218 zend_register_functions breaks reflection
Remi Collet [Tue, 10 Dec 2013 15:07:16 +0000 (16:07 +0100)]
Fixed Bug #66218 zend_register_functions breaks reflection

Functions registered using zend_register_functions instead of zend_module_entry.functions are not seen on reflection.

Ex: additional_functions from api_module_entry.
Ex: in CLI, dl, cli_set_process_title and cli_get_process_title

Note:
- also affects functions overrided in extension
  (should be be reported in extension, where overrided, not in original extension)
- also allow extension to call zend_register_functions for various list
  (instead of having a single bug list)

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Dmitry Stogov [Tue, 10 Dec 2013 13:58:22 +0000 (17:58 +0400)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  Fixed bug #66112 (Use after free condition in SOAP extension). (martin dot koegler at brz dot gv dot at)

Conflicts:
NEWS

11 years agoFixed bug #66112 (Use after free condition in SOAP extension). (martin dot koegler...
Dmitry Stogov [Tue, 10 Dec 2013 13:57:05 +0000 (17:57 +0400)]
Fixed bug #66112 (Use after free condition in SOAP extension). (martin dot koegler at brz dot gv dot at)

11 years agoFixed bug #66251 (Constants get statically bound at compile time when Optimized)
Dmitry Stogov [Tue, 10 Dec 2013 13:04:17 +0000 (17:04 +0400)]
Fixed bug #66251 (Constants get statically bound at compile time when Optimized)

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Dmitry Stogov [Tue, 10 Dec 2013 12:08:46 +0000 (16:08 +0400)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  Revered func_get_args() changes, because they were not completly transparent and broke some tricky PHP code that worked because of luck before php-5.5.6 (see Bug #66107). The changes are going to be kept in PHP-5.6.

11 years agoRevered func_get_args() changes, because they were not completly transparent and...
Dmitry Stogov [Tue, 10 Dec 2013 12:02:59 +0000 (16:02 +0400)]
Revered func_get_args() changes, because they were not completly transparent and broke some tricky PHP code that worked because of luck before php-5.5.6 (see Bug #66107). The changes are going to be kept in PHP-5.6.

11 years agoMerge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6
Dmitry Stogov [Tue, 10 Dec 2013 11:16:30 +0000 (15:16 +0400)]
Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6

* 'PHP-5.6' of git.php.net:php-src:
  Zend: fix overflow handling bug in non-x86 fast_add_function()

11 years agoFixed memory leaks introdused by:
Dmitry Stogov [Tue, 10 Dec 2013 11:13:53 +0000 (15:13 +0400)]
Fixed memory leaks introdused by:
commit 611da37617749c81ab22b1e44a0cc1f294cc493a
Author: Igor Wiedler <igor@wiedler.ch>
Date:   Sat Nov 9 13:48:23 2013 -0500

11 years agoZend: fix overflow handling bug in non-x86 fast_add_function()
Ard Biesheuvel [Tue, 10 Dec 2013 11:07:46 +0000 (12:07 +0100)]
Zend: fix overflow handling bug in non-x86 fast_add_function()

The 'result' argument of fast_add_function() may alias with either
of its operands (or both). Take care not to write to 'result' before
reading op1 and op2.

11 years agoFixed bug #66252 (Problems in AST evaluation invalidating valid parent:: reference...
Dmitry Stogov [Tue, 10 Dec 2013 10:19:17 +0000 (14:19 +0400)]
Fixed bug #66252 (Problems in AST evaluation invalidating valid parent:: reference. Constant expessions have to be evaluated in context of defining class).

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Dmitry Stogov [Tue, 10 Dec 2013 09:03:09 +0000 (13:03 +0400)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  Arguments passed to user function have to be properly allocated on heap

11 years agoArguments passed to user function have to be properly allocated on heap
Dmitry Stogov [Tue, 10 Dec 2013 09:00:45 +0000 (13:00 +0400)]
Arguments passed to user function have to be properly allocated on heap

11 years agocli: don't cast away const in select() timeout argument
Ard Biesheuvel [Mon, 9 Dec 2013 15:54:42 +0000 (16:54 +0100)]
cli: don't cast away const in select() timeout argument

The timeout argument to select() is modified to reflect the time
remaining when the function returns on a non-timeout condition.
Passing a pointer to const data and casting away the const-ness is
asking for trouble, but for some reason, this trouble manifests
itself only on non-x86 architectures [whose implementation of select()
in glibc is different from the one supplied for x86]

Fix this by passing a stack copy of the timeout argument to select()

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Stanislav Malyshev [Sun, 8 Dec 2013 23:53:41 +0000 (15:53 -0800)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  Replace invalid code with a proper #error

11 years agoMerge branch 'PHP-5.4' into PHP-5.5
Stanislav Malyshev [Sun, 8 Dec 2013 23:50:08 +0000 (15:50 -0800)]
Merge branch 'PHP-5.4' into PHP-5.5

* PHP-5.4:
  Replace invalid code with a proper #error

11 years agoReplace invalid code with a proper #error
Lior Kaplan [Fri, 4 Oct 2013 21:31:16 +0000 (23:31 +0200)]
Replace invalid code with a proper #error

This code creates a nasty error as mentioned in bugs #31131, #37062
Patch taken from Debian's PHP package: 044-strtod_arm_fix

11 years agoMerge branch 'PHP-5.4' into PHP-5.5
Adam Harvey [Sun, 8 Dec 2013 03:41:23 +0000 (19:41 -0800)]
Merge branch 'PHP-5.4' into PHP-5.5

* PHP-5.4:
  Switch to using freetype-config for freetype detection.

11 years agoSwitch to using freetype-config for freetype detection.
Adam Harvey [Sun, 8 Dec 2013 03:39:40 +0000 (19:39 -0800)]
Switch to using freetype-config for freetype detection.

This fixes GD compilation against libfreetype 2.5.1 and later after they made
the rather interesting decision to change their include directory layout in a
point release.

The original suggestion in the bug was to use pkg-config, but my inclination is
to use freetype-config instead: we should be able to get the same configuration
information without actually needing pkg-config installed, since pkg-config is
by no means guaranteed to exist on many Unices and distros, whereas
freetype-config should always be present if a libfreetype build environment is
installed. Let's try it out and see what happens.

Fixes bug #64405 (Use freetype-config for determining freetype2 dir(s)).

11 years agoMerge branch 'igorw-use-function' into PHP-5.6
Ferenc Kovacs [Fri, 6 Dec 2013 10:06:41 +0000 (11:06 +0100)]
Merge branch 'igorw-use-function' into PHP-5.6

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Michael Wallner [Fri, 6 Dec 2013 09:39:10 +0000 (10:39 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  BFN

11 years agoBFN
Michael Wallner [Fri, 6 Dec 2013 09:39:02 +0000 (10:39 +0100)]
BFN

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Michael Wallner [Fri, 6 Dec 2013 09:33:47 +0000 (10:33 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  Fixed bug #61645 (fopen and O_NONBLOCK)
  fix possibly uninitialized value

11 years agoMerge branch 'PHP-5.4' into PHP-5.5
Michael Wallner [Fri, 6 Dec 2013 09:33:10 +0000 (10:33 +0100)]
Merge branch 'PHP-5.4' into PHP-5.5

* PHP-5.4:
  Fixed bug #61645 (fopen and O_NONBLOCK)
  fix possibly uninitialized value

11 years agoFixed bug #61645 (fopen and O_NONBLOCK)
Michael Wallner [Fri, 6 Dec 2013 09:29:24 +0000 (10:29 +0100)]
Fixed bug #61645 (fopen and O_NONBLOCK)

if a mode like "rn" was passed to fopen(), then
php_stream_parse_fopen_modes() would assign O_WRONLY to
flags, because O_NONBLOCK tainted flags for the r/w/+ check

11 years agofix possibly uninitialized value
Michael Wallner [Fri, 6 Dec 2013 09:27:33 +0000 (10:27 +0100)]
fix possibly uninitialized value

11 years agoMerge branch 'use-function' of git://github.com/igorw/php-src into igorw-use-function
Ferenc Kovacs [Fri, 6 Dec 2013 04:39:49 +0000 (05:39 +0100)]
Merge branch 'use-function' of git://github.com/igorw/php-src into igorw-use-function

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Sara Golemon [Wed, 4 Dec 2013 15:50:45 +0000 (07:50 -0800)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  Use 'user@example.com' rather than 'user@company.com' in tests

11 years agoUse 'user@example.com' rather than 'user@company.com' in tests
Sara Golemon [Wed, 4 Dec 2013 15:49:16 +0000 (07:49 -0800)]
Use 'user@example.com' rather than 'user@company.com' in tests

Using some arbitrary 3rd party's domain name is clowny,
even if it never tries to send.

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Andrey Hristov [Wed, 4 Dec 2013 10:39:11 +0000 (12:39 +0200)]
Merge branch 'PHP-5.5' into PHP-5.6

11 years agoMerge branch 'PHP-5.4' into PHP-5.5
Andrey Hristov [Wed, 4 Dec 2013 10:07:18 +0000 (12:07 +0200)]
Merge branch 'PHP-5.4' into PHP-5.5

11 years agoFix loss of precision
Andrey Hristov [Wed, 4 Dec 2013 10:06:59 +0000 (12:06 +0200)]
Fix loss of precision

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Sara Golemon [Wed, 4 Dec 2013 02:21:12 +0000 (18:21 -0800)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  Fix php_module_startup() when loading more than one additional module

11 years agoFix php_module_startup() when loading more than one additional module
Sara Golemon [Wed, 4 Dec 2013 00:36:07 +0000 (16:36 -0800)]
Fix php_module_startup() when loading more than one additional module

Dereferencing addition_modules within php_module_startup would
point to a vector entirely on the stack (which is of course, wrong).

Use a specialized helper to keep BC with the current php_module_startup()
calling semantics.

Fixes 63159
Thanks to @a-j-k

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Adam Harvey [Tue, 3 Dec 2013 22:52:35 +0000 (14:52 -0800)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  Remove 128.0.0.0/16 and 191.255.0.0/16 from the reserved list.

11 years agoMerge branch 'PHP-5.4' into PHP-5.5
Adam Harvey [Tue, 3 Dec 2013 22:51:03 +0000 (14:51 -0800)]
Merge branch 'PHP-5.4' into PHP-5.5

* PHP-5.4:
  Remove 128.0.0.0/16 and 191.255.0.0/16 from the reserved list.

11 years agoRemove 128.0.0.0/16 and 191.255.0.0/16 from the reserved list.
Adam Harvey [Tue, 3 Dec 2013 22:46:15 +0000 (14:46 -0800)]
Remove 128.0.0.0/16 and 191.255.0.0/16 from the reserved list.

These were returned to the general allocation pool by RFC 3330, and hence
shouldn't cause an IP address validation failure due to being reserved. At
least 128.0.0.0/16 is in use on the public Internet today.

Fixes bug #66229 (128.0.0.0/16 isn't reserved any longer).

11 years agoSupport gmp_remroot() on GMP 4.1
Nikita Popov [Mon, 2 Dec 2013 19:10:08 +0000 (20:10 +0100)]
Support gmp_remroot() on GMP 4.1

11 years agoAdded note about const scalar exprs in UPGRADING file
Bob Weinand [Mon, 2 Dec 2013 17:39:01 +0000 (18:39 +0100)]
Added note about const scalar exprs in UPGRADING file

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Michael Wallner [Mon, 2 Dec 2013 16:02:13 +0000 (17:02 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  BFN
  Fix bug #65196

11 years agoBFN
Michael Wallner [Mon, 2 Dec 2013 16:02:01 +0000 (17:02 +0100)]
BFN

11 years agoMerge branch 'PHP-5.4' into PHP-5.5
Michael Wallner [Mon, 2 Dec 2013 16:01:25 +0000 (17:01 +0100)]
Merge branch 'PHP-5.4' into PHP-5.5

* PHP-5.4:
  Fix bug #65196

11 years agoFix bug #65196
Michael Wallner [Mon, 2 Dec 2013 15:58:34 +0000 (16:58 +0100)]
Fix bug #65196

Passing DOMDocumentFragment to DOMDocument::saveHTML()
produces invalid markup, because a DocumentFragment is just a container
for child nodes and not a real node itself.

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Michael Wallner [Mon, 2 Dec 2013 11:15:27 +0000 (12:15 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  BFN
  fix bug #49634x

11 years agoBFN
Michael Wallner [Mon, 2 Dec 2013 11:14:26 +0000 (12:14 +0100)]
BFN

11 years agoMerge branch 'PHP-5.4' into PHP-5.5
Michael Wallner [Mon, 2 Dec 2013 11:10:59 +0000 (12:10 +0100)]
Merge branch 'PHP-5.4' into PHP-5.5

* PHP-5.4:
  fix bug #49634x

11 years agofix bug #49634x
Michael Wallner [Mon, 2 Dec 2013 11:08:22 +0000 (12:08 +0100)]
fix bug #49634x

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Dmitry Stogov [Mon, 2 Dec 2013 08:05:29 +0000 (12:05 +0400)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  Fixed tests

11 years agoMerge branch 'PHP-5.4' into PHP-5.5
Dmitry Stogov [Mon, 2 Dec 2013 08:04:07 +0000 (12:04 +0400)]
Merge branch 'PHP-5.4' into PHP-5.5

* PHP-5.4:
  Fixed tests

11 years agoFixed tests
Dmitry Stogov [Mon, 2 Dec 2013 07:53:35 +0000 (11:53 +0400)]
Fixed tests

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Dmitry Stogov [Mon, 2 Dec 2013 07:03:17 +0000 (11:03 +0400)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  Fixed ability to build non-specialized GOTO VM

11 years agoMerge branch 'PHP-5.4' into PHP-5.5
Dmitry Stogov [Mon, 2 Dec 2013 07:02:40 +0000 (11:02 +0400)]
Merge branch 'PHP-5.4' into PHP-5.5

* PHP-5.4:
  Fixed ability to build non-specialized GOTO VM

Conflicts:
Zend/zend_vm_gen.php

11 years agoFixed ability to build non-specialized GOTO VM
Dmitry Stogov [Mon, 2 Dec 2013 06:59:32 +0000 (10:59 +0400)]
Fixed ability to build non-specialized GOTO VM

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Nikita Popov [Sun, 1 Dec 2013 12:45:22 +0000 (13:45 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

11 years agoFix bug #65764
Nikita Popov [Sun, 1 Dec 2013 12:37:56 +0000 (13:37 +0100)]
Fix bug #65764

I'm not exactly sure whether this is the right way to fix it. The
question is whether Generator::throw() on a newborn generator (i.e.
a generator that is not yet at yield expression) should first advance to
the first yield and throw the exception there or whether it should
instead throw the exception in the caller's context.

The old behavior was to throw it at the start of the function (i.e.
the very first opcode), which causes issues like the one in #65764.
Effectively it's impossible to properly handle the exceptions in this
case.

For now I choose the variant where the generator advances to the
first yield before throwing, as that's consistent with how all other
methods on the Generator object currently behave. This does not
necessarily match the behavior in other languages, e.g. Python would throw
the exception in the caller's context. But then our send() method already
has this kind of deviation, so it stays internally consistent at least.

11 years ago- BFN
Felipe Pena [Sat, 30 Nov 2013 14:05:51 +0000 (12:05 -0200)]
- BFN

11 years agoMerge branch 'PHP-5.5' of git.php.net:/php-src into PHP-5.5
Felipe Pena [Sat, 30 Nov 2013 13:44:08 +0000 (11:44 -0200)]
Merge branch 'PHP-5.5' of git.php.net:/php-src into PHP-5.5

11 years agoMerge branch 'PHP-5.6' of git.php.net:/php-src into PHP-5.6
Felipe Pena [Sat, 30 Nov 2013 13:43:51 +0000 (11:43 -0200)]
Merge branch 'PHP-5.6' of git.php.net:/php-src into PHP-5.6

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Felipe Pena [Sat, 30 Nov 2013 13:40:42 +0000 (11:40 -0200)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  - Fixed bug #65923 (ext/socket assumes AI_V4MAPPED is defined)

11 years ago- Fixed bug #65923 (ext/socket assumes AI_V4MAPPED is defined)
Felipe Pena [Sat, 30 Nov 2013 13:39:57 +0000 (11:39 -0200)]
- Fixed bug #65923 (ext/socket assumes AI_V4MAPPED is defined)

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Nikita Popov [Sat, 30 Nov 2013 12:40:17 +0000 (13:40 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

11 years agoCleanup generator closing code a bit
Nikita Popov [Sat, 30 Nov 2013 12:35:33 +0000 (13:35 +0100)]
Cleanup generator closing code a bit

All code dealing with unfinished execution cleanup is now in a separate
function (previously most of it was run even when execution was properly
finished.

Furthermore some code dealing with unclean shutdowns has been removed,
which is no longer necessary, because we no longer try to clean up in
this case.

11 years agoFixed bug #66041: list() fails to unpack yielded ArrayAccess object
Nikita Popov [Sat, 30 Nov 2013 12:05:40 +0000 (13:05 +0100)]
Fixed bug #66041: list() fails to unpack yielded ArrayAccess object

Yield return values now use IS_VAR rather than IS_TMP_VAR. This
fixes the issue with list() and should also be faster as it avoids
doing a zval copy.

11 years agoFixed unused value compiler warning
ArunSK [Fri, 29 Nov 2013 22:54:17 +0000 (23:54 +0100)]
Fixed unused value compiler warning

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Nikita Popov [Fri, 29 Nov 2013 22:31:13 +0000 (23:31 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

11 years agoFixed bug #65768: DateTimeImmutable::diff does not work
nikita2206 [Tue, 29 Oct 2013 15:40:17 +0000 (19:40 +0400)]
Fixed bug #65768: DateTimeImmutable::diff does not work

This commit also prevents user classes from directly implementing
DateTimeInterface, because ext/date relies on classes implementing
it to support certain internal structures.

11 years agoMerge branch 'PHP-5.5' into PHP-5.6
Dmitry Stogov [Fri, 29 Nov 2013 08:55:11 +0000 (12:55 +0400)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  Added validation of class names in the autoload process

Conflicts:
NEWS

11 years agoMerge branch 'PHP-5.4' into PHP-5.5
Dmitry Stogov [Fri, 29 Nov 2013 08:54:22 +0000 (12:54 +0400)]
Merge branch 'PHP-5.4' into PHP-5.5

* PHP-5.4:
  Added validation of class names in the autoload process

11 years agoAdded validation of class names in the autoload process
Dmitry Stogov [Fri, 29 Nov 2013 08:53:02 +0000 (12:53 +0400)]
Added validation of class names in the autoload process

11 years agoClean up GMP arginfos
Nikita Popov [Thu, 28 Nov 2013 23:00:41 +0000 (00:00 +0100)]
Clean up GMP arginfos

Removed duplicate arginfos, specified number of required args
everywhere and removed weird pass-by-ref arguments.

11 years agoAdd gmp_root() and gmp_rootrem() functions
Nikita Popov [Thu, 28 Nov 2013 22:42:23 +0000 (23:42 +0100)]
Add gmp_root() and gmp_rootrem() functions

11 years agoUse class handlers for GMP serialization
Nikita Popov [Sat, 23 Nov 2013 23:43:12 +0000 (00:43 +0100)]
Use class handlers for GMP serialization

A bit faster and less boilerplate

11 years agoRemove duplicate / commented code in GMP
Nikita Popov [Sat, 23 Nov 2013 11:54:20 +0000 (12:54 +0100)]
Remove duplicate / commented code in GMP

11 years agoMerge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6
Dmitry Stogov [Thu, 28 Nov 2013 21:00:14 +0000 (01:00 +0400)]
Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6

* 'PHP-5.6' of git.php.net:php-src:
  Fixed bug #65199 (Wrong Day of Week) and fixed bug #63391 (Incorrect/inconsistent day of week prior to the year 1600)
  Marking those two as XFAIL for now.
  Fixed a few DST changeover issues.
  Move add/sub to timelib.
  Fix backwards transition diffs.
  Split up tests into their different categories.
  Group those tests a bit better, as some of the bd ones wanted a "ST" feature that doesn't exist yet.
  Fixed forward transitions in diffs.
  Always reset those parameters.
  Fixed "Forward Transition" construction of DateTime objects.

11 years agoAvoid interned hash key duplication and hash key length recaclulation
Dmitry Stogov [Thu, 28 Nov 2013 20:57:49 +0000 (00:57 +0400)]
Avoid interned hash key duplication and hash key length recaclulation