[mapguide-commits] r10180 - in branches/4.0/MgDev/Oem/php: . include/Zend include/ext/hash include/ext/standard include/main include/main/streams include/win32 lib script

svn_mapguide at osgeo.org svn_mapguide at osgeo.org
Fri Aug 29 02:27:36 PDT 2025


Author: jng
Date: 2025-08-29 02:27:35 -0700 (Fri, 29 Aug 2025)
New Revision: 10180

Modified:
   branches/4.0/MgDev/Oem/php/PROVENANCE.TXT
   branches/4.0/MgDev/Oem/php/include/Zend/zend.h
   branches/4.0/MgDev/Oem/php/include/Zend/zend_cpuinfo.h
   branches/4.0/MgDev/Oem/php/include/Zend/zend_multiply.h
   branches/4.0/MgDev/Oem/php/include/Zend/zend_portability.h
   branches/4.0/MgDev/Oem/php/include/Zend/zend_types.h
   branches/4.0/MgDev/Oem/php/include/Zend/zend_vm_def.h
   branches/4.0/MgDev/Oem/php/include/Zend/zend_vm_execute.h
   branches/4.0/MgDev/Oem/php/include/ext/hash/php_hash_xxhash.h
   branches/4.0/MgDev/Oem/php/include/ext/standard/basic_functions_arginfo.h
   branches/4.0/MgDev/Oem/php/include/main/config.w32.h
   branches/4.0/MgDev/Oem/php/include/main/php_streams.h
   branches/4.0/MgDev/Oem/php/include/main/php_version.h
   branches/4.0/MgDev/Oem/php/include/main/streams/php_stream_context.h
   branches/4.0/MgDev/Oem/php/include/win32/signal.h
   branches/4.0/MgDev/Oem/php/lib/php8.lib
   branches/4.0/MgDev/Oem/php/script/phpize.js
Log:
Update PHP devel package

Modified: branches/4.0/MgDev/Oem/php/PROVENANCE.TXT
===================================================================
--- branches/4.0/MgDev/Oem/php/PROVENANCE.TXT	2025-08-29 09:18:24 UTC (rev 10179)
+++ branches/4.0/MgDev/Oem/php/PROVENANCE.TXT	2025-08-29 09:27:35 UTC (rev 10180)
@@ -1,6 +1,6 @@
 The contents of this directory originate from the PHP 8.3.20 development package SDK with key headers patched for ACE compatbility.
 
-https://windows.php.net/downloads/releases/php-devel-pack-8.3.20-nts-Win32-vs16-x64.zip
-sha256: db1ed03b76c5f7e7a2f08ca7904e3184a9f278813f510fa9869e68e2453c40e3
+https://windows.php.net/downloads/releases/php-devel-pack-8.3.25-nts-Win32-vs16-x64.zip
+sha256: 3af2f9661d0995d8adf4d9fb906929ca01aeaea3db2efc5e56fa618a7f98af6d
 
 Refer to CHANGES.TXT for details on what was patched
\ No newline at end of file

Modified: branches/4.0/MgDev/Oem/php/include/Zend/zend.h
===================================================================
--- branches/4.0/MgDev/Oem/php/include/Zend/zend.h	2025-08-29 09:18:24 UTC (rev 10179)
+++ branches/4.0/MgDev/Oem/php/include/Zend/zend.h	2025-08-29 09:27:35 UTC (rev 10180)
@@ -20,7 +20,7 @@
 #ifndef ZEND_H
 #define ZEND_H
 
-#define ZEND_VERSION "4.3.20"
+#define ZEND_VERSION "4.3.25"
 
 #define ZEND_ENGINE_3
 

