From 84400394500a6f2f0e605cc7d533ed451c0f9998 Mon Sep 17 00:00:00 2001 From: arshidkv12 Date: Tue, 17 Mar 2026 16:25:04 +0530 Subject: [PATCH 1/3] ext/com_dotnet: Use zend_register_long_constant instead of manual constant setup --- ext/com_dotnet/com_typeinfo.c | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/ext/com_dotnet/com_typeinfo.c b/ext/com_dotnet/com_typeinfo.c index 28306b5609b08..a908c43997f0d 100644 --- a/ext/com_dotnet/com_typeinfo.c +++ b/ext/com_dotnet/com_typeinfo.c @@ -224,16 +224,13 @@ PHP_COM_DOTNET_API zend_result php_com_import_typelib(ITypeLib *TL, int mode, in /* register the constant */ if (Z_TYPE(value) == IS_LONG) { - ZEND_CONSTANT_SET_FLAGS(&c, mode, 0); - ZVAL_LONG(&c.value, Z_LVAL(value)); - if (mode & CONST_PERSISTENT) { - /* duplicate string in a persistent manner */ - c.name = zend_string_dup(const_name, /* persistent */ true); - zend_string_release_ex(const_name, /* persistent */ false); - } else { - c.name = const_name; - } - zend_register_constant(&c); + zend_register_long_constant( + ZSTR_VAL(const_name), + ZSTR_LEN(const_name), + Z_LVAL(value), + mode, + module_number + ); } ITypeInfo_ReleaseVarDesc(TypeInfo, pVarDesc); } From 0757938b08db2244e40b98f31290b3e9426ee434 Mon Sep 17 00:00:00 2001 From: arshidkv12 Date: Tue, 17 Mar 2026 16:36:42 +0530 Subject: [PATCH 2/3] ext/com_dotnet: Use zend_register_long_constant instead of manual constant setup --- ext/com_dotnet/com_typeinfo.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ext/com_dotnet/com_typeinfo.c b/ext/com_dotnet/com_typeinfo.c index a908c43997f0d..c973e8734bd74 100644 --- a/ext/com_dotnet/com_typeinfo.c +++ b/ext/com_dotnet/com_typeinfo.c @@ -229,7 +229,7 @@ PHP_COM_DOTNET_API zend_result php_com_import_typelib(ITypeLib *TL, int mode, in ZSTR_LEN(const_name), Z_LVAL(value), mode, - module_number + 0 ); } ITypeInfo_ReleaseVarDesc(TypeInfo, pVarDesc); From 45cdcc0afedab00b495bd933016ffddfa6fe6e3e Mon Sep 17 00:00:00 2001 From: arshidkv12 Date: Tue, 17 Mar 2026 17:29:27 +0530 Subject: [PATCH 3/3] ext/com_dotnet: Use zend_register_long_constant instead of manual constant setup --- ext/com_dotnet/com_typeinfo.c | 1 - 1 file changed, 1 deletion(-) diff --git a/ext/com_dotnet/com_typeinfo.c b/ext/com_dotnet/com_typeinfo.c index c973e8734bd74..fb6173dd131ca 100644 --- a/ext/com_dotnet/com_typeinfo.c +++ b/ext/com_dotnet/com_typeinfo.c @@ -184,7 +184,6 @@ PHP_COM_DOTNET_API zend_result php_com_import_typelib(ITypeLib *TL, int mode, in VARDESC *pVarDesc; UINT NameCount; BSTR bstr_ids; - zend_constant c; zval *exists, results, value; if (TL == NULL) {