1
0
mirror of https://github.com/php/php-src.git synced 2026-04-14 03:22:58 +02:00
Commit Graph

49161 Commits

Author SHA1 Message Date
Derick Rethans
a7c942efee Merge branch 'PHP-7.3' 2018-10-12 11:55:48 +01:00
Derick Rethans
9c608bd13f Upgrade timelib to 2018.01RC1, to fix bug #77007 2018-10-12 11:50:36 +01:00
Nikita Popov
0b6063f331 Restore array_key_exists() compatibility for ArrayObject
Doing this by special-casing array_key_exists() for ArrayObject.
2018-10-11 16:10:22 +02:00
Nikita Popov
0697d83383 More straightforward count() on ArrayObject with object
Just writing this out as an explicit loop is both simpler and faster
than going through the entire positioning machinery.
2018-10-11 15:23:05 +02:00
Nikita Popov
5659035ab6 Remove unnecessary get_hash_table return value checks
An ArrayObject always has a valid backing hashtable, this function
can never return NULL.
2018-10-11 15:06:11 +02:00
Nikita Popov
a27f772a46 Remove redundant HASH_OF in mail.c
And use ZEND_HASH_FOREACH_STR_KEY_VAL where the integer key is not
needed.
2018-10-11 13:04:08 +02:00
Nikita Popov
4ca5b35771 Use ARRAY_OR_OBJECT arg in http_build_query
Instead of checking the type manually. Peculiarily the zpp
message does not use "array or object", but that's a general issue.
And I guess it's good that object support is not being advertised.
2018-10-11 13:04:08 +02:00
Nikita Popov
900ee5705f Remove unnecessary HASH_OF uses in mbstring 2018-10-11 13:04:08 +02:00
Nikita Popov
2c7be42853 Drop unnecessary HASH_OF uses in ext/oci8
These only operate on arrays.
2018-10-11 13:04:08 +02:00
Nikita Popov
bfaba83102 Remove HASH_OF uses in ext/filter
It turns out that all of these places ultimately only accept arrays,
not objects, so we can use Z_ARRVAL_P everywhere.

Also add _deref in a few places where the hash lookup result is
directly type-checked.
2018-10-11 13:04:08 +02:00
Nikita Popov
a710ceee62 Remove leftover code dealing with curl wrappers 2018-10-11 12:12:31 +02:00
Nikita Popov
32d7e08286 Remove some redundant uses of HASH_OF
GET etc are always arrays, they cannot be objects. We just need to
check that they are initialized.
2018-10-11 12:01:18 +02:00
Nikita Popov
a8bc3889fd Remember redundant check in filter.c
We already check existence through zend_hash_str_find, no need
to check it twice.
2018-10-11 11:55:16 +02:00
Nikita Popov
76c8d79df6 Merge branch 'PHP-7.3' 2018-10-10 15:00:56 +02:00
Nikita Popov
01948f20b8 Fixed bug #76991
Back up exceptions while the scan-ahead loop, to avoid an early
bail out.
2018-10-10 15:00:18 +02:00
Nikita Popov
4f4d0eccaf Specify timezone in test 2018-10-10 13:28:06 +02:00
Nikita Popov
a5fa51afbb Don't overload get_properties for ArrayObject
Instead overload get_properties_for for a few specific cases such
as array casts. This resolves the issue where ArrayObject
get_properties may violate engine invariants in some cases.
2018-10-10 10:39:10 +02:00
Nikita Popov
1270e5008a Migrate ext/date to get_properties_for where appropriate
This resolves the long-standing issue where var_dump
a DateTime (etc) object makes a number of additional properties
accessible, which may also change other behaviors as a side-effect.
2018-10-10 10:39:10 +02:00
Nikita Popov
7ec8087f80 Introduce get_properties_for() handler
This handler allows getting the object properties for a particular
purpose, such as array casting, serialization, etc.
2018-10-10 10:39:10 +02:00
Christoph M. Becker
f2856da6e8 Merge branch 'PHP-7.3'
* PHP-7.3:
  Fix #30875: xml_parse_into_struct() does not resolve entities
2018-10-09 16:09:46 +02:00
Christoph M. Becker
54e152cb92 Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Fix #30875: xml_parse_into_struct() does not resolve entities
2018-10-09 16:08:55 +02:00
Christoph M. Becker
ebecf569f9 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #30875: xml_parse_into_struct() does not resolve entities
2018-10-09 16:06:56 +02:00
Christoph M. Becker
2845f859c1 Fix #30875: xml_parse_into_struct() does not resolve entities
Setting up an empty default handler is not only useless, but actually
harmful, since internal entity-references are not resolved anymore.
From the libexpat docs[1]:

| Setting the handler with this call has the side effect of
| turning off expansion of references to internally defined general
| entities. Instead these references are passed to the default
| handler.

