Commit Graph

134220 Commits

Author SHA1 Message Date
Dmitry Stogov
25de668621 Merge branch 'PHP-8.3'
* PHP-8.3:
  Align error messages between normal VM and JIT for RW when using object as array (#12799)
2023-11-28 00:40:57 +03:00
Dmitry Stogov
f4b473ca71 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Align error messages between normal VM and JIT for RW when using object as array (#12799)
2023-11-28 00:40:48 +03:00
Gina Peter Banyard
e94ab0461c
Align error messages between normal VM and JIT for RW when using object as array (#12799) 2023-11-28 00:37:21 +03:00
Máté Kocsis
02bca09bc1
Add class aliases into the classmap of gen_stub.php
Now that we have class aliases (DOMNode -> DOM\Node), it has become important to add them to the class map so that it will be possible to generate class synopses for them.
2023-11-27 22:13:35 +01:00
Máté Kocsis
164995effe
Fix ext/dom object hierarchy
gen_stub.php references classes inside namespaces relatively
2023-11-27 22:09:31 +01:00
Dmitry Stogov
8f5156fcba Fixed trace type inference 2023-11-27 22:52:12 +03:00
Alex Dowad
26b4130f4a Merge branch 'PHP-8.3'
* PHP-8.3:
  Return value of mb_get_info can be NULL
2023-11-27 21:20:38 +02:00
Alex Dowad
31d43164e8 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Return value of mb_get_info can be NULL
2023-11-27 21:13:21 +02:00
Alex Dowad
d8ef868b92 Return value of mb_get_info can be NULL
This has been the case at least since PHP 5.4. Thanks to Girgias for
pointing it out.

It appears that there are several global variables internal to mbstring
which can be queried via mb_get_info() and which could be NULL, but
at the very least, we know that "mbstring.http_input" is one of them.
2023-11-27 20:53:37 +02:00
David Carlier
2ef4785dac Merge branch 'PHP-8.3' 2023-11-27 18:20:38 +00:00
David Carlier
be2d460979 Merge branch 'PHP-8.2' into PHP-8.3 2023-11-27 18:20:27 +00:00
David Carlier
b12c85293d Merge branch 'PHP-8.1' into PHP-8.2 2023-11-27 18:19:02 +00:00
ddv
3f57bd80f6 Fix phpGH-12763: PGSQL pg_untrace(): Argument #1 ($connection) must be of type resource or null, PgSql\Connection given. 2023-11-27 18:18:46 +00:00
Dmitry Stogov
e30d78f332 Fixed incorrect guard elimination
Fixes oss-fuzz #64414
2023-11-27 21:12:04 +03:00
Gina Peter Banyard
298bba5319
Merge branch 'PHP-8.3'
* PHP-8.3:
  jit: fixed JIT "Attempt to assign property of non-object" warning emitted at the same time as Error is being thrown
2023-11-27 16:21:01 +00:00
Gina Peter Banyard
c70219e4aa
Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  jit: fixed JIT "Attempt to assign property of non-object" warning emitted at the same time as Error is being thrown
2023-11-27 16:20:44 +00:00
Gina Peter Banyard
126a255d66
jit: fixed JIT "Attempt to assign property of non-object" warning emitted at the same time as Error is being thrown 2023-11-27 16:19:35 +00:00
Gina Peter Banyard
bd2c970e7e
Merge branch 'PHP-8.3'
* PHP-8.3:
  jit: fixed "Uninitialized string offset" warning being emitted at the same time as invalid offset Error
2023-11-27 16:07:53 +00:00
Gina Peter Banyard
52463ae233
Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  jit: fixed "Uninitialized string offset" warning being emitted at the same time as invalid offset Error
2023-11-27 16:06:15 +00:00
Gina Peter Banyard
ed8b901869
jit: fixed "Uninitialized string offset" warning being emitted at the same time as invalid offset Error 2023-11-27 16:04:41 +00:00
Jakub Zelenka
2fc4376960
[skip ci] Remove accidentally added NEWS-RC file 2023-11-27 15:46:38 +00:00
Niels Dossche
fc8393b5f9 Merge branch 'PHP-8.3'
* PHP-8.3:
  Fix GH-12791: Possible dereference of NULL in MySQLnd debug code
2023-11-27 14:02:30 +01:00
Niels Dossche
3269aa95cb Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fix GH-12791: Possible dereference of NULL in MySQLnd debug code
2023-11-27 14:02:19 +01:00
Niels Dossche
6a914cb7a5 Fix GH-12791: Possible dereference of NULL in MySQLnd debug code
Closes GH-12794.
2023-11-27 14:01:46 +01:00
Saki Takamachi
4bb75d569e
ext/pdo_mysql: Optimize tests (#12751) 2023-11-27 13:01:24 +00:00
Niels Dossche
acbdfd24ec Fix DOMElement->prefix with empty string creates bogus prefix
Closes GH-12770.
2023-11-27 13:27:07 +01:00
Remi Collet
cc5a1bac6c
Merge branch 'PHP-8.3'
* PHP-8.3:
  zip: use index to avoid search by name
2023-11-27 08:34:12 +01:00
Remi Collet
6eecb3e7f5
zip: use index to avoid search by name 2023-11-27 08:33:57 +01:00
Saki Takamachi
dfaf7986de
[pdo_firebird] Transaction management optimization (#12741)
take2 of #12657

## About Firebird transaction

Firebird is a full transactional database, so the DB itself does not support autocommit mode. (Strictly, there is an autocommit mode, but it is a different concept from the "autocommit" that we are used to with MySQL and others.)

Therefore, a transaction must have started before any operation is performed, and autocommit mode had to be emulated in PHP.

I made sure that a transaction always exists when in autocommit mode. Since the `in_transacntion` function does not work as expected, I have introduced `H->in_manually_txn` to determine whether a transaction is being manually manipulated.

## There are two types of commit/rollback

(I'm not talking about two-phase commit. This change does not take into account two-phase commit.)

There are `isc_commit_retaining` which starts a transaction again in the same context immediately after committing, and `isc_commit_transaction` which closes the transaction as is.

Similarly, there are two types of rollback.

-----------

Due to the default value of the transaction isolation level, autocommit mode may obtain unintended results.
Regarding this, it would be too large to include support for transaction isolation levels in this PR, so I will leave it as is for now.
2023-11-27 03:38:48 +00:00
Peter Kokot
40d1442cec
Remove unused gcov artifacts (#12786) 2023-11-27 02:07:05 +00:00
Niels Dossche
1e7c64bd4d Merge branch 'PHP-8.3'
* PHP-8.3:
  Avoid using uninitialised struct
2023-11-25 20:08:34 +01:00
Niels Dossche
f8bfc0e373 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Avoid using uninitialised struct
2023-11-25 20:08:26 +01:00
Niels Dossche
ebb4488def Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Avoid using uninitialised struct
2023-11-25 20:08:01 +01:00
Mikhail Galanin
7e7817bc2f Avoid using uninitialised struct
Closes GH-12046.
2023-11-25 20:07:14 +01:00
Bob Weinand
ed431065fd Merge branch 'PHP-8.3' 2023-11-25 18:49:40 +01:00
Bob Weinand
4774dc167e Merge branch 'PHP-8.2' into PHP-8.3 2023-11-25 18:49:22 +01:00
Bob Weinand
c572613596 Merge branch 'PHP-8.1' into PHP-8.2 2023-11-25 18:48:57 +01:00
Bob Weinand
d404e1d1ee USE_ZEND_ALLOC=1 in tests with zend_test.observe_opline_in_zendmm=1 2023-11-25 18:44:45 +01:00
Bob Weinand
78364ef97e Merge branch 'PHP-8.3' 2023-11-25 01:02:52 +01:00
Bob Weinand
88537c55b5 Merge branch 'PHP-8.2' into PHP-8.3 2023-11-25 01:01:56 +01:00
Bob Weinand
50ccea31f2 Merge branch 'PHP-8.1' into PHP-8.2 2023-11-25 00:59:26 +01:00
Bob Weinand
1305ea23ce Add NEWS entry for GH-12768 2023-11-25 00:57:22 +01:00
Florian Engelhardt
8d2df86b06
Fix invalid opline in OOM handlers within ZEND_FUNC_GET_ARGS and ZEND_BIND_STATIC (#12768)
* fix segfault in `ZEND_BIND_STATIC`

In case a `ZEND_BIND_STATIC` is being executed, while the current chunk is full,
the `zend_array_dup()` call will trigger a OOM in ZendMM which will crash, as
the opline might be a dangling pointer.

* add missing test

* `assert()`ing seems easier than trying to make the compiler to not optimize

* moved from function call to INI setting, so we can use this in other places as well

* make `assert()` work no NDEBUG builds

* document magic number

* fix segfault in `ZEND_FUNC_GET_ARGS`

In case a `ZEND_FUNC_GET_ARGS` is being executed, while the current chunk is
full, the `zend_new_array()` call will trigger a OOM in ZendMM which will crash,
as the opline might be a dangling pointer.

---------

Co-authored-by: Florian Engelhardt <florian@engelhardt.tc>
2023-11-25 00:54:02 +01:00
Ilija Tovilo
f6efd126a5
Fix date createFromTimestamp test (#12766)
Unfortuantely, PHP_INT_MIN cannot be expressed as a literal in PHP, because -NUM
is parsed as (-)(NUM). NUM is restricted to PHP_INT_MAX.
2023-11-24 14:24:32 +01:00
Niels Dossche
fd3a8656ed [ci skip] UPGRADING 2023-11-24 13:37:08 +01:00
Niels Dossche
d3c2673754 [ci skip] NEWS and UPGRADING for mb_*trim 2023-11-24 11:47:32 +01:00
Yuya Hamada
a80b6d7b99 Add mb_trim function
Co-authored-by: Niels Dossche <7771979+nielsdos@users.noreply.github.com>
Co-authored-by: Gina Peter Banyard <girgias@php.net>
2023-11-24 08:04:51 +02:00
Peter Kokot
3665e90061
Remove unused PHP_COMPILE and CXX_PHP_COMPILE variables (#12760)
These were part of the old build system and are no longer used.
2023-11-24 01:35:24 +00:00
Peter Kokot
3c7fe92b7c
Remove unused aspell library installation (#12761)
Related to b035cb6c8e.
2023-11-24 01:35:01 +00:00
Derick Rethans
a4e80b09cb Merge branch 'PHP-8.3' 2023-11-23 16:18:50 +00:00