Nikita Popov
e67156e967
Add missing rc1/rcn to return type initialization
2021-03-19 10:04:56 +01:00
Nikita Popov
dcac654fd5
Allow inferring narrowed return type
...
Even if an explicit return type is given, we might still infer
a more narrow one based on return statements. We shouldn't
pessimize this just because a type has been declared.
2021-03-18 17:11:56 +01:00
Nikita Popov
2f73cbb1b1
Update one more use of NO_AUTOLOAD
2021-03-18 16:25:22 +01:00
Máté Kocsis
d91051da2c
Update mysqli stub hash
2021-03-18 16:09:25 +01:00
Christoph M. Becker
02fdf9fd3b
Merge branch 'PHP-8.0'
...
* PHP-8.0:
Fix #80783 : PDO ODBC truncates BLOB records at every 256th byte
2021-03-18 15:31:23 +01:00
Nikita Popov
8690efd1f8
Update opt test
...
And fix a type in the fetch class flags dumping while here.
2021-03-18 15:25:40 +01:00
Christoph M. Becker
97cfdcd73b
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80783 : PDO ODBC truncates BLOB records at every 256th byte
2021-03-18 15:18:53 +01:00
Nikita Popov
4df39f4bd0
Don't imply SILENT from NO_AUTOLOAD
...
We have separate flags for non-autoloading class fetches and
silent class fetches. There's no reason why NO_AUTOLOAD should
be special-cased to be implicitly silent.
2021-03-18 15:15:21 +01:00
Christoph M. Becker
bccca0b53a
Fix #80783 : PDO ODBC truncates BLOB records at every 256th byte
...
It is not guaranteed, that the driver inserts only a single NUL byte at
the end of the buffer. Apparently, there is no way to find out the
actual data length in the buffer after calling `SQLGetData()`, so we
adjust after the next `SQLGetData()` call.
We also prevent PDO::ODBC_ATTR_ASSUME_UTF8 from fetching garbage, by
fetching all chunks with the same C type.
Closes GH-6716.
2021-03-18 15:13:27 +01:00
Dmitry Stogov
c8a8c47f7e
Merge branch 'PHP-8.0'
...
* PHP-8.0:
Additional fix for bug #80847 . On x86_64 part of structure may be passed in CPU registers.
2021-03-18 16:16:29 +03:00
Dmitry Stogov
465cfc499b
Additional fix for bug #80847 .
...
On x86_64 part of structure may be passed in CPU registers.
2021-03-18 16:13:42 +03:00
Dmitry Stogov
9373d159c2
"zend-test" was renamed to "zend_test"
2021-03-18 14:36:46 +03:00
Nikita Popov
3b88e65265
Merge branch 'PHP-8.0'
...
* PHP-8.0:
Fix locale switch back to C in pcre
2021-03-18 10:51:04 +01:00
Nikita Popov
4dce2f83f5
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix locale switch back to C in pcre
2021-03-18 10:50:57 +01:00
Nikita Popov
4be867e910
Fix locale switch back to C in pcre
...
The compile context is shared between patterns, so we need to set
the character tables unconditionally in case we switched from
a non-C locale to the C locale.
2021-03-18 10:48:43 +01:00
Nikita Popov
234af00bcb
Destroy constant values before object store
...
Now that constants can contain objects (currently only enums),
we should destroy them before we free the object store, otherwise
there will be false positive leak reports.
This doesn't affect the fast_shutdown sequence.
2021-03-18 10:31:28 +01:00
Dharman
7e9f6d2a48
Deprecate OO style mysqli::get_client_info method
...
Deprecate passing connection object to mysqli_get_client_info()
Closes GH-6777.
2021-03-17 20:10:18 +00:00
Dmitry Stogov
eb8f5e4347
Merge branch 'PHP-8.0'
...
* PHP-8.0:
Fixed bug #80861 (erronous array key overflow in 2D array with JIT)
2021-03-17 23:00:22 +03:00
Dmitry Stogov
7e494d9225
Fixed bug #80861 (erronous array key overflow in 2D array with JIT)
2021-03-17 22:59:59 +03:00
Ilija Tovilo
d628d7e015
Add enums to UPGRADING [ci skip]
2021-03-17 19:15:35 +01:00
Ilija Tovilo
269c8dac1d
Implement enums
...
RFC: https://wiki.php.net/rfc/enumerations
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com >
Closes GH-6489.
2021-03-17 19:08:03 +01:00
George Peter Banyard
a6fc427b8c
Use zend_string_equals() API instead of strcmp() in various places
...
Closes GH-6784
2021-03-17 16:36:23 +00:00
George Peter Banyard
a74e248c43
Use zend_string_equals() API instead of strcmp() in COM extension
2021-03-17 16:36:16 +00:00
George Peter Banyard
6acb079906
Use zend_string_equals() API instead of strcmp() in Date extension
2021-03-17 16:36:16 +00:00
George Peter Banyard
4b20c03387
Use zend_string_equals() API instead of strcmp() in Filter extension
2021-03-17 16:36:16 +00:00
George Peter Banyard
48ac3881a3
Use zend_string_equals() API instead of strcmp() in PGSQL extension
...
And tiny drive by refactor at the same time for more usages
2021-03-17 16:36:16 +00:00
George Peter Banyard
84e12626e7
Use zend_string_equals() API instead of strcmp() in SOAP extension
2021-03-17 16:36:16 +00:00
George Peter Banyard
ddfe269aa8
Use zend_string_equals() API instead of strcmp() in main.c
2021-03-17 16:36:16 +00:00
Nikita Popov
00aa03bf8e
Merge branch 'PHP-8.0'
...
* PHP-8.0:
Fix signed/unsigned warnings in PDO ODBC
2021-03-17 16:34:34 +01:00
Nikita Popov
34e39ebaf5
Fix signed/unsigned warnings in PDO ODBC
...
Add add skipif to test.
(cherry picked from commit aa58db7232 )
2021-03-17 16:33:32 +01:00
Nikita Popov
e9d78339e7
Use absolute paths in tokenizer_data_gen.php
...
To make it work with out-of-tree builds.
2021-03-17 15:54:02 +01:00
Christoph M. Becker
128082c86f
Initalize return_value before use
...
Otherwise we likely segfault[1]. We fix the same issue for
PDO_Firebird as well.
[1] <https://ci.appveyor.com/project/php/php-src/builds/38267250/job/6y3ngn1k6ryxx6j3?fullLog=true#L9783 >
Closes GH-6785.
2021-03-17 15:39:50 +01:00
Nikita Popov
92a969421c
Merge branch 'PHP-8.0'
...
* PHP-8.0:
imagecolortransparent() cannot return null
2021-03-17 15:09:26 +01:00
Nikita Popov
d80118dc16
imagecolortransparent() cannot return null
2021-03-17 15:09:06 +01:00
Nikita Popov
db538775e1
Merge branch 'PHP-8.0'
...
* PHP-8.0:
Return bool from imageinterlace()
2021-03-17 15:06:46 +01:00
Nikita Popov
c17434429d
Return bool from imageinterlace()
...
The function accepts a bool since PHP 8.0, so it should also return
a bool to keep things consistent.
Furthermore a null return from this functions is not possible.
2021-03-17 15:05:09 +01:00
Dmitry Stogov
8f0ca7c16c
Merge branch 'PHP-8.0'
...
* PHP-8.0:
Fixed bug #80839 (PHP problem with JIT)
2021-03-17 16:55:42 +03:00
Dmitry Stogov
faf1567212
Fixed bug #80839 (PHP problem with JIT)
2021-03-17 16:55:09 +03:00
Dmitry Stogov
356ef5bd0e
Fix CLANG/RELEASE build (this is a workaround for probable bug in CLANG)
2021-03-17 15:50:36 +03:00
Christoph M. Becker
e65f705ce3
Merge branch 'PHP-8.0'
...
* PHP-8.0:
Fix #66783 : UAF when appending DOMDocument to element
2021-03-17 12:40:40 +01:00
Christoph M. Becker
fddd0ac552
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #66783 : UAF when appending DOMDocument to element
2021-03-17 12:40:03 +01:00
Christoph M. Becker
a08847ab39
Fix #66783 : UAF when appending DOMDocument to element
...
According to the DOM standard, elements may only contain element, text,
processing instruction and comment nodes[1]. It is also specified that
a HierarchyRequestError should be thrown if a document is to be
inserted[2]. We follow that standard, and prevent the use-after-free
this way.
[1] <https://dom.spec.whatwg.org/#node-trees >
[2] <https://dom.spec.whatwg.org/#mutation-algorithms >
Closes GH-6765.
2021-03-17 12:37:18 +01:00
Nikita Popov
709e45d89b
Avoid unnecessary static_variables persistence
...
static_variables should be treated the same way as all other
op_array components nowadays (only static_variables_ptr is
special). There's no need to persist/serialize it is separately
per shared op_array.
2021-03-17 12:20:58 +01:00
Christoph M. Becker
994d4199d5
Merge branch 'PHP-8.0'
...
* PHP-8.0:
8.0.5 is next
2021-03-17 12:15:35 +01:00
Christoph M. Becker
c7fadd2328
8.0.5 is next
...
We also move the NEWS entry for bug 80847 to the proper version.
2021-03-17 12:14:26 +01:00
Nikita Popov
4cff8c10a9
Simplify attribute persistence
...
For an inherited op_array, directly fetch the xlat entry, as we
do for everything else.
2021-03-17 11:52:45 +01:00
Nikita Popov
69018da09b
Fix PDO test under libmysqlclient
2021-03-17 11:26:41 +01:00
Máté Kocsis
f15d52796e
Declare PDORow::queryString property
...
Relates GH-6742
2021-03-17 09:42:35 +01:00
Dmitry Stogov
1494e87bd0
Merge branch 'PHP-8.0'
...
* PHP-8.0:
Fixed bug #80847 (CData structs with fields of type struct can't be passed as C function argument)
2021-03-17 09:56:07 +03:00
Dmitry Stogov
38ebb55c7c
Fixed bug #80847 (CData structs with fields of type struct can't be passed as C function argument)
2021-03-17 09:55:20 +03:00