[1] <https://www.xml.com/pub/1999/09/expat/reference.html#setdefhandler>
2018-10-09 16:04:43 +02:00
Derick Rethans
d21aa93dd4 Merge branch 'PHP-7.3' 2018-10-09 11:38:01 +01:00
Derick Rethans
1eac7c1ea3 Fixed tests 2018-10-09 11:37:53 +01:00
Derick Rethans
e47444d1e1 Added test case for bug #75577 2018-10-09 11:08:40 +01:00
Derick Rethans
09340ea9b9 Fixed bug #75577: DateTime::createFromFormat does not accept 'v' format specifier, by updating timelib to 2018.01alpha2 2018-10-09 11:08:40 +01:00
Derick Rethans
d16e23d8c9 Merge branch 'PHP-7.3' 2018-10-09 11:07:15 +01:00
Derick Rethans
bb2eaa6d61 Added test case for bug #75577 2018-10-09 11:06:58 +01:00
Derick Rethans
43f7a5735c Fixed bug #75577: DateTime::createFromFormat does not accept 'v' format specifier, by updating timelib to 2018.01alpha2 2018-10-09 11:06:42 +01:00
Dmitry Stogov
ca7ccd01e4 During size calculation, pointer should be kept unchanged 2018-10-08 23:52:24 +03:00
Pierrick Charron
c4983b179d Merge branch 'PHP-7.3' 2018-10-08 10:21:03 -04:00
Pierrick Charron
64881a1e64 Add constants from curl 7.56 to 7.61 2018-10-08 10:19:35 -04:00
Nikita Popov
01cc547f44 Merge branch 'PHP-7.3' 2018-10-08 13:16:54 +02:00
Nikita Popov
d982bbe175 Fix ref ID handling when serializing $GLOBALS
This was already broken previously, but in PHP 7.3 stricter
validation during unserialization made this into an error.
2018-10-08 13:16:23 +02:00
Christoph M. Becker
a80456e7dd Merge branch 'PHP-7.3'
* PHP-7.3:
  Fix #75851: Year component overflow with date formats "c", "o", "r" and "y"
2018-10-08 11:53:24 +02:00
Christoph M. Becker
e68f60b087 Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Fix #75851: Year component overflow with date formats "c", "o", "r" and "y"
2018-10-08 11:52:37 +02:00
Christoph M. Becker
1b97f291a7 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #75851: Year component overflow with date formats "c", "o", "r" and "y"
2018-10-08 11:50:37 +02:00
Adam Saponara
c097acd52e Fix #75851: Year component overflow with date formats "c", "o", "r" and "y" 2018-10-08 11:48:58 +02:00
Peter Kokot
c2cbf37235 Update and refactor shmop extension's README
The shmop functions are documented with more information in the PHP
manual.
2018-10-08 06:27:17 +02:00
Anatol Belski
4acc8500ac Enforce C++11 in ext/intl
ICU 59 already requires C++11 by default. The minimum version required
by the core is 50, which is compiled with at least C++11 in many distros
as package defs tell. Headers for ICU versions between ICU 50 and 58 look
fine when included for C++11 compilation, the linking is thereof not affected.

The macro PHP_CXX_COMPILE_STDCXX is based on
https://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx.html
The patch consists on allowing to read the corresponding switch in a user
defined variable instead of enforcing CXXFLAGS globally. That way, every
ext or SAPI can decide, which C++ standard is to be used. The
documentation is provided in the m4 file.

C++11 is already somewhat older standard, C++14 were better. However
issues with GCC < 5.0 and some other compilers are possibly to hit back.
Still there's some time to check for C++14 for ext/intl, too. Having said
that, C++11 in ext/intl and a mechanism to determine features is a good step
towards better C++ support.
2018-10-07 20:00:03 +02:00
bugreportuser
cdedc1cb89 mysqli_fork: Fix undefined variable 2018-10-06 14:38:10 -03:00
Pedro Magalhães
d87fdd9a96 Merge branch 'PHP-7.3'
* PHP-7.3:
  Remove unstable dns tests
2018-10-06 15:59:05 +01:00
Pedro Magalhães
484b79e868 Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Remove unstable dns tests
2018-10-06 15:58:51 +01:00
Pedro Magalhães
608b48e5f4 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Remove unstable dns tests
2018-10-06 15:58:32 +01:00
Pedro Magalhães
49835e1436 Remove unstable dns tests 2018-10-06 15:58:01 +01:00
Pedro Magalhães
418e2264dc Merge branch 'PHP-8.3'
* PHP-7.3:
  Fix #76888 - Remove unstable test
2018-10-06 15:46:30 +01:00
Pedro Magalhães
ef36419af4 Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Fix #76888 - Remove unstable test
2018-10-06 15:46:11 +01:00
Pedro Magalhães
82e10f3974 Fix #76888 - Remove unstable test 2018-10-06 15:45:07 +01:00
Pedro Magalhães
7862d9c942 Use the locally defined constants for dns record types 2018-10-06 14:58:11 +01:00