break;
case OE_IS_OBJECT:
- if(strstr(overloaded_property->element.value.str.val, "value"))
+ if(!strcmp(overloaded_property->element.value.str.val, "value"))
php_variant_to_pval(var_arg, &result, 0);
else
{
type.type = IS_STRING;
- if(strstr(arg_property->value.str.val, "bVal"))
+ if(!strcmp(arg_property->value.str.val, "bVal"))
{
type.value.str.val = "VT_UI1";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "iVal"))
+ else if(!strcmp(arg_property->value.str.val, "iVal"))
{
type.value.str.val = "VT_I2";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "lVal"))
+ else if(!strcmp(arg_property->value.str.val, "lVal"))
{
type.value.str.val = "VT_I4";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "fltVal"))
+ else if(!strcmp(arg_property->value.str.val, "fltVal"))
{
type.value.str.val = "VT_R4";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "dblVal"))
+ else if(!strcmp(arg_property->value.str.val, "dblVal"))
{
type.value.str.val = "VT_R8";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "boolVal"))
+ else if(!strcmp(arg_property->value.str.val, "boolVal"))
{
type.value.str.val = "VT_BOOL";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "scode"))
+ else if(!strcmp(arg_property->value.str.val, "scode"))
{
type.value.str.val = "VT_ERROR";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "cyVal"))
+ else if(!strcmp(arg_property->value.str.val, "cyVal"))
{
type.value.str.val = "VT_CY";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "date"))
+ else if(!strcmp(arg_property->value.str.val, "date"))
{
type.value.str.val = "VT_DATE";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "bstrVal"))
+ else if(!strcmp(arg_property->value.str.val, "bstrVal"))
{
type.value.str.val = "VT_BSTR";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pdecVal"))
+ else if(!strcmp(arg_property->value.str.val, "pdecVal"))
{
type.value.str.val = "VT_DECIMAL|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "punkVal"))
+ else if(!strcmp(arg_property->value.str.val, "punkVal"))
{
type.value.str.val = "VT_UNKNOWN";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pdispVal"))
+ else if(!strcmp(arg_property->value.str.val, "pdispVal"))
{
type.value.str.val = "VT_DISPATCH";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "parray"))
+ else if(!strcmp(arg_property->value.str.val, "parray"))
{
type.value.str.val = "VT_ARRAY";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pbVal"))
+ else if(!strcmp(arg_property->value.str.val, "pbVal"))
{
type.value.str.val = "VT_UI1|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "piVal"))
+ else if(!strcmp(arg_property->value.str.val, "piVal"))
{
type.value.str.val = "VT_I2|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "plVal"))
+ else if(!strcmp(arg_property->value.str.val, "plVal"))
{
type.value.str.val = "VT_I4|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pfltVal"))
+ else if(!strcmp(arg_property->value.str.val, "pfltVal"))
{
type.value.str.val = "VT_R4|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pdblVal"))
+ else if(!strcmp(arg_property->value.str.val, "pdblVal"))
{
type.value.str.val = "VT_R8|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pboolVal"))
+ else if(!strcmp(arg_property->value.str.val, "pboolVal"))
{
type.value.str.val = "VT_BOOL|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pscode"))
+ else if(!strcmp(arg_property->value.str.val, "pscode"))
{
type.value.str.val = "VT_ERROR|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pcyVal"))
+ else if(!strcmp(arg_property->value.str.val, "pcyVal"))
{
type.value.str.val = "VT_CY|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pdate"))
+ else if(!strcmp(arg_property->value.str.val, "pdate"))
{
type.value.str.val = "VT_DATE|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pbstrVal"))
+ else if(!strcmp(arg_property->value.str.val, "pbstrVal"))
{
type.value.str.val = "VT_BSTR|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "ppunkVal"))
+ else if(!strcmp(arg_property->value.str.val, "ppunkVal"))
{
type.value.str.val = "VT_UNKNOWN|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "ppdispVal"))
+ else if(!strcmp(arg_property->value.str.val, "ppdispVal"))
{
type.value.str.val = "VT_DISPATCH|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pparray"))
+ else if(!strcmp(arg_property->value.str.val, "pparray"))
{
type.value.str.val = "VT_ARRAY|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pvarVal"))
+ else if(!strcmp(arg_property->value.str.val, "pvarVal"))
{
type.value.str.val = "VT_VARIANT|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "byref"))
+ else if(!strcmp(arg_property->value.str.val, "byref"))
{
type.value.str.val = "VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "cVal"))
+ else if(!strcmp(arg_property->value.str.val, "cVal"))
{
type.value.str.val = "VT_I1";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "uiVal"))
+ else if(!strcmp(arg_property->value.str.val, "uiVal"))
{
type.value.str.val = "VT_UI2";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "ulVal"))
+ else if(!strcmp(arg_property->value.str.val, "ulVal"))
{
type.value.str.val = "VT_UI4";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "intVal"))
+ else if(!strcmp(arg_property->value.str.val, "intVal"))
{
type.value.str.val = "VT_INT";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "uintVal"))
+ else if(!strcmp(arg_property->value.str.val, "uintVal"))
{
type.value.str.val = "VT_UINT|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pcVal"))
+ else if(!strcmp(arg_property->value.str.val, "pcVal"))
{
type.value.str.val = "VT_I1|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "puiVal"))
+ else if(!strcmp(arg_property->value.str.val, "puiVal"))
{
type.value.str.val = "VT_UI2|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pulVal"))
+ else if(!strcmp(arg_property->value.str.val, "pulVal"))
{
type.value.str.val = "VT_UI4|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pintVal"))
+ else if(!strcmp(arg_property->value.str.val, "pintVal"))
{
type.value.str.val = "VT_INT|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "puintVal"))
+ else if(!strcmp(arg_property->value.str.val, "puintVal"))
{
type.value.str.val = "VT_UINT|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
break;
case IS_OBJECT:
- if(strstr(pval_arg->value.obj.ce->name, "VARIANT"))
+ if(!strcmp(pval_arg->value.obj.ce->name, "VARIANT"))
{
int type;
pval **var_handle;
var_arg->pvarVal = (VARIANT FAR*) zend_list_find((*var_handle)->value.lval, &type);
var_arg->vt = VT_VARIANT|VT_BYREF;
}
+ else if(!strcmp(pval_arg->value.obj.ce->name, "COM"))
+ {
+ pval **idispatch_handle;
+ IDispatch *i_dispatch;
+ int type;
+
+ /* fetch the IDispatch interface */
+ zend_hash_index_find(pval_arg->value.obj.properties, 0, (void **) &idispatch_handle);
+ i_dispatch = (IDispatch *)zend_list_find((*idispatch_handle)->value.lval, &type);
+ if (!i_dispatch || (type != php_COM_get_le_idispatch()))
+ var_arg->vt = VT_EMPTY;
+ else
+ {
+ var_arg->vt = VT_DISPATCH;
+ var_arg->pdispVal = i_dispatch;
+ }
+ }
break;
case IS_RESOURCE:
OLECHAR *unicode_str;
// set type
- if(strstr(pval_type->value.str.val, "VT_UI1"))
+ if(!strcmp(pval_type->value.str.val, "VT_UI1"))
var_arg->vt = VT_UI1;
- else if(strstr(pval_type->value.str.val, "VT_I2"))
+ else if(!strcmp(pval_type->value.str.val, "VT_I2"))
var_arg->vt = VT_I4;
- else if(strstr(pval_type->value.str.val, "VT_R4"))
+ else if(!strcmp(pval_type->value.str.val, "VT_R4"))
var_arg->vt = VT_R4;
- else if(strstr(pval_type->value.str.val, "VT_R8"))
+ else if(!strcmp(pval_type->value.str.val, "VT_R8"))
var_arg->vt = VT_R8;
- else if(strstr(pval_type->value.str.val, "VT_BOOL"))
+ else if(!strcmp(pval_type->value.str.val, "VT_BOOL"))
var_arg->vt = VT_BOOL;
- else if(strstr(pval_type->value.str.val, "VT_ERROR"))
+ else if(!strcmp(pval_type->value.str.val, "VT_ERROR"))
var_arg->vt = VT_ERROR;
- else if(strstr(pval_type->value.str.val, "VT_CY"))
+ else if(!strcmp(pval_type->value.str.val, "VT_CY"))
var_arg->vt = VT_CY;
- else if(strstr(pval_type->value.str.val, "VT_DATE"))
+ else if(!strcmp(pval_type->value.str.val, "VT_DATE"))
var_arg->vt = VT_DATE;
- else if(strstr(pval_type->value.str.val, "VT_BSTR"))
+ else if(!strcmp(pval_type->value.str.val, "VT_BSTR"))
var_arg->vt = VT_BSTR;
- else if(strstr(pval_type->value.str.val, "VT_DECIMAL"))
+ else if(!strcmp(pval_type->value.str.val, "VT_DECIMAL"))
var_arg->vt = VT_DECIMAL;
- else if(strstr(pval_type->value.str.val, "VT_UNKNOWN"))
+ else if(!strcmp(pval_type->value.str.val, "VT_UNKNOWN"))
var_arg->vt = VT_UNKNOWN;
- else if(strstr(pval_type->value.str.val, "VT_DISPATCH"))
+ else if(!strcmp(pval_type->value.str.val, "VT_DISPATCH"))
var_arg->vt = VT_DISPATCH;
- else if(strstr(pval_type->value.str.val, "VT_VARIANT"))
+ else if(!strcmp(pval_type->value.str.val, "VT_VARIANT"))
var_arg->vt = VT_VARIANT;
- else if(strstr(pval_type->value.str.val, "VT_I1"))
+ else if(!strcmp(pval_type->value.str.val, "VT_I1"))
var_arg->vt = VT_I1;
- else if(strstr(pval_type->value.str.val, "VT_UI2"))
+ else if(!strcmp(pval_type->value.str.val, "VT_UI2"))
var_arg->vt = VT_UI2;
- else if(strstr(pval_type->value.str.val, "VT_UI4"))
+ else if(!strcmp(pval_type->value.str.val, "VT_UI4"))
var_arg->vt = VT_UI4;
- else if(strstr(pval_type->value.str.val, "VT_INT"))
+ else if(!strcmp(pval_type->value.str.val, "VT_INT"))
var_arg->vt = VT_INT;
- else if(strstr(pval_type->value.str.val, "VT_UINT"))
+ else if(!strcmp(pval_type->value.str.val, "VT_UINT"))
var_arg->vt = VT_UINT;
// is safearray
- if(strstr(pval_type->value.str.val, "VT_ARRAY"))
+ if(!strcmp(pval_type->value.str.val, "VT_ARRAY"))
var_arg->vt |= VT_ARRAY;
// by reference
- if(strstr(pval_type->value.str.val, "VT_BYREF"))
+ if(!strcmp(pval_type->value.str.val, "VT_BYREF"))
var_arg->vt |= VT_BYREF;
switch(var_arg->vt)
break;
case IS_OBJECT:
- if(strstr(pval_arg->value.obj.ce->name, "VARIANT"))
+ if(!strcmp(pval_arg->value.obj.ce->name, "VARIANT"))
{
int type;
pval **var_handle;
var_arg->pvarVal = (VARIANT FAR*) zend_list_find((*var_handle)->value.lval, &type);
var_arg->vt = VT_VARIANT|VT_BYREF;
}
+ else if(!strcmp(pval_arg->value.obj.ce->name, "COM"))
+ {
+ pval **idispatch_handle;
+ IDispatch *i_dispatch;
+ int type;
+
+ /* fetch the IDispatch interface */
+ zend_hash_index_find(pval_arg->value.obj.properties, 0, (void **) &idispatch_handle);
+ i_dispatch = (IDispatch *)zend_list_find((*idispatch_handle)->value.lval, &type);
+ if (!i_dispatch || (type != php_COM_get_le_idispatch()))
+ var_arg->vt = VT_EMPTY;
+ else
+ {
+ var_arg->vt = VT_DISPATCH;
+ var_arg->pdispVal = i_dispatch;
+ }
+ }
break;
case IS_RESOURCE:
OLECHAR *unicode_str;
// set type
- if(strstr(pval_type->value.str.val, "VT_UI1"))
+ if(!strcmp(pval_type->value.str.val, "VT_UI1"))
var_arg->vt = VT_UI1;
- else if(strstr(pval_type->value.str.val, "VT_I2"))
+ else if(!strcmp(pval_type->value.str.val, "VT_I2"))
var_arg->vt = VT_I4;
- else if(strstr(pval_type->value.str.val, "VT_R4"))
+ else if(!strcmp(pval_type->value.str.val, "VT_R4"))
var_arg->vt = VT_R4;
- else if(strstr(pval_type->value.str.val, "VT_R8"))
+ else if(!strcmp(pval_type->value.str.val, "VT_R8"))
var_arg->vt = VT_R8;
- else if(strstr(pval_type->value.str.val, "VT_BOOL"))
+ else if(!strcmp(pval_type->value.str.val, "VT_BOOL"))
var_arg->vt = VT_BOOL;
- else if(strstr(pval_type->value.str.val, "VT_ERROR"))
+ else if(!strcmp(pval_type->value.str.val, "VT_ERROR"))
var_arg->vt = VT_ERROR;
- else if(strstr(pval_type->value.str.val, "VT_CY"))
+ else if(!strcmp(pval_type->value.str.val, "VT_CY"))
var_arg->vt = VT_CY;
- else if(strstr(pval_type->value.str.val, "VT_DATE"))
+ else if(!strcmp(pval_type->value.str.val, "VT_DATE"))
var_arg->vt = VT_DATE;
- else if(strstr(pval_type->value.str.val, "VT_BSTR"))
+ else if(!strcmp(pval_type->value.str.val, "VT_BSTR"))
var_arg->vt = VT_BSTR;
- else if(strstr(pval_type->value.str.val, "VT_DECIMAL"))
+ else if(!strcmp(pval_type->value.str.val, "VT_DECIMAL"))
var_arg->vt = VT_DECIMAL;
- else if(strstr(pval_type->value.str.val, "VT_UNKNOWN"))
+ else if(!strcmp(pval_type->value.str.val, "VT_UNKNOWN"))
var_arg->vt = VT_UNKNOWN;
- else if(strstr(pval_type->value.str.val, "VT_DISPATCH"))
+ else if(!strcmp(pval_type->value.str.val, "VT_DISPATCH"))
var_arg->vt = VT_DISPATCH;
- else if(strstr(pval_type->value.str.val, "VT_VARIANT"))
+ else if(!strcmp(pval_type->value.str.val, "VT_VARIANT"))
var_arg->vt = VT_VARIANT;
- else if(strstr(pval_type->value.str.val, "VT_I1"))
+ else if(!strcmp(pval_type->value.str.val, "VT_I1"))
var_arg->vt = VT_I1;
- else if(strstr(pval_type->value.str.val, "VT_UI2"))
+ else if(!strcmp(pval_type->value.str.val, "VT_UI2"))
var_arg->vt = VT_UI2;
- else if(strstr(pval_type->value.str.val, "VT_UI4"))
+ else if(!strcmp(pval_type->value.str.val, "VT_UI4"))
var_arg->vt = VT_UI4;
- else if(strstr(pval_type->value.str.val, "VT_INT"))
+ else if(!strcmp(pval_type->value.str.val, "VT_INT"))
var_arg->vt = VT_INT;
- else if(strstr(pval_type->value.str.val, "VT_UINT"))
+ else if(!strcmp(pval_type->value.str.val, "VT_UINT"))
var_arg->vt = VT_UINT;
// is safearray
- if(strstr(pval_type->value.str.val, "VT_ARRAY"))
+ if(!strcmp(pval_type->value.str.val, "VT_ARRAY"))
var_arg->vt |= VT_ARRAY;
// by reference
- if(strstr(pval_type->value.str.val, "VT_BYREF"))
+ if(!strcmp(pval_type->value.str.val, "VT_BYREF"))
var_arg->vt |= VT_BYREF;
switch(var_arg->vt)
break;
case OE_IS_OBJECT:
- if(strstr(overloaded_property->element.value.str.val, "value"))
+ if(!strcmp(overloaded_property->element.value.str.val, "value"))
php_variant_to_pval(var_arg, &result, 0);
else
{
type.type = IS_STRING;
- if(strstr(arg_property->value.str.val, "bVal"))
+ if(!strcmp(arg_property->value.str.val, "bVal"))
{
type.value.str.val = "VT_UI1";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "iVal"))
+ else if(!strcmp(arg_property->value.str.val, "iVal"))
{
type.value.str.val = "VT_I2";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "lVal"))
+ else if(!strcmp(arg_property->value.str.val, "lVal"))
{
type.value.str.val = "VT_I4";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "fltVal"))
+ else if(!strcmp(arg_property->value.str.val, "fltVal"))
{
type.value.str.val = "VT_R4";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "dblVal"))
+ else if(!strcmp(arg_property->value.str.val, "dblVal"))
{
type.value.str.val = "VT_R8";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "boolVal"))
+ else if(!strcmp(arg_property->value.str.val, "boolVal"))
{
type.value.str.val = "VT_BOOL";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "scode"))
+ else if(!strcmp(arg_property->value.str.val, "scode"))
{
type.value.str.val = "VT_ERROR";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "cyVal"))
+ else if(!strcmp(arg_property->value.str.val, "cyVal"))
{
type.value.str.val = "VT_CY";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "date"))
+ else if(!strcmp(arg_property->value.str.val, "date"))
{
type.value.str.val = "VT_DATE";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "bstrVal"))
+ else if(!strcmp(arg_property->value.str.val, "bstrVal"))
{
type.value.str.val = "VT_BSTR";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pdecVal"))
+ else if(!strcmp(arg_property->value.str.val, "pdecVal"))
{
type.value.str.val = "VT_DECIMAL|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "punkVal"))
+ else if(!strcmp(arg_property->value.str.val, "punkVal"))
{
type.value.str.val = "VT_UNKNOWN";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pdispVal"))
+ else if(!strcmp(arg_property->value.str.val, "pdispVal"))
{
type.value.str.val = "VT_DISPATCH";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "parray"))
+ else if(!strcmp(arg_property->value.str.val, "parray"))
{
type.value.str.val = "VT_ARRAY";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pbVal"))
+ else if(!strcmp(arg_property->value.str.val, "pbVal"))
{
type.value.str.val = "VT_UI1|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "piVal"))
+ else if(!strcmp(arg_property->value.str.val, "piVal"))
{
type.value.str.val = "VT_I2|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "plVal"))
+ else if(!strcmp(arg_property->value.str.val, "plVal"))
{
type.value.str.val = "VT_I4|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pfltVal"))
+ else if(!strcmp(arg_property->value.str.val, "pfltVal"))
{
type.value.str.val = "VT_R4|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pdblVal"))
+ else if(!strcmp(arg_property->value.str.val, "pdblVal"))
{
type.value.str.val = "VT_R8|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pboolVal"))
+ else if(!strcmp(arg_property->value.str.val, "pboolVal"))
{
type.value.str.val = "VT_BOOL|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pscode"))
+ else if(!strcmp(arg_property->value.str.val, "pscode"))
{
type.value.str.val = "VT_ERROR|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pcyVal"))
+ else if(!strcmp(arg_property->value.str.val, "pcyVal"))
{
type.value.str.val = "VT_CY|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pdate"))
+ else if(!strcmp(arg_property->value.str.val, "pdate"))
{
type.value.str.val = "VT_DATE|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pbstrVal"))
+ else if(!strcmp(arg_property->value.str.val, "pbstrVal"))
{
type.value.str.val = "VT_BSTR|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "ppunkVal"))
+ else if(!strcmp(arg_property->value.str.val, "ppunkVal"))
{
type.value.str.val = "VT_UNKNOWN|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "ppdispVal"))
+ else if(!strcmp(arg_property->value.str.val, "ppdispVal"))
{
type.value.str.val = "VT_DISPATCH|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pparray"))
+ else if(!strcmp(arg_property->value.str.val, "pparray"))
{
type.value.str.val = "VT_ARRAY|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pvarVal"))
+ else if(!strcmp(arg_property->value.str.val, "pvarVal"))
{
type.value.str.val = "VT_VARIANT|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "byref"))
+ else if(!strcmp(arg_property->value.str.val, "byref"))
{
type.value.str.val = "VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "cVal"))
+ else if(!strcmp(arg_property->value.str.val, "cVal"))
{
type.value.str.val = "VT_I1";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "uiVal"))
+ else if(!strcmp(arg_property->value.str.val, "uiVal"))
{
type.value.str.val = "VT_UI2";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "ulVal"))
+ else if(!strcmp(arg_property->value.str.val, "ulVal"))
{
type.value.str.val = "VT_UI4";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "intVal"))
+ else if(!strcmp(arg_property->value.str.val, "intVal"))
{
type.value.str.val = "VT_INT";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "uintVal"))
+ else if(!strcmp(arg_property->value.str.val, "uintVal"))
{
type.value.str.val = "VT_UINT|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pcVal"))
+ else if(!strcmp(arg_property->value.str.val, "pcVal"))
{
type.value.str.val = "VT_I1|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "puiVal"))
+ else if(!strcmp(arg_property->value.str.val, "puiVal"))
{
type.value.str.val = "VT_UI2|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pulVal"))
+ else if(!strcmp(arg_property->value.str.val, "pulVal"))
{
type.value.str.val = "VT_UI4|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "pintVal"))
+ else if(!strcmp(arg_property->value.str.val, "pintVal"))
{
type.value.str.val = "VT_INT|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);
}
- else if(strstr(arg_property->value.str.val, "puintVal"))
+ else if(!strcmp(arg_property->value.str.val, "puintVal"))
{
type.value.str.val = "VT_UINT|VT_BYREF";
php_pval_to_variant_ex(value, var_arg, &type);