cvs: php4 /ext/com COM.c

From: Date: Mon, 09 Oct 2000 11:48:14 +0000
Subject: cvs: php4 /ext/com COM.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-1957@lists.php.net to get a copy of this message
zeev Mon Oct 9 04:48:14 2000 EDT Modified files: /php4/ext/com COM.c Log: Fix bug #6447 Index: php4/ext/com/COM.c diff -u php4/ext/com/COM.c:1.38 php4/ext/com/COM.c:1.39 --- php4/ext/com/COM.c:1.38 Sat Aug 26 05:53:12 2000 +++ php4/ext/com/COM.c Mon Oct 9 04:48:14 2000 @@ -697,6 +697,13 @@ hr = i_dispatch->lpVtbl->Invoke(i_dispatch, dispid, &IID_NULL, LOCALE_SYSTEM_DEFAULT, DISPATCH_PROPERTYPUT, &dispparams, NULL, NULL, 0); + if (FAILED(hr)) { + error_message = php_COM_error_message(hr); + php_error(E_WARNING,"PropPut() failed: %s\n", error_message); + LocalFree(error_message); + efree(propname); + RETURN_FALSE; + } dispparams.cArgs = 0; dispparams.cNamedArgs = 0; @@ -705,15 +712,13 @@ LOCALE_SYSTEM_DEFAULT, DISPATCH_PROPERTYGET, &dispparams, &var_result, NULL, 0); - if (FAILED(hr)) { - error_message = php_COM_error_message(hr); - php_error(E_WARNING,"PropPut() failed: %s\n", error_message); - LocalFree(error_message); - efree(propname); - RETURN_FALSE; - } - php_variant_to_pval(&var_result, return_value, 0); + if (SUCCEEDED(hr)) { + php_variant_to_pval(&var_result, return_value, 0); + } else { + *return_value = *value; + zval_copy_ctor(return_value); + } efree(propname); }

« previous php.cvs (#1957) next »