Modified: branches/4.0/MgDev/Oem/php/include/Zend/zend_cpuinfo.h
===================================================================
--- branches/4.0/MgDev/Oem/php/include/Zend/zend_cpuinfo.h	2025-08-29 09:18:24 UTC (rev 10179)
+++ branches/4.0/MgDev/Oem/php/include/Zend/zend_cpuinfo.h	2025-08-29 09:27:35 UTC (rev 10180)
@@ -126,58 +126,86 @@
  * functions */
 ZEND_NO_SANITIZE_ADDRESS
 static inline int zend_cpu_supports_sse2(void) {
+#ifdef __aarch64__
+	return 0;
+#else
 #if PHP_HAVE_BUILTIN_CPU_INIT
 	__builtin_cpu_init();
 #endif
 	return __builtin_cpu_supports("sse2");
+#endif
 }
 
 ZEND_NO_SANITIZE_ADDRESS
 static inline int zend_cpu_supports_sse3(void) {
+#ifdef __aarch64__
+	return 0;
+#else
 #if PHP_HAVE_BUILTIN_CPU_INIT
 	__builtin_cpu_init();
 #endif
 	return __builtin_cpu_supports("sse3");
+#endif
 }
 
 ZEND_NO_SANITIZE_ADDRESS
 static inline int zend_cpu_supports_ssse3(void) {
+#ifdef __aarch64__
+	return 0;
+#else
 #if PHP_HAVE_BUILTIN_CPU_INIT
 	__builtin_cpu_init();
 #endif
 	return __builtin_cpu_supports("ssse3");
+#endif
 }
 
 ZEND_NO_SANITIZE_ADDRESS
 static inline int zend_cpu_supports_sse41(void) {
+#ifdef __aarch64__
+	return 0;
+#else
 #if PHP_HAVE_BUILTIN_CPU_INIT
 	__builtin_cpu_init();
 #endif
 	return __builtin_cpu_supports("sse4.1");
+#endif
 }
 
 ZEND_NO_SANITIZE_ADDRESS
 static inline int zend_cpu_supports_sse42(void) {
+#ifdef __aarch64__
+	return 0;
+#else
 #if PHP_HAVE_BUILTIN_CPU_INIT
 	__builtin_cpu_init();
 #endif
 	return __builtin_cpu_supports("sse4.2");
+#endif
 }
 
 ZEND_NO_SANITIZE_ADDRESS
 static inline int zend_cpu_supports_avx(void) {
+#ifdef __aarch64__
+	return 0;
+#else
 #if PHP_HAVE_BUILTIN_CPU_INIT
 	__builtin_cpu_init();
 #endif
 	return __builtin_cpu_supports("avx");
+#endif
 }
 
 ZEND_NO_SANITIZE_ADDRESS
 static inline int zend_cpu_supports_avx2(void) {
+#ifdef __aarch64__
+	return 0;
+#else
 #if PHP_HAVE_BUILTIN_CPU_INIT
 	__builtin_cpu_init();
 #endif
 	return __builtin_cpu_supports("avx2");
+#endif
 }
 
 #if PHP_HAVE_AVX512_SUPPORTS

Modified: branches/4.0/MgDev/Oem/php/include/Zend/zend_multiply.h
===================================================================
--- branches/4.0/MgDev/Oem/php/include/Zend/zend_multiply.h	2025-08-29 09:18:24 UTC (rev 10179)
+++ branches/4.0/MgDev/Oem/php/include/Zend/zend_multiply.h	2025-08-29 09:27:35 UTC (rev 10180)
@@ -176,13 +176,15 @@
 		__asm__ ("mull %3\n\tadcl $0,%1"
 	     : "=&a"(res), "=&d" (m_overflow)
 	     : "%0"(res),
-	       "rm"(size));
+	       "rm"(size)
+	     : "cc");
 	} else {
 		__asm__ ("mull %3\n\taddl %4,%0\n\tadcl $0,%1"
 	     : "=&a"(res), "=&d" (m_overflow)
 	     : "%0"(res),
 	       "rm"(size),
-	       "rm"(offset));
+	       "rm"(offset)
+	     : "cc");
 	}
 
 	if (UNEXPECTED(m_overflow)) {
@@ -211,7 +213,8 @@
 			"adc $0,%1"
 			: "=&a"(res), "=&d" (m_overflow)
 			: "%0"(res),
-			  "rm"(size));
+			  "rm"(size)
+			: "cc");
 	} else {
 		__asm__ ("mul" LP_SUFF  " %3\n\t"
 			"add %4,%0\n\t"
@@ -219,7 +222,8 @@
 			: "=&a"(res), "=&d" (m_overflow)
 			: "%0"(res),
 			  "rm"(size),
-			  "rm"(offset));
+			  "rm"(offset)
+			: "cc");
 	}
 #undef LP_SUFF
 	if (UNEXPECTED(m_overflow)) {

Modified: branches/4.0/MgDev/Oem/php/include/Zend/zend_portability.h
===================================================================
--- branches/4.0/MgDev/Oem/php/include/Zend/zend_portability.h	2025-08-29 09:18:24 UTC (rev 10179)
+++ branches/4.0/MgDev/Oem/php/include/Zend/zend_portability.h	2025-08-29 09:27:35 UTC (rev 10180)
@@ -761,7 +761,9 @@
 /** @deprecated */
 #define ZEND_CGG_DIAGNOSTIC_IGNORED_END ZEND_DIAGNOSTIC_IGNORED_END
 
-#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 201112L) /* C11 */
+#if defined(__cplusplus)
+# define ZEND_STATIC_ASSERT(c, m) static_assert((c), m)
+#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 201112L) /* C11 */
 # define ZEND_STATIC_ASSERT(c, m) _Static_assert((c), m)
 #else
 # define ZEND_STATIC_ASSERT(c, m)

Modified: branches/4.0/MgDev/Oem/php/include/Zend/zend_types.h
===================================================================
--- branches/4.0/MgDev/Oem/php/include/Zend/zend_types.h	2025-08-29 09:18:24 UTC (rev 10179)
+++ branches/4.0/MgDev/Oem/php/include/Zend/zend_types.h	2025-08-29 09:27:35 UTC (rev 10180)
@@ -731,6 +731,18 @@
 		} \
 	} while (0)
 
