com php-src: fix datatype mismatches, remove dead part of code: ext/com_dotnet/com_typeinfo.c ext/com_dotnet/com_va riant.c

From: Date: Thu, 13 Nov 2014 18:57:29 +0000
Subject: com php-src: fix datatype mismatches, remove dead part of code: ext/com_dotnet/com_typeinfo.c ext/com_dotnet/com_va riant.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-83088@lists.php.net to get a copy of this message
Commit: c865472ef0c431cf3c6ec153736881d13e8a6883 Author: Anatol Belski <ab@php.net> Thu, 13 Nov 2014 14:17:41 +0100 Parents: cf979ca6fe0309f494897283bb95f8abf2398d72 Branches: master Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=c865472ef0c431cf3c6ec153736881d13e8a6883 Log: fix datatype mismatches, remove dead part of code Changed paths: M ext/com_dotnet/com_typeinfo.c M ext/com_dotnet/com_variant.c Diff: diff --git a/ext/com_dotnet/com_typeinfo.c b/ext/com_dotnet/com_typeinfo.c index 17b69d2..ac5777c 100644 --- a/ext/com_dotnet/com_typeinfo.c +++ b/ext/com_dotnet/com_typeinfo.c @@ -71,7 +71,7 @@ PHP_COM_DOTNET_API ITypeLib *php_com_load_typelib(char *search_string, int codep if (FAILED(hr) && (major == NULL || minor == NULL)) { IDispatch *disp = NULL; ITypeInfo *info = NULL; - int idx; + UINT idx; if (SUCCEEDED(hr = CoCreateInstance(&clsid, NULL, CLSCTX_SERVER, &IID_IDispatch, (LPVOID*)&disp)) && SUCCEEDED(hr = IDispatch_GetTypeInfo(disp, 0, LANG_NEUTRAL, &info))) { @@ -96,7 +96,7 @@ PHP_COM_DOTNET_API ITypeLib *php_com_load_typelib(char *search_string, int codep DWORD VersionCount; char version[20]; char *libname; - DWORD libnamelen; + long libnamelen; if (ERROR_SUCCESS == RegOpenKeyEx(HKEY_CLASSES_ROOT, "TypeLib", 0, KEY_READ, &hkey) && ERROR_SUCCESS == RegQueryInfoKey(hkey, NULL, NULL, NULL, &SubKeys, @@ -116,7 +116,7 @@ PHP_COM_DOTNET_API ITypeLib *php_com_load_typelib(char *search_string, int codep continue; } /* get the default value for this key and compare */ - libnamelen = (DWORD)strlen(search_string)+1; + libnamelen = (long)strlen(search_string)+1; if (ERROR_SUCCESS == RegQueryValue(hsubkey, version, libname, &libnamelen)) { if (0 == stricmp(libname, search_string)) { char *str = NULL; diff --git a/ext/com_dotnet/com_variant.c b/ext/com_dotnet/com_variant.c index 6a81eed..7317b8d 100644 --- a/ext/com_dotnet/com_variant.c +++ b/ext/com_dotnet/com_variant.c @@ -39,8 +39,7 @@ static void safe_array_from_zval(VARIANT *v, zval *z, int codepage TSRMLS_DC) HashPosition pos; int keytype; zend_string *strindex; - zend_long intindex = -1; - zend_long max_index = 0; + zend_ulong intindex = 0; VARIANT *va; zval *item; @@ -54,15 +53,15 @@ static void safe_array_from_zval(VARIANT *v, zval *z, int codepage TSRMLS_DC) goto bogus; } else if (HASH_KEY_NON_EXISTENT == keytype) { break; - } - if (intindex > max_index) { - max_index = intindex; + } else if (intindex > UINT_MAX) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "COM: max number %u of elements in safe array exceeded", UINT_MAX); + break; } } /* allocate the structure */ bound.lLbound = 0; - bound.cElements = (ULONG)(intindex + 1); + bound.cElements = zend_hash_num_elements(HASH_OF(z)); sa = SafeArrayCreate(VT_VARIANT, 1, &bound); /* get a lock on the array itself */

« previous php.cvs (#83088) next »