History log of /PHP-8.3/ext/ffi/ffi.c (Results 1 – 25 of 143)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# c0de7214 05-Jul-2024 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix GH-14286 (ffi enum type (when enum has no name) make memory leak)

For top-level anonymous type definition we never store the declaration anywhere
else nor the type anywhere else.

Fix GH-14286 (ffi enum type (when enum has no name) make memory leak)

For top-level anonymous type definition we never store the declaration anywhere
else nor the type anywhere else.
The declaration keeps owning the type and it goes out of scope.
For anonymous fields this gets handled by the add_anonymous_field code that
removes the type from the declaration.
This patch does something similar in the parsing code when it is
detected we're dealing with an anonymous enum in a top-level declaration.

Closes GH-14839.

show more ...


# ebd1a366 13-May-2024 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix GH-14215: Cannot use FFI::load on CRLF header file with apache2handler

Some modules may reset _fmode, which causes mangling of line endings.
Always be explicit like we do in other pl

Fix GH-14215: Cannot use FFI::load on CRLF header file with apache2handler

Some modules may reset _fmode, which causes mangling of line endings.
Always be explicit like we do in other places where the native open call
is used.

Closes GH-14218.

show more ...


# 18d70db0 27-Mar-2024 Cristian Rodríguez

Fix gcc-14 Wcalloc-transposed-args warnings

gcc-14 and later warns of inverted arguments in calloc or
calloc-like __alloc_size__ annotated functions.

Closes GH-13818.


# c727f299 08-Dec-2023 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix GH-12905: FFI::new interacts badly with observers

Because these functions are copied and not properly registered (which we
can't), the observer code doesn't add the temporaries on st

Fix GH-12905: FFI::new interacts badly with observers

Because these functions are copied and not properly registered (which we
can't), the observer code doesn't add the temporaries on startup.
Add them via a callback during startup.

Closes GH-12906.

show more ...


# 40ccc8ea 10-Dec-2023 Jakub Zelenka

Fix GH-9698: stream_wrapper_register crashes with FFI\CData provided as class

Closes GH-12926


# adaf7263 22-Nov-2023 Dmitry Stogov

Fixed regression introduced by https://github.com/php/php-src/pull/9601


# 04b35a44 28-Oct-2023 sji

Fix segfault caused by weak references to FFI objects (#12488)

Thank you!


# 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.


# ac99f730 21-Jul-2023 Ilija Tovilo

Fix merge conflict

Sorry...


# 11d6bea9 20-Jul-2023 Ilija Tovilo

Fix leaking definitions on FFI::cdef()->new()

Previously, FFI_G(symbols) and FFI_G(tags) were never cleaned up when calling
new on an existing object. However, if cdef() is called withou

Fix leaking definitions on FFI::cdef()->new()

Previously, FFI_G(symbols) and FFI_G(tags) were never cleaned up when calling
new on an existing object. However, if cdef() is called without parameters these
globals are NULL and might be created when new() creates new definitions. These
would then be discarded without freeing them.

Closes GH-11751

show more ...


# 4acf0084 01-Jul-2023 Máté Kocsis

Deprecate calling FFI::cast(), FFI::new(), and FFI::type() statically


# d5c649b3 23-Feb-2023 Max Kellermann

zend_compiler, ...: use `uint8_t` instead of `zend_uchar` (#10621)

`zend_uchar` suggests that the value is an ASCII character, but here,
it's about very small integers. This is misleadi

zend_compiler, ...: use `uint8_t` instead of `zend_uchar` (#10621)

`zend_uchar` suggests that the value is an ASCII character, but here,
it's about very small integers. This is misleading, so let's use a
C99 integer instead.

On all architectures currently supported by PHP, `zend_uchar` and
`uint8_t` are identical. This change is only about code readability.

show more ...


# d46dea16 18-Feb-2023 Max Kellermann

Make globals const (part 2) (#10610)

* Zend/zend_enum: make `forbidden_methods` static+const

* main/php_syslog: make `xdigits` static

* sapi/fpm: make several globals `cons

Make globals const (part 2) (#10610)

* Zend/zend_enum: make `forbidden_methods` static+const

* main/php_syslog: make `xdigits` static

* sapi/fpm: make several globals `const`

* sapi/phpdbg: make `OPTIONS` static

* sapi/phpdbg/help: make help texts const

* sapi/cli: make `template_map` const

* ext/ffi: make `zend_ffi_types` static

* ext/bcmath: make `ref_str` const

* ext/phar: make several globals static+const

show more ...


# 851e4623 13-Feb-2023 Dmitry Stogov

Make C functions returning "void" to return PHP "null"

In PHP-2.0 and below we by mistake returned "obcect(FFI\CData:void)#2 (0) {}".
We decided not to fix this in PHP-2.0 and below to a

Make C functions returning "void" to return PHP "null"

In PHP-2.0 and below we by mistake returned "obcect(FFI\CData:void)#2 (0) {}".
We decided not to fix this in PHP-2.0 and below to aboid BC breaks.

show more ...


# 1a5fc6e1 13-Feb-2023 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix assertion failure when var_dump'ing void FFI result (#10568)


# d2cdfdbe 04-Feb-2023 rj1

fixed some misspellings (#10503)


# 560ca9c7 24-Jan-2023 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix incorrect bitshifting and masking in ffi bitfield (#10403)

When a uint8_t is bitshifted to the left, it is actually promoted to an
int. For the current code this has the effect of a

Fix incorrect bitshifting and masking in ffi bitfield (#10403)

When a uint8_t is bitshifted to the left, it is actually promoted to an
int. For the current code this has the effect of a wrong sign-extension,
and the result will also wrongly become zero when insert_pos >= 32.
Fix this by adding an explicit cast.
Furthermore, the partial prefix byte mask was computed incorrectly: the
byte is already shifted so the mask should not account for the shift.

show more ...


# 7936c808 23-Jan-2023 Máté Kocsis

Fix GH-8329 Print true/false instead of bool in error and debug messages (#8385)


# 6f785b03 05-Jan-2023 Marcos Marcolin

chore: remove semicolon left over.

Closes GH-10236.


# 289822d3 04-Nov-2022 Thomas PIRAS

Add a proper error message for ffi load

We call dlerror when a library failed to load properly.

Closes GH-9913.


# d4ad9b72 23-Sep-2022 Ilija Tovilo

Throw in FFI::addr() when referencing temporary pointer

Closes GH-9601


# a01dd9fe 14-Sep-2022 Bob Weinand

Revert "Port all internally used classes to use default_object_handlers"

This reverts commit 94ee4f9834743ca74f6c9653863273277ce6c61a.

The commit was a bit too late to be included i

Revert "Port all internally used classes to use default_object_handlers"

This reverts commit 94ee4f9834743ca74f6c9653863273277ce6c61a.

The commit was a bit too late to be included in PHP 8.2 RC1. Given it's a massive ABI break, we decide to postpone the change to PHP 8.3.

show more ...


Revision tags: php-8.2.0RC1, php-8.1.10
# 1ad59b32 30-Aug-2022 George Peter Banyard

Update INI validator and displayers depending on INI type

Closes GH-9451


# 03fd4054 06-Sep-2022 Tim Düsterhus

Use php_info_print_table_header for actual column headers only (#9485)

Using php_info_print_table_header() for "Foo: bar" looks odd and out of place,
because the whole line is colored. I

Use php_info_print_table_header for actual column headers only (#9485)

Using php_info_print_table_header() for "Foo: bar" looks odd and out of place,
because the whole line is colored. It is also questionable from a HTML
semantics point of view, because it does not described the columns that follow.

The use of this across extensions is inconsistent. It was part of the skeleton,
but ext/date or ext/json already use a regular row.

show more ...


Revision tags: php-8.0.23
# 94ee4f98 24-Aug-2022 Bob Weinand

Port all internally used classes to use default_object_handlers

Signed-off-by: Bob Weinand <bobwei9@hotmail.com>


123456