+#define GC_TRY_DTOR_NO_REF(p) \
+	do { \
+		zend_refcounted_h *_p = &(p)->gc; \
+		if (!(_p->u.type_info & GC_IMMUTABLE)) { \
+			if (zend_gc_delref(_p) == 0) { \
+				rc_dtor_func((zend_refcounted *)_p); \
+			} else { \
+				gc_check_possible_root_no_ref((zend_refcounted *)_p); \
+			} \
+		} \
+	} while (0)
+
 #define GC_TYPE_MASK				0x0000000f
 #define GC_FLAGS_MASK				0x000003f0
 #define GC_INFO_MASK				0xfffffc00

Modified: branches/4.0/MgDev/Oem/php/include/Zend/zend_vm_def.h
===================================================================
--- branches/4.0/MgDev/Oem/php/include/Zend/zend_vm_def.h	2025-08-29 09:18:24 UTC (rev 10179)
+++ branches/4.0/MgDev/Oem/php/include/Zend/zend_vm_def.h	2025-08-29 09:27:35 UTC (rev 10180)
@@ -5236,6 +5236,11 @@
 						}
 
 						name = Z_STR_P(&key);
+
+						zend_ulong tmp;
+						if (ZEND_HANDLE_NUMERIC(name, tmp)) {
+							name = NULL;
+						}
 					}
 				}
 
