Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion NEWS
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ PHP NEWS
- Fileinfo:
. Fixed bug GH-20679 (finfo_file() doesn't work on remote resources).
(ndossche)
. Fixed bug #66095 (Hide libmagic dynamic symbols). (orlitzky)

- Hash:
. Upgrade xxHash to 0.8.2. (timwolla)
Expand All @@ -51,7 +52,7 @@ PHP NEWS
small value). (David Carlier)

- Mail:
. Fixed bug GH-20862 (null pointer dereference in
. Fixed bug GH-20862 (null pointer dereference in
php_mail_detect_multiple_crlf via error_log (jordikroon)

- Mbstring:
Expand Down
16 changes: 9 additions & 7 deletions Zend/zend_string.c
Original file line number Diff line number Diff line change
Expand Up @@ -477,9 +477,10 @@ ZEND_API zend_string *zend_string_concat2(
size_t len = str1_len + str2_len;
zend_string *res = zend_string_alloc(len, 0);

memcpy(ZSTR_VAL(res), str1, str1_len);
memcpy(ZSTR_VAL(res) + str1_len, str2, str2_len);
ZSTR_VAL(res)[len] = '\0';
char *p = ZSTR_VAL(res);
p = zend_mempcpy(p, str1, str1_len);
p = zend_mempcpy(p, str2, str2_len);
*p++ = '\0';

return res;
}
Expand All @@ -492,10 +493,11 @@ ZEND_API zend_string *zend_string_concat3(
size_t len = str1_len + str2_len + str3_len;
zend_string *res = zend_string_alloc(len, 0);

memcpy(ZSTR_VAL(res), str1, str1_len);
memcpy(ZSTR_VAL(res) + str1_len, str2, str2_len);
memcpy(ZSTR_VAL(res) + str1_len + str2_len, str3, str3_len);
ZSTR_VAL(res)[len] = '\0';
char *p = ZSTR_VAL(res);
p = zend_mempcpy(p, str1, str1_len);
p = zend_mempcpy(p, str2, str2_len);
p = zend_mempcpy(p, str3, str3_len);
*p++ = '\0';

return res;
}
Expand Down
8 changes: 4 additions & 4 deletions build/gen_stub.php
Original file line number Diff line number Diff line change
Expand Up @@ -1280,8 +1280,8 @@ class FuncInfo {
private bool $supportsCompileTimeEval;
public readonly bool $verify;
/** @var ArgInfo[] */
public readonly array $args;
public readonly ReturnInfo $return;
public /* readonly */ array $args;
public /* readonly */ ReturnInfo $return;
private readonly int $numRequiredArgs;
public readonly ?string $cond;
public bool $isUndocumentable;
Expand Down Expand Up @@ -3371,9 +3371,9 @@ class ClassInfo {
/** @var Name[] */
private readonly array $implements;
/** @var ConstInfo[] */
public readonly array $constInfos;
public /* readonly */ array $constInfos;
/** @var PropertyInfo[] */
private readonly array $propertyInfos;
private /* readonly */ array $propertyInfos;
/** @var FuncInfo[] */
public array $funcInfos;
/** @var EnumCaseInfo[] */
Expand Down
19 changes: 17 additions & 2 deletions ext/fileinfo/libmagic.patch
Original file line number Diff line number Diff line change
Expand Up @@ -1727,7 +1727,7 @@ diff -u libmagic.orig/encoding.c libmagic/encoding.c
}
diff -u libmagic.orig/file.h libmagic/file.h
--- libmagic.orig/file.h 2024-11-27 10:37:00.000000000 -0500
+++ libmagic/file.h 2026-03-25 08:13:23.336328498 -0400
+++ libmagic/file.h 2026-03-25 16:14:40.128668705 -0400
@@ -27,15 +27,13 @@
*/
/*
Expand Down Expand Up @@ -1767,6 +1767,21 @@ diff -u libmagic.orig/file.h libmagic/file.h

#define ENABLE_CONDITIONALS

@@ -109,12 +102,12 @@

#if HAVE_VISIBILITY
# if defined(WIN32)
-# define file_public __declspec(dllexport)
+# define file_public
# ifndef file_protected
# define file_protected
# endif
# else
-# define file_public __attribute__((__visibility__("default")))
+# define file_public __attribute__((__visibility__("hidden")))
# ifndef file_protected
# define file_protected __attribute__((__visibility__("hidden")))
# endif
@@ -179,7 +172,7 @@
#define MAXstring 128 /* max len of "string" types */

Expand Down Expand Up @@ -3075,7 +3090,7 @@ diff -u libmagic.orig/magic.c libmagic/magic.c
}
return file_getbuffer(ms);
diff -u libmagic.orig/magic.h libmagic/magic.h
--- libmagic.orig/magic.h 2026-03-25 08:16:04.280413419 -0400
--- libmagic.orig/magic.h 2026-03-25 16:14:49.284673536 -0400
+++ libmagic/magic.h 2026-03-20 12:10:19.777614667 -0400
@@ -47,8 +47,6 @@
* extensions */
Expand Down
4 changes: 2 additions & 2 deletions ext/fileinfo/libmagic/file.h
Original file line number Diff line number Diff line change
Expand Up @@ -102,12 +102,12 @@

#if HAVE_VISIBILITY
# if defined(WIN32)
# define file_public __declspec(dllexport)
# define file_public
# ifndef file_protected
# define file_protected
# endif
# else
# define file_public __attribute__((__visibility__("default")))
# define file_public __attribute__((__visibility__("hidden")))
# ifndef file_protected
# define file_protected __attribute__((__visibility__("hidden")))
# endif
Expand Down
2 changes: 1 addition & 1 deletion ext/soap/php_packet_soap.c
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ bool parse_packet_soap(zval *this_ptr, char *buffer, int buffer_size, sdlFunctio

ZVAL_NULL(return_value);

/* Response for one-way opearation */
/* Response for one-way operation */
if (buffer_size == 0) {
return true;
}
Expand Down
2 changes: 1 addition & 1 deletion ext/soap/php_sdl.c
Original file line number Diff line number Diff line change
Expand Up @@ -3362,7 +3362,7 @@ sdlPtr get_sdl(zval *this_ptr, char *uri, zend_long cache_wsdl)

zend_hash_str_update_mem(SOAP_GLOBAL(mem_cache), uri,
uri_len, &p, sizeof(sdl_cache_bucket));
/* remove non-persitent sdl structure */
/* remove non-persistent sdl structure */
delete_sdl_impl(sdl);
/* and replace it with persistent one */
sdl = psdl;
Expand Down
2 changes: 1 addition & 1 deletion ext/soap/php_sdl.h
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,7 @@ struct _sdlContentModel {
union {
sdlTypePtr element; /* pointer to element */
sdlTypePtr group; /* pointer to group */
HashTable *content; /* array of sdlContentModel for sequnce,all,choice*/
HashTable *content; /* array of sdlContentModel for sequence,all,choice*/
char *group_ref; /* reference to group */
} u;
};
Expand Down
4 changes: 2 additions & 2 deletions ext/soap/soap.c
Original file line number Diff line number Diff line change
Expand Up @@ -1951,7 +1951,7 @@ static zend_never_inline ZEND_COLD void soap_real_error_handler(int error_num, z
} else {
buffer = zend_string_copy(message);

/* Get output buffer and send as fault detials */
/* Get output buffer and send as fault details */
zval outbuflen;
if (php_output_get_length(&outbuflen) != FAILURE && Z_LVAL(outbuflen) != 0) {
php_output_get_contents(&outbuf);
Expand Down Expand Up @@ -2834,7 +2834,7 @@ PHP_METHOD(SoapClient, __doRequest)
}
/* }}} */

/* {{{ Sets cookie thet will sent with SOAP request.
/* {{{ Sets cookie that will sent with SOAP request.
The call to this function will effect all following calls of SOAP methods.
If value is not specified cookie is removed. */
PHP_METHOD(SoapClient, __setCookie)
Expand Down
2 changes: 1 addition & 1 deletion ext/zend_test/test.stub.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
/**
* @generate-class-entries static
* @generate-c-enums
* @generate-legacy-arginfo 80000
* @generate-legacy-arginfo 70000
* @undocumentable
*/
namespace {
Expand Down
2 changes: 1 addition & 1 deletion ext/zend_test/test_arginfo.h

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions ext/zend_test/test_decl.h

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading