History log of /php-src/NEWS (Results 951 – 975 of 15454)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# fe30c509 30-Aug-2023 Jakub Zelenka

Fix GH-12077: Check lsof functionality in socket on close test

Closes GH-12084


# 02b3fb1f 30-Aug-2023 Filip Zrůst <128540+f4z4on@users.noreply.github.com>

Remove CPP when invoking dtrace utility

We are experiencing an issue when building PHP with DTrace enabled with
SystemTap (see GH-11847).† The issue is caused by inappropriate use C

Remove CPP when invoking dtrace utility

We are experiencing an issue when building PHP with DTrace enabled with
SystemTap (see GH-11847).† The issue is caused by inappropriate use C
preprocessor detected by GNU Autoconf in our “configure” script. C
preprocessor configuration found by AC_PROG_CPP macro is portable only
to run on files with “.c” extension.‡ However, statically-defined tracing
is described by D programs with “.d” extension which causes the issue.
We experience this even on typical Linux distribution with GNU Compiler
Collection (GCC) unless we override the defaults detected by our
“configure” script.

Many major Linux distributions use SystemTap to provide “dtrace”
utility. It relies on both external C preprocessor and external C
compiler. C preprocessor can be customized via CPP environment variable.
Similarly, C compiler can be customized via CC environment variable. It
also allows customization of C compiler flags via CFLAGS environment
variable. We have recently aligned both CPP and CC environment variable
with C preprocessor and C compiler we use to build regular C source code
as provided by our “configure” script (see GH-11643).* We wanted to
allow cross-compilation on Linux for which this was the only blocker. C
compiler flags from CFLAGS_CLEAN macro have already been in place since
versions 5.4.20 and 5.5.4 from 2013-09-18.

We had modified all “dtrace” invocations in the same way to make it look
consistent. However, only the C compiler (CC environment variable) is
necessary to for cross-compilation. There have never been any reported
issue with the C preprocessor. We acknowledge it would be great to allow
C preprocessor customization as well. However, the implementation would
require a lot of effort to do correctly given the limitations of
AC_PROG_CPP macro from GNU Autoconf. This would be further complicated
by the fact that all DTrace implementations, not just SystemTap, allow C
preprocessor customization but Oracle DTrace, Open DTrace, and their
forks do it differently. Nevertheless, they all default to “cpp” utility
and they all have or had been working fine. Therefore, we believe simply
removing CPP stabilizes “dtrace” invocation on Linux systems with
SystemTap and aligns it with other system configurations on other
platforms, until someone comes with complete solution with custom “m4”
and “make” macros, while our build system on Linux with SystemTap
supports cross-compilation.

Fixes GH-11847
Closes GH-12083

† https://github.com/php/php-src/issues/11847
‡ https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.71/autoconf.html#index-AC_005fPROG_005fCPP-1
* https://github.com/php/php-src/issues/11643

show more ...


# 7deb84b7 29-Aug-2023 Jakub Zelenka

Start PHP 8.4 development cycle


# 1371ce95 29-Aug-2023 Jakub Zelenka

Update NEWS for start of RC2


# 0b9702c9 10-Aug-2023 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Implement GH-11934: Allow to pass CData into struct and/or union fields

Co-authored-by: KapitanOczywisty <44417092+KapitanOczywisty@users.noreply.github.com>

Closes GH-11935.


# a3a39644 27-Aug-2023 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix oss-fuzz #61712: assertion failure with error handler during binary op

Because the error handler is invoked after the property is updated,
the error handler has the opportunity to re

Fix oss-fuzz #61712: assertion failure with error handler during binary op

Because the error handler is invoked after the property is updated,
the error handler has the opportunity to remove it before the property
is returned.

Switching the order around fixes this issue. The comments mention that
the current ordering prevents overwriting the EG(std_property_info)
field in the error handler. EG(std_property_info) no longer exists as it
was removed in 7471c217. Back then a global was used to store the
returned property info, but as this is no longer the case there is no
longer a need to protect against overwriting a global.

Closes GH-12062.

show more ...


# bf3fb4e5 28-Aug-2023 Jeremie Courreges-Anglas

On riscv64 require libatomic if actually needed

clang and newer gcc releases support byte-sized atomic accesses on
riscv64 through inline builtins. In both cases the hard dependency on

On riscv64 require libatomic if actually needed

clang and newer gcc releases support byte-sized atomic accesses on
riscv64 through inline builtins. In both cases the hard dependency on
libatomic added by GH-11321 isn't useful.

Stop using AC_CHECK_LIB() which is too naive to notice that libatomic
isn't needed. Instead, PHP_CHECK_FUNC() will retry the check with -latomic
if required.

Closes GH-11790

show more ...


# 766cac07 28-Aug-2023 Jakub Zelenka

Fix bug #76857: Can read "non-existant" files

This change makes checked and opened file consistent in a way that it is
using real path for stat operation in the same way like it is used

Fix bug #76857: Can read "non-existant" files

This change makes checked and opened file consistent in a way that it is
using real path for stat operation in the same way like it is used for
open.

Closes GH-12067

show more ...


# ba9650d6 27-Aug-2023 Jakub Zelenka

Fix bug #52335 (fseek() on memory stream behavior different then file)

This changes memory stream to allow seeking past end which makes it the
same as seeking on files. It means the posi

Fix bug #52335 (fseek() on memory stream behavior different then file)

This changes memory stream to allow seeking past end which makes it the
same as seeking on files. It means the position is allowed to be higher
than the string length. The size only increases if data is appended to
the past position. The space between the previous string and position
is filled with zero bytes.