@@ -6157,17 +6162,22 @@
 		zval *val;
 
 		if (HT_IS_PACKED(ht) && (zend_hash_num_elements(result_ht) == 0 || HT_IS_PACKED(result_ht))) {
-			zend_hash_extend(result_ht, result_ht->nNumUsed + zend_hash_num_elements(ht), 1);
-			ZEND_HASH_FILL_PACKED(result_ht) {
-				ZEND_HASH_PACKED_FOREACH_VAL(ht, val) {
-					if (UNEXPECTED(Z_ISREF_P(val)) &&
-						UNEXPECTED(Z_REFCOUNT_P(val) == 1)) {
-						val = Z_REFVAL_P(val);
-					}
-					Z_TRY_ADDREF_P(val);
-					ZEND_HASH_FILL_ADD(val);
-				} ZEND_HASH_FOREACH_END();
-			} ZEND_HASH_FILL_END();
+			/* zend_hash_extend() skips initialization when the number of elements is 0,
+			 * but the code below expects that result_ht is initialized as packed.
+			 * We can just skip the work in that case. */
+			if (result_ht->nNumUsed + zend_hash_num_elements(ht) > 0) {
+				zend_hash_extend(result_ht, result_ht->nNumUsed + zend_hash_num_elements(ht), 1);
+				ZEND_HASH_FILL_PACKED(result_ht) {
+					ZEND_HASH_PACKED_FOREACH_VAL(ht, val) {
+						if (UNEXPECTED(Z_ISREF_P(val)) &&
+							UNEXPECTED(Z_REFCOUNT_P(val) == 1)) {
+							val = Z_REFVAL_P(val);
+						}
+						Z_TRY_ADDREF_P(val);
+						ZEND_HASH_FILL_ADD(val);
+					} ZEND_HASH_FOREACH_END();
+				} ZEND_HASH_FILL_END();
+			}
 		} else {
 			zend_string *key;
 
@@ -6281,6 +6291,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (OP1_TYPE != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -8980,7 +8991,6 @@
 	value = (zval*)((char*)ht->arData + (opline->extended_value & ~(ZEND_BIND_REF|ZEND_BIND_IMPLICIT|ZEND_BIND_EXPLICIT)));
 
 	if (opline->extended_value & ZEND_BIND_REF) {
-		i_zval_ptr_dtor(variable_ptr);
 		if (UNEXPECTED(!Z_ISREF_P(value))) {
 			zend_reference *ref = (zend_reference*)emalloc(sizeof(zend_reference));
 			GC_SET_REFCOUNT(ref, 2);
@@ -8995,9 +9005,11 @@
 			ref->sources.ptr = NULL;
 			Z_REF_P(value) = ref;
 			Z_TYPE_INFO_P(value) = IS_REFERENCE_EX;
+			i_zval_ptr_dtor(variable_ptr);
 			ZVAL_REF(variable_ptr, ref);
 		} else {
 			Z_ADDREF_P(value);
+			i_zval_ptr_dtor(variable_ptr);
 			ZVAL_REF(variable_ptr, Z_REF_P(value));
 			if (OP2_TYPE != IS_UNUSED) {
 				FREE_OP2();

Modified: branches/4.0/MgDev/Oem/php/include/Zend/zend_vm_execute.h
===================================================================
--- branches/4.0/MgDev/Oem/php/include/Zend/zend_vm_execute.h	2025-08-29 09:18:24 UTC (rev 10179)
+++ branches/4.0/MgDev/Oem/php/include/Zend/zend_vm_execute.h	2025-08-29 09:27:35 UTC (rev 10180)
@@ -2355,6 +2355,11 @@
 						}
 
 						name = Z_STR_P(&key);
+
+						zend_ulong tmp;
+						if (ZEND_HANDLE_NUMERIC(name, tmp)) {
+							name = NULL;
+						}
 					}
 				}
 
@@ -2652,17 +2657,22 @@
 		zval *val;
 
 		if (HT_IS_PACKED(ht) && (zend_hash_num_elements(result_ht) == 0 || HT_IS_PACKED(result_ht))) {
-			zend_hash_extend(result_ht, result_ht->nNumUsed + zend_hash_num_elements(ht), 1);
-			ZEND_HASH_FILL_PACKED(result_ht) {
-				ZEND_HASH_PACKED_FOREACH_VAL(ht, val) {
-					if (UNEXPECTED(Z_ISREF_P(val)) &&
-						UNEXPECTED(Z_REFCOUNT_P(val) == 1)) {
-						val = Z_REFVAL_P(val);
-					}
-					Z_TRY_ADDREF_P(val);
-					ZEND_HASH_FILL_ADD(val);
-				} ZEND_HASH_FOREACH_END();
-			} ZEND_HASH_FILL_END();
+			/* zend_hash_extend() skips initialization when the number of elements is 0,
+			 * but the code below expects that result_ht is initialized as packed.
+			 * We can just skip the work in that case. */
+			if (result_ht->nNumUsed + zend_hash_num_elements(ht) > 0) {
+				zend_hash_extend(result_ht, result_ht->nNumUsed + zend_hash_num_elements(ht), 1);
+				ZEND_HASH_FILL_PACKED(result_ht) {
+					ZEND_HASH_PACKED_FOREACH_VAL(ht, val) {
+						if (UNEXPECTED(Z_ISREF_P(val)) &&
+							UNEXPECTED(Z_REFCOUNT_P(val) == 1)) {
+							val = Z_REFVAL_P(val);
+						}
+						Z_TRY_ADDREF_P(val);
+						ZEND_HASH_FILL_ADD(val);
+					} ZEND_HASH_FOREACH_END();
+				} ZEND_HASH_FILL_END();
+			}
 		} else {
 			zend_string *key;
 
@@ -7424,6 +7434,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_CONST != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -9765,6 +9776,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_CONST != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -10695,6 +10707,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_CONST != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -12161,6 +12174,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_CONST != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -20189,6 +20203,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_TMP_VAR != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -20633,6 +20648,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_TMP_VAR != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -21094,6 +21110,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_TMP_VAR != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -21498,6 +21515,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_TMP_VAR != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -25327,6 +25345,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_VAR != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -27777,6 +27796,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_VAR != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -29855,6 +29875,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_VAR != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -32165,6 +32186,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_VAR != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -34399,6 +34421,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_UNUSED != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -36281,6 +36304,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_UNUSED != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -36918,6 +36942,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_UNUSED != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -38776,6 +38801,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_UNUSED != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -40548,7 +40574,6 @@
 	value = (zval*)((char*)ht->arData + (opline->extended_value & ~(ZEND_BIND_REF|ZEND_BIND_IMPLICIT|ZEND_BIND_EXPLICIT)));
 
 	if (opline->extended_value & ZEND_BIND_REF) {
-		i_zval_ptr_dtor(variable_ptr);
 		if (UNEXPECTED(!Z_ISREF_P(value))) {
 			zend_reference *ref = (zend_reference*)emalloc(sizeof(zend_reference));
 			GC_SET_REFCOUNT(ref, 2);
@@ -40563,9 +40588,11 @@
 			ref->sources.ptr = NULL;
 			Z_REF_P(value) = ref;
 			Z_TYPE_INFO_P(value) = IS_REFERENCE_EX;
+			i_zval_ptr_dtor(variable_ptr);
 			ZVAL_REF(variable_ptr, ref);
 		} else {
 			Z_ADDREF_P(value);
+			i_zval_ptr_dtor(variable_ptr);
 			ZVAL_REF(variable_ptr, Z_REF_P(value));
 			if (opline->op2_type != IS_UNUSED) {
 				FREE_OP(opline->op2_type, opline->op2.var);
@@ -43871,6 +43898,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_CV != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -47511,6 +47539,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_CV != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -49480,6 +49509,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_CV != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;
@@ -52998,6 +53028,7 @@
 	uint32_t size;
 	USE_OPLINE
 
+	SAVE_OPLINE();
 	array = EX_VAR(opline->result.var);
 	if (IS_CV != IS_UNUSED) {
 		size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT;

Modified: branches/4.0/MgDev/Oem/php/include/ext/hash/php_hash_xxhash.h
===================================================================
--- branches/4.0/MgDev/Oem/php/include/ext/hash/php_hash_xxhash.h	2025-08-29 09:18:24 UTC (rev 10179)
+++ branches/4.0/MgDev/Oem/php/include/ext/hash/php_hash_xxhash.h	2025-08-29 09:27:35 UTC (rev 10180)
@@ -18,7 +18,7 @@
 #define PHP_HASH_XXHASH_H
 
 #define XXH_INLINE_ALL 1
-#include "xxhash.h"
+#include "xxhash/xxhash.h"
 
 typedef struct {
 	XXH32_state_t s;

Modified: branches/4.0/MgDev/Oem/php/include/ext/standard/basic_functions_arginfo.h
===================================================================
--- branches/4.0/MgDev/Oem/php/include/ext/standard/basic_functions_arginfo.h	2025-08-29 09:18:24 UTC (rev 10179)
+++ branches/4.0/MgDev/Oem/php/include/ext/standard/basic_functions_arginfo.h	2025-08-29 09:27:35 UTC (rev 10180)
@@ -1,5 +1,5 @@
 /* This is a generated file, edit the .stub.php file instead.
- * Stub hash: 7389d094a842a2289cd32cb37386e5e40ea7e031 */
+ * Stub hash: 60960e59f6310521a958b6fb0917650854d19612 */
 
 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_set_time_limit, 0, 1, _IS_BOOL, 0)
 	ZEND_ARG_TYPE_INFO(0, seconds, IS_LONG, 0)

Modified: branches/4.0/MgDev/Oem/php/include/main/config.w32.h
===================================================================
--- branches/4.0/MgDev/Oem/php/include/main/config.w32.h	2025-08-29 09:18:24 UTC (rev 10179)
+++ branches/4.0/MgDev/Oem/php/include/main/config.w32.h	2025-08-29 09:27:35 UTC (rev 10180)
@@ -145,7 +145,7 @@
 /* values determined by configure.js */
 
 /* Windows build system version */
-#define PHP_BUILD_SYSTEM "Microsoft Windows Server 2019 Datacenter [10.0.17763]"
+#define PHP_BUILD_SYSTEM "Microsoft Windows Server 2022 Datacenter [10.0.20348]"
 
 /* Configure line */
 #define CONFIGURE_COMMAND "cscript /nologo /e:jscript configure.js  \"--enable-snapshot-build\"" " \"--enable-debug-pack\" \"--disable-zts\" \"--with-pdo-oci=..\\..\\..\\..\\instantclient\\sdk,shared\"" " \"--with-oci8-19=..\\..\\..\\..\\instantclient\\sdk,shared\" \"--enable-object-out-dir=../obj/\"" " \"--enable-com-dotnet=shared\" \"--without-analyzer\" \"--with-pgo\""

Modified: branches/4.0/MgDev/Oem/php/include/main/php_streams.h
===================================================================
--- branches/4.0/MgDev/Oem/php/include/main/php_streams.h	2025-08-29 09:18:24 UTC (rev 10179)
+++ branches/4.0/MgDev/Oem/php/include/main/php_streams.h	2025-08-29 09:27:35 UTC (rev 10180)
@@ -223,6 +223,9 @@
 	/* whether stdio cast flushing is in progress */
 	uint16_t fclose_stdiocast_flush_in_progress:1;
 
+	/* whether fatal error happened and all operations should terminates as soon as possible */
+	uint16_t fatal_error:1;
+
 	char mode[16];			/* "rwb" etc. ala stdio */
 
 	uint32_t flags;	/* PHP_STREAM_FLAG_XXX */

Modified: branches/4.0/MgDev/Oem/php/include/main/php_version.h
===================================================================
--- branches/4.0/MgDev/Oem/php/include/main/php_version.h	2025-08-29 09:18:24 UTC (rev 10179)
+++ branches/4.0/MgDev/Oem/php/include/main/php_version.h	2025-08-29 09:27:35 UTC (rev 10180)
@@ -2,7 +2,7 @@
 /* edit configure.ac to change version number */
 #define PHP_MAJOR_VERSION 8
 #define PHP_MINOR_VERSION 3
-#define PHP_RELEASE_VERSION 20
+#define PHP_RELEASE_VERSION 25
 #define PHP_EXTRA_VERSION ""
-#define PHP_VERSION "8.3.20"
-#define PHP_VERSION_ID 80320
+#define PHP_VERSION "8.3.25"
+#define PHP_VERSION_ID 80325

Modified: branches/4.0/MgDev/Oem/php/include/main/streams/php_stream_context.h
===================================================================
--- branches/4.0/MgDev/Oem/php/include/main/streams/php_stream_context.h	2025-08-29 09:18:24 UTC (rev 10179)
+++ branches/4.0/MgDev/Oem/php/include/main/streams/php_stream_context.h	2025-08-29 09:27:35 UTC (rev 10180)
@@ -59,7 +59,8 @@
 		const char *wrappername, const char *optionname);
 PHPAPI void php_stream_context_set_option(php_stream_context *context,
 		const char *wrappername, const char *optionname, zval *optionvalue);
-
+void php_stream_context_unset_option(php_stream_context *context,
+	const char *wrappername, const char *optionname);
 PHPAPI php_stream_notifier *php_stream_notification_alloc(void);
 PHPAPI void php_stream_notification_free(php_stream_notifier *notifier);
 END_EXTERN_C()

Modified: branches/4.0/MgDev/Oem/php/include/win32/signal.h
===================================================================
--- branches/4.0/MgDev/Oem/php/include/win32/signal.h	2025-08-29 09:18:24 UTC (rev 10179)
+++ branches/4.0/MgDev/Oem/php/include/win32/signal.h	2025-08-29 09:27:35 UTC (rev 10180)
@@ -10,6 +10,7 @@
 #define	SIGPROF	27				/* profiling time alarm */
 
 PHP_WINUTIL_API void php_win32_signal_ctrl_handler_init(void);
+PHP_WINUTIL_API void php_win32_signal_ctrl_handler_request_shutdown(void);
 PHP_WINUTIL_API void php_win32_signal_ctrl_handler_shutdown(void);
 
 #endif /* PHP_WIN32_SIGNAL_H */

Modified: branches/4.0/MgDev/Oem/php/lib/php8.lib
===================================================================
(Binary files differ)

Modified: branches/4.0/MgDev/Oem/php/script/phpize.js
===================================================================
--- branches/4.0/MgDev/Oem/php/script/phpize.js	2025-08-29 09:18:24 UTC (rev 10179)
+++ branches/4.0/MgDev/Oem/php/script/phpize.js	2025-08-29 09:27:35 UTC (rev 10180)
@@ -3,9 +3,9 @@
 var VC_VERSION=1929
 var PHP_VERSION=8
 var PHP_MINOR_VERSION=3
-var PHP_RELEASE_VERSION=20
+var PHP_RELEASE_VERSION=25
 var PHP_EXTRA_VERSION=""
-var PHP_VERSION_STRING="8.3.20"
+var PHP_VERSION_STRING="8.3.25"
 
 /* Generated extensions list with mode (static/shared) */
 PHP_BCMATH_SHARED=false;



More information about the mapguide-commits mailing list