]> granicus.if.org Git - php/log
php
4 years agoRename zend_jit_var_may_be_modified_indirectly() into zend_jit_var_may_alias()
Dmitry Stogov [Thu, 27 Aug 2020 07:31:39 +0000 (10:31 +0300)]
Rename zend_jit_var_may_be_modified_indirectly() into zend_jit_var_may_alias()

4 years agoCheck reference guard once
Dmitry Stogov [Wed, 26 Aug 2020 21:40:55 +0000 (00:40 +0300)]
Check reference guard once

4 years agoUse "movaps" instead of "movsd" to copy the whole %xmm register.
Dmitry Stogov [Wed, 26 Aug 2020 18:13:55 +0000 (21:13 +0300)]
Use "movaps" instead of "movsd" to copy the whole %xmm register.

4 years agoFixed reference-counting
Dmitry Stogov [Wed, 26 Aug 2020 15:56:54 +0000 (18:56 +0300)]
Fixed reference-counting

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 26 Aug 2020 14:12:56 +0000 (16:12 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Property handle read_property exception in fetch_property_address

4 years agoProperty handle read_property exception in fetch_property_address
Nikita Popov [Wed, 26 Aug 2020 14:10:29 +0000 (16:10 +0200)]
Property handle read_property exception in fetch_property_address

Otherwise we leak (and corrupt uninitialized_zval).

4 years agoMerge branch 'PHP-7.4' into master
Christoph M. Becker [Wed, 26 Aug 2020 13:43:43 +0000 (15:43 +0200)]
Merge branch 'PHP-7.4' into master

* PHP-7.4:
  Fix com_safearray_proxy related memory management issues

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Wed, 26 Aug 2020 13:40:57 +0000 (15:40 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix com_safearray_proxy related memory management issues

4 years agoFix com_safearray_proxy related memory management issues
Christoph M. Becker [Wed, 26 Aug 2020 13:31:26 +0000 (15:31 +0200)]
Fix com_safearray_proxy related memory management issues

4 years agoLowercase method name in zend_call_method()
Nikita Popov [Wed, 26 Aug 2020 13:19:23 +0000 (15:19 +0200)]
Lowercase method name in zend_call_method()

4 years agoFix pass by ref error for named params
Nikita Popov [Wed, 26 Aug 2020 13:09:42 +0000 (15:09 +0200)]
Fix pass by ref error for named params

4 years agoMerge branch 'PHP-7.4' into master
Christoph M. Becker [Wed, 26 Aug 2020 13:02:34 +0000 (15:02 +0200)]
Merge branch 'PHP-7.4' into master

* PHP-7.4:
  Separate COM::__construct()s $server_name array

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Wed, 26 Aug 2020 13:01:22 +0000 (15:01 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Separate COM::__construct()s $server_name array

4 years agoSeparate COM::__construct()s $server_name array
Christoph M. Becker [Tue, 25 Aug 2020 11:48:50 +0000 (13:48 +0200)]
Separate COM::__construct()s $server_name array

This may otherwise be modified.

4 years agoMerge branch 'PHP-7.4' into master
Christoph M. Becker [Wed, 26 Aug 2020 12:55:34 +0000 (14:55 +0200)]
Merge branch 'PHP-7.4' into master

* PHP-7.4:
  Fix #64130: COM obj parameters passed by reference are not updated

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Wed, 26 Aug 2020 12:52:09 +0000 (14:52 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #64130: COM obj parameters passed by reference are not updated

4 years agoFix #64130: COM obj parameters passed by reference are not updated
Christoph M. Becker [Wed, 26 Aug 2020 12:45:13 +0000 (14:45 +0200)]
Fix #64130: COM obj parameters passed by reference are not updated

`ITypeInfo_GetIDsOfNames()` is supposed to fail with `E_NOTIMPL` for
out-of-process servers, thus we should not remove the already available
typeinfo of the object in this case.

We also properly free the `byref_vals`.

4 years agoDrop various unused macros/APIs
George Peter Banyard [Wed, 26 Aug 2020 10:57:24 +0000 (12:57 +0200)]
Drop various unused macros/APIs

Also convert_libmagic_pattern() to return a zend_string*

Closes GH-6029

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 26 Aug 2020 10:32:22 +0000 (12:32 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix file name clash in test

4 years agoFix file name clash in test
Nikita Popov [Wed, 26 Aug 2020 10:32:06 +0000 (12:32 +0200)]
Fix file name clash in test

4 years agoFix memory leak on unknown named param in iterator unpack
Nikita Popov [Wed, 26 Aug 2020 10:19:17 +0000 (12:19 +0200)]
Fix memory leak on unknown named param in iterator unpack

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 26 Aug 2020 10:12:23 +0000 (12:12 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Avoid socket path clash in test

4 years agoAvoid socket path clash in test
Nikita Popov [Wed, 26 Aug 2020 10:11:22 +0000 (12:11 +0200)]
Avoid socket path clash in test

4 years agoImproved JIT for FETCH_DIM_R/IS and ISSET_DIM_OBJ
Dmitry Stogov [Wed, 26 Aug 2020 10:09:16 +0000 (13:09 +0300)]
Improved JIT for FETCH_DIM_R/IS and ISSET_DIM_OBJ

4 years agoFix passing of undef var to named arg
Nikita Popov [Wed, 26 Aug 2020 09:52:45 +0000 (11:52 +0200)]
Fix passing of undef var to named arg

This needs to use the previously computed argument target.

4 years agoFix memory leak on unknown named param
Nikita Popov [Wed, 26 Aug 2020 09:44:15 +0000 (11:44 +0200)]
Fix memory leak on unknown named param

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 26 Aug 2020 09:32:56 +0000 (11:32 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix memory leak when yielding from non-iterable

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Wed, 26 Aug 2020 09:32:31 +0000 (11:32 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix memory leak when yielding from non-iterable

4 years agoFix memory leak when yielding from non-iterable
Nikita Popov [Wed, 26 Aug 2020 09:32:01 +0000 (11:32 +0200)]
Fix memory leak when yielding from non-iterable

4 years agoFix over-eager named params optimization
Nikita Popov [Wed, 26 Aug 2020 09:01:15 +0000 (11:01 +0200)]
Fix over-eager named params optimization

We can't relax a named param to a positional param if we encountered
any unknown parameters in the meantime.

4 years agoPrevent ResourceBundle double-construction
Nikita Popov [Wed, 26 Aug 2020 08:20:31 +0000 (10:20 +0200)]
Prevent ResourceBundle double-construction

4 years agoPrevent double-construction of NumberFormatter
Nikita Popov [Wed, 26 Aug 2020 08:16:32 +0000 (10:16 +0200)]
Prevent double-construction of NumberFormatter

4 years agoPrevent double-construction of IntlGregorianCalendar
Nikita Popov [Wed, 26 Aug 2020 08:10:41 +0000 (10:10 +0200)]
Prevent double-construction of IntlGregorianCalendar

4 years agoPrevent double-construction of IntlRuleBasedBreakIterator
Nikita Popov [Wed, 26 Aug 2020 08:03:11 +0000 (10:03 +0200)]
Prevent double-construction of IntlRuleBasedBreakIterator

4 years agoUse guard to check if array is packed or hash
Dmitry Stogov [Tue, 25 Aug 2020 23:34:31 +0000 (02:34 +0300)]
Use guard to check if array is packed or hash

4 years agoPrevent negative array index access
Dmitry Stogov [Tue, 25 Aug 2020 22:07:34 +0000 (01:07 +0300)]
Prevent negative array index access

4 years agoMerge branch 'jit_match'
Dmitry Stogov [Tue, 25 Aug 2020 19:33:52 +0000 (22:33 +0300)]
Merge branch 'jit_match'

* jit_match:
  Support for CASE_STRICT
  JIT for MATCH and CASE_STRICT instructions

4 years agoAvoid priniting "array [long, string] of"
Dmitry Stogov [Tue, 25 Aug 2020 18:38:23 +0000 (21:38 +0300)]
Avoid priniting "array [long, string] of"

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Tue, 25 Aug 2020 18:26:17 +0000 (20:26 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Don't enable --with-mm in CI

4 years agoDon't enable --with-mm in CI
Nikita Popov [Tue, 25 Aug 2020 18:25:07 +0000 (20:25 +0200)]
Don't enable --with-mm in CI

Turns out this has a large negative effect on startup time,
making tests much slower.

4 years agoRecord information about packed arrays
Dmitry Stogov [Tue, 25 Aug 2020 16:39:42 +0000 (19:39 +0300)]
Record information about packed arrays

4 years agoPromote warnings to exceptions in ext/pcre
Máté Kocsis [Tue, 25 Aug 2020 16:06:07 +0000 (18:06 +0200)]
Promote warnings to exceptions in ext/pcre

Closes GH-6006

4 years agoInfer information about packed/hash arrays and use it for JIT
Dmitry Stogov [Tue, 25 Aug 2020 15:28:23 +0000 (18:28 +0300)]
Infer information about packed/hash arrays and use it for JIT

4 years agoEnsure RuleBasedBreakIterator constructor throws on failure
Nikita Popov [Tue, 25 Aug 2020 13:28:58 +0000 (15:28 +0200)]
Ensure RuleBasedBreakIterator constructor throws on failure

Constructors must throw on failure indepdendent of the configured
intl error mode.

4 years agoPromote warnings to exceptions in ext/simplexml
Máté Kocsis [Tue, 18 Aug 2020 17:20:56 +0000 (19:20 +0200)]
Promote warnings to exceptions in ext/simplexml

Closes GH-6011

Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>
4 years agoFixed JIT failure on "$a = []; $a[1] += 2;"
Dmitry Stogov [Tue, 25 Aug 2020 13:08:33 +0000 (16:08 +0300)]
Fixed JIT failure on "$a = []; $a[1] += 2;"

4 years agoMerge branch 'PHP-7.4' into master
Christoph M. Becker [Tue, 25 Aug 2020 11:15:06 +0000 (13:15 +0200)]
Merge branch 'PHP-7.4' into master

* PHP-7.4:
  Avoid double-free

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Tue, 25 Aug 2020 11:12:41 +0000 (13:12 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Avoid double-free

4 years agoClean up BreakIterator create_object handler
Nikita Popov [Fri, 14 Aug 2020 14:56:25 +0000 (16:56 +0200)]
Clean up BreakIterator create_object handler

Use standard zend_object_alloc() function and fix the
object_init_properties() call (which works out okay because there
are no properties).

4 years agoFix XMLWriter::writeDtdEntity() stub
Nikita Popov [Tue, 25 Aug 2020 11:09:38 +0000 (13:09 +0200)]
Fix XMLWriter::writeDtdEntity() stub

$isparam is optional.

4 years agoAvoid double-free
Christoph M. Becker [Tue, 25 Aug 2020 11:07:29 +0000 (13:07 +0200)]
Avoid double-free

As of commit b2e3fd1[1] the `authid.User` is no longer newly allocated,
so we must not free it.

[1] <http://git.php.net/?p=php-src.git;a=commit;h=b2e3fd1e691b1dc82aaaf4150461db97bd5acf4a>

4 years agoPromote warnings to exceptions in ext/shmop
Máté Kocsis [Thu, 13 Aug 2020 22:32:36 +0000 (00:32 +0200)]
Promote warnings to exceptions in ext/shmop

Closes GH-5986

4 years agoPromote warnings to exceptions in ext/pcntl
Máté Kocsis [Mon, 17 Aug 2020 20:37:20 +0000 (22:37 +0200)]
Promote warnings to exceptions in ext/pcntl

Closes GH-6004

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Tue, 25 Aug 2020 10:36:06 +0000 (12:36 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Remove bogus REGISTER_LONG_CONSTANT

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Tue, 25 Aug 2020 10:35:54 +0000 (12:35 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Remove bogus REGISTER_LONG_CONSTANT

4 years agoRemove bogus REGISTER_LONG_CONSTANT
Nikita Popov [Tue, 25 Aug 2020 10:34:32 +0000 (12:34 +0200)]
Remove bogus REGISTER_LONG_CONSTANT

This shouldn't be in this function, probably a copy/paste mistake...

4 years agoRemove useless same_zval function
twosee [Tue, 25 Aug 2020 10:02:38 +0000 (18:02 +0800)]
Remove useless same_zval function

Closes GH-6039.

4 years agoPromote warnings to exceptions in ext/phar
Máté Kocsis [Tue, 18 Aug 2020 11:38:18 +0000 (13:38 +0200)]
Promote warnings to exceptions in ext/phar

Closes GH-6008

4 years agoPromote warnings to exceptions in ext/xmlreader
Máté Kocsis [Wed, 19 Aug 2020 20:35:22 +0000 (22:35 +0200)]
Promote warnings to exceptions in ext/xmlreader

Closes GH-6021

4 years agoDon't return temporary from SXE write_property handler
Nikita Popov [Tue, 25 Aug 2020 09:27:58 +0000 (11:27 +0200)]
Don't return temporary from SXE write_property handler

Return the original value. If we don't return the original value,
we need to own the zval, which we don't.

For clarity also switch things to work on a zend_string* value
instead of a zval*.

4 years agoSimplify change_node_zval implementation
Nikita Popov [Tue, 25 Aug 2020 09:01:22 +0000 (11:01 +0200)]
Simplify change_node_zval implementation

At this point, the value has already been converted into a string.

4 years agoMove AVOID_REFCOUNTING type info flag into a separate bit
Dmitry Stogov [Tue, 25 Aug 2020 08:37:30 +0000 (11:37 +0300)]
Move AVOID_REFCOUNTING type info flag into a separate bit

4 years agoSupport for CASE_STRICT
Dmitry Stogov [Mon, 24 Aug 2020 13:47:20 +0000 (16:47 +0300)]
Support for CASE_STRICT

4 years agoJIT for MATCH and CASE_STRICT instructions
Dmitry Stogov [Mon, 24 Aug 2020 12:22:52 +0000 (15:22 +0300)]
JIT for MATCH and CASE_STRICT instructions

4 years agoMerge branch 'PHP-7.4' into master
Christoph M. Becker [Mon, 24 Aug 2020 15:38:50 +0000 (17:38 +0200)]
Merge branch 'PHP-7.4' into master

* PHP-7.4:
  Fix potential integer overflow detected by oss-fuzz

4 years agoPromote warning to exception in ext/enchant
Máté Kocsis [Wed, 19 Aug 2020 20:43:07 +0000 (22:43 +0200)]
Promote warning to exception in ext/enchant

Closes GH-6022

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Mon, 24 Aug 2020 15:36:50 +0000 (17:36 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix potential integer overflow detected by oss-fuzz

4 years agoFix potential integer overflow detected by oss-fuzz
Christoph M. Becker [Mon, 24 Aug 2020 15:32:06 +0000 (17:32 +0200)]
Fix potential integer overflow detected by oss-fuzz

We port the respective fix from upstream[1].

[1] <https://github.com/libgd/libgd/commit/9ed642764cf0b4585d135eb738812a43265cb2d3>

4 years agoPromote warning to exception in ext/posix
Máté Kocsis [Tue, 18 Aug 2020 12:24:46 +0000 (14:24 +0200)]
Promote warning to exception in ext/posix

Closes GH-6009

4 years agoPromote warnings to exceptions in ext/filter
Máté Kocsis [Mon, 10 Aug 2020 17:06:55 +0000 (19:06 +0200)]
Promote warnings to exceptions in ext/filter

Closes GH-5970

4 years agoDrop a spurious zend_string_release
Nikita Popov [Mon, 24 Aug 2020 15:30:31 +0000 (17:30 +0200)]
Drop a spurious zend_string_release

This should have been dropped in the refactoring.

4 years agoClean up setlocale implementation
Nikita Popov [Mon, 24 Aug 2020 15:09:33 +0000 (17:09 +0200)]
Clean up setlocale implementation

Factor out the core logic into a separate function and drop the
"clever" code that combines iteration through variadic arguments
and arrays.

This fixes bug #79829 as a side effect.

4 years agoRemove php_my_setlocale workaround
Nikita Popov [Mon, 24 Aug 2020 14:49:37 +0000 (16:49 +0200)]
Remove php_my_setlocale workaround

This works around a macro-expansion issue that is no longer
relevant in PHP 8.

4 years agoFix refcounting for the named params case as well
Nikita Popov [Mon, 24 Aug 2020 14:30:49 +0000 (16:30 +0200)]
Fix refcounting for the named params case as well

Adjust the test case to pass a refcounted value and to also check
the named params case.

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Mon, 24 Aug 2020 14:23:33 +0000 (16:23 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix refcounting

4 years agoFix refcounting
Nikita Popov [Mon, 24 Aug 2020 14:23:19 +0000 (16:23 +0200)]
Fix refcounting

4 years agoCheck for duplicate names in gen_stub.php
Tyson Andre [Sun, 23 Aug 2020 14:46:40 +0000 (10:46 -0400)]
Check for duplicate names in gen_stub.php

With named arguments in php 8.0, it's important that php's modules
or PECL extensions using gen_stub.php don't generate functions
with duplicate names.

Warn if a parameter name is repeated,
even if the last occurrence is a variadic parameter

Closes GH-6035

4 years agoMerge branch 'PHP-7.4' into master
Christoph M. Becker [Mon, 24 Aug 2020 13:02:15 +0000 (15:02 +0200)]
Merge branch 'PHP-7.4' into master

* PHP-7.4:
  Fix #79979: passing value to by-ref param via CUFA crashes

4 years agoFix #79979: passing value to by-ref param via CUFA crashes
Christoph M. Becker [Mon, 24 Aug 2020 09:47:31 +0000 (11:47 +0200)]
Fix #79979: passing value to by-ref param via CUFA crashes

If a by-val send is not allowed, we must not do so.  Instead we wrap
the value in a temporary reference.

Closes GH-6000

4 years agoFix: Gracefully handle empty user input in run-tests.php
Berbe [Wed, 19 Aug 2020 00:44:53 +0000 (02:44 +0200)]
Fix: Gracefully handle empty user input in run-tests.php

Closes GH-6016.

4 years agofurther network libraries detection for Haiku system.
David Carlier [Sun, 16 Aug 2020 17:30:24 +0000 (17:30 +0000)]
further network libraries detection for Haiku system.

Closes GH-5997.

4 years agoMerge branch 'PHP-7.4' into master
Christoph M. Becker [Mon, 24 Aug 2020 09:10:09 +0000 (11:10 +0200)]
Merge branch 'PHP-7.4' into master

* PHP-7.4:
  Fix #79986: str_ireplace bug with diacritics characters

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Mon, 24 Aug 2020 09:09:21 +0000 (11:09 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #79986: str_ireplace bug with diacritics characters

4 years agoFix #79986: str_ireplace bug with diacritics characters
Christoph M. Becker [Tue, 18 Aug 2020 11:24:17 +0000 (13:24 +0200)]
Fix #79986: str_ireplace bug with diacritics characters

`tolower()` returns an `int`, so we must not convert to `char` which
may be `signed` and as such may be subject to overflow (actually,
implementation defined behavior).

Closes GH-6007

4 years agoMerge branch 'PHP-7.4' into master
Christoph M. Becker [Mon, 24 Aug 2020 09:04:27 +0000 (11:04 +0200)]
Merge branch 'PHP-7.4' into master

* PHP-7.4:
  Fix #80002: calc free space for new interned string is wrong

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Mon, 24 Aug 2020 09:03:42 +0000 (11:03 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #80002: calc free space for new interned string is wrong

4 years agoFix #80002: calc free space for new interned string is wrong
Christoph M. Becker [Thu, 20 Aug 2020 09:20:03 +0000 (11:20 +0200)]
Fix #80002: calc free space for new interned string is wrong

We need to calculate the free size in bytes.

Patch contributed by t-matsuno.

Closes GH-6024

4 years agoCheck variadic parameter for type and duplicate name
Nikita Popov [Mon, 24 Aug 2020 08:15:57 +0000 (10:15 +0200)]
Check variadic parameter for type and duplicate name

Set HAS_TYPE_HINTS flag if the variadic parameter is types as well,
and make sure it has a distinct name. This was previously missed,
because the variadic parameter is not part of num_args.

4 years agosapi/fpm/config.m4: check for libapparmor's aa_change_profile()
Kees Cook [Sun, 23 Aug 2020 15:39:53 +0000 (08:39 -0700)]
sapi/fpm/config.m4: check for libapparmor's aa_change_profile()

The fpm code actually uses aa_change_profile(), not change_hat(). Test
for the correct function. (libapparmor always has both, so this is just
a correctness fix.)

Closes GH-6037.

4 years agoFixed use-after-free introduced by aed1f785159e7c9e81da8f2e2e06df9a6ee0d809
Dmitry Stogov [Mon, 24 Aug 2020 06:50:54 +0000 (09:50 +0300)]
Fixed use-after-free introduced by aed1f785159e7c9e81da8f2e2e06df9a6ee0d809

4 years agoRemove custom hacks from gen_stub.php after PHP-Parser upgrade
Máté Kocsis [Sun, 23 Aug 2020 19:17:05 +0000 (21:17 +0200)]
Remove custom hacks from gen_stub.php after PHP-Parser upgrade

4 years agoUpdate PHP-Parser from 4.3.0 to 4.9.0
Tyson Andre [Sun, 23 Aug 2020 15:12:44 +0000 (11:12 -0400)]
Update PHP-Parser from 4.3.0 to 4.9.0

PHP-Parser 4.3.0 failed to recognize that the `match` keyword could be
used as a class constant name.
4.9.0 also adds support for keywords in namespaced names.
See https://github.com/nikic/PHP-Parser/releases

So forcing regeneration of spl_iterators.stub.php failed.

PECL extensions using gen_stub.php would also be affected
by the same issue.

```
ext/spl/spl_iterators.stub.php
    public function __construct(Iterator $iterator, string $regex,
    int $mode = self::MATCH, int $flags = 0, int $preg_flags = 0) {}
```

Testing: I successfully regenerated stubs by setting forceRegeneration to true
and running `touch **/*.stub.php; make`.
The stubs did not change, as expected.

Closes GH-6036

4 years agoFix #55847: DOTNET .NET 4.0 GAC new location
Christoph M. Becker [Thu, 6 Aug 2020 16:57:18 +0000 (18:57 +0200)]
Fix #55847: DOTNET .NET 4.0 GAC new location

If we do not specify the exact version of the .NET framework to use,
the default CLR is loaded, which is typically CLR 2, which is very old.
Therefore, we introduce a `PHP_INI_SYSTEM` setting, which allows users
to choose the desired .NET framework version.  The value of the setting
are the first three parts of the framework's version number, separated
by dots, and prefixed with "v", e.g. "v4.0.30319".  If the value of the
INI setting is `NULL` (the default) or an empty string, the default CLR
is used.

Internally, we switch from the most generic `CoCreateInstance()` to
`CorBindToRuntime()` which is implemented in mscoree.dll.  To avoid the
hard dependency to that library, we load dynamically.

So this fix is supposed to be fully backwards compatible.

Closes GH-5949

4 years agoMerge branch 'PHP-7.4' into master
Christoph M. Becker [Sat, 22 Aug 2020 10:33:35 +0000 (12:33 +0200)]
Merge branch 'PHP-7.4' into master

* PHP-7.4:
  Fix #80007: Potential type confusion in unixtojd() parameter parsing

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Sat, 22 Aug 2020 10:30:33 +0000 (12:30 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #80007: Potential type confusion in unixtojd() parameter parsing

4 years agoFix #80007: Potential type confusion in unixtojd() parameter parsing
Andy Postnikov [Fri, 21 Aug 2020 23:44:48 +0000 (02:44 +0300)]
Fix #80007: Potential type confusion in unixtojd() parameter parsing

Also it fixes test on 32-bit armv7 and x86
- Test unixtojd() function : error conditions [ext/calendar/tests/unixtojd_error1.phpt]

Closes GH-6033

4 years agoSquash a Linux compile warning
Christopher Jones [Sat, 22 Aug 2020 01:37:23 +0000 (11:37 +1000)]
Squash a Linux compile warning

4 years agofileinfo build fix proposal for haiku.
David Carlier [Thu, 13 Aug 2020 09:40:24 +0000 (09:40 +0000)]
fileinfo build fix proposal for haiku.

Haiku already defines a unichar type and different than the fileinfo's anyway.

Closed GH-5983

4 years agoMerge branch 'PHP-7.4' into master
Christoph M. Becker [Fri, 21 Aug 2020 13:46:30 +0000 (15:46 +0200)]
Merge branch 'PHP-7.4' into master

* PHP-7.4:
  sqlite3 linkage issue on some systems/package combination fix.

4 years agosqlite3 linkage issue on some systems/package combination fix.
David Carlier [Sat, 15 Aug 2020 13:11:51 +0000 (14:11 +0100)]
sqlite3 linkage issue on some systems/package combination fix.

Checking the version is not enough, the function might be available
but the symbols are not present still.

Closes GH-5993