Fixes GH-9441
Closes GH-12058

show more ...


# aff46d75 25-Aug-2023 Jakub Zelenka

Fix GH-11982: str_getcsv returns null byte for unterminated quoted string

Closes GH-12047


# 418cdc0b 14-Jul-2023 Mikhail Galanin

Set CLOEXEC on listened/accepted sockets in the FPM children

Closes GH-11708

Co-authored-by: Jakub Zelenka <bukka@php.net>


# e1cb7216 22-Aug-2023 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Improve warning when returning null from the resolver set by libxml_set_external_entity_loader

Fixes GH-11952.
Closes GH-12022.


# f25474f7 11-Jun-2023 HypeMC

Add before_needle argument to strrchr()

Closes GH-11430


# 53aa53f4 24-Aug-2023 Jakub Zelenka

Introduce Zend guard recursion protection

This PR introduces a new way of recursion protection in JSON, var_dump
and friends. It fixes issue in master for __debugInfo and also improves

Introduce Zend guard recursion protection

This PR introduces a new way of recursion protection in JSON, var_dump
and friends. It fixes issue in master for __debugInfo and also improves
perf for jsonSerializable in some cases. More info can be found in
GH-10020.

Closes GH-11812

show more ...


# 20ac42e1 19-Aug-2023 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix memory leak when setting an invalid DOMDocument encoding

Because the failure path did not release the string, there was a memory
leak.
As the only valid types for this function a

Fix memory leak when setting an invalid DOMDocument encoding

Because the failure path did not release the string, there was a memory
leak.
As the only valid types for this function are IS_NULL and IS_STRING, we
and IS_NULL is always rejected in practice, solve the issue by not using
a function that increments the refcount in the first place.

Closes GH-12002.

show more ...


# fc8d5c72 19-Aug-2023 David Carlier

ext/iconv: fix build for netbsd.

NetBSD still adopts the old iconv signature for buffer inputs.
The next release will too so we can assume it will remain that way for
a while.

ext/iconv: fix build for netbsd.

NetBSD still adopts the old iconv signature for buffer inputs.
The next release will too so we can assume it will remain that way for
a while.

Close GH-12001

show more ...


# f78d1d0d 12-Aug-2023 Ilija Tovilo

Fix segfault in format_default_value due to unexpected enum/object

Evaluating constants at comptime can result in arrays that contain objects. This
is problematic for printing the defaul

Fix segfault in format_default_value due to unexpected enum/object

Evaluating constants at comptime can result in arrays that contain objects. This
is problematic for printing the default value of constant ASTs containing
objects, because we don't actually know what the constructor arguments were.
Avoid this by not propagating array constants.

Fixes GH-11937
Closes GH-11947

show more ...


# c1103a97 24-Mar-2023 Kamil Tekiela

Fix implicit/explicit port in mysqlnd


# 32fa6733 15-Aug-2023 Eric Mann

Update NEWS for PHP 8.3.0beta3


# d46dc569 23-Jul-2023 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix various namespace prefix conflict resolution bugs and namespace shift bugs

There are two linked issues:

- Conflicts couldn't be resolved by changing the prefix name.
- Lacki

Fix various namespace prefix conflict resolution bugs and namespace shift bugs

There are two linked issues:

- Conflicts couldn't be resolved by changing the prefix name.
- Lacking a prefix would shift the namespace as the default namespace,
causing elements to suddenly become part of the namespace instead of
the attributes.

The output could still be improved by removing redundant namespace
declarations, but that's another issue. At least the output is
correct now.

Closes GH-11777.

show more ...


# 02a80c5b 14-Aug-2023 George Peter Banyard

Fix various bugs related to DNF types

- GH-11958: DNF types in trait properties do not get bound properly
- GH-11883: Memory leak in zend_type_release() for non-arena allocated DNF typ

Fix various bugs related to DNF types

- GH-11958: DNF types in trait properties do not get bound properly
- GH-11883: Memory leak in zend_type_release() for non-arena allocated DNF types
- Internal trait bound to userland class would not be arena allocated
- Property DNF types were not properly deep copied during lazy loading

Co-authored-by: Ilija Tovilo <ilija.tovilo@me.com>
Co-authored-by: ju1ius <jules.bernable@gmail.com>

show more ...


# b71c6b2c 13-Aug-2023 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix #81992: SplFixedArray::setSize() causes use-after-free

Upon resizing, the elements are destroyed from lower index to higher
index. When an element refers to an object with a destruct

Fix #81992: SplFixedArray::setSize() causes use-after-free

Upon resizing, the elements are destroyed from lower index to higher
index. When an element refers to an object with a destructor, it can
refer to a lower (i.e. already destroyed) element, causing a uaf.
Set refcounted zvals to NULL after destroying them to avoid a uaf.

Closes GH-11959.

show more ...


# ee000ea1 08-Aug-2023 Ilija Tovilo

Fix uouv on oom on object allocation

We may OOM during object initialization. In this case, free_obj needs to guard
against NULL values. There may be more cases where this is an issue, t

Fix uouv on oom on object allocation

We may OOM during object initialization. In this case, free_obj needs to guard
against NULL values. There may be more cases where this is an issue, these were
the ones I was able to discover via script.

Fixes GH-11734

show more ...


# bb092ab4 06-Aug-2023 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix #80927: Removing documentElement after creating attribute node: possible use-after-free

Closes GH-11892.


# 0d922aa5 09-Aug-2023 Kamil Tekiela

Fix error checking in mysqlnd

Closes GH-11925


1...<<31323334353637383940>>...619