cvs: php4(PHP_4_0_7) /ext/com COM.c VARIANT.c conversion.c
| From: | Harald Radi | Date: | Mon, 20 Aug 2001 08:56:12 +0000 |
| Subject: | cvs: php4(PHP_4_0_7) /ext/com COM.c VARIANT.c conversion.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-6968@lists.php.net to get a copy of this message | ||
phanto Mon Aug 20 04:56:12 2001 EDT
Modified files: (Branch: PHP_4_0_7)
/php4/ext/com COM.c conversion.c VARIANT.c
Log:
MFH
Index: php4/ext/com/COM.c
diff -u php4/ext/com/COM.c:1.50 php4/ext/com/COM.c:1.50.2.1
--- php4/ext/com/COM.c:1.50 Wed Aug 15 06:39:36 2001
+++ php4/ext/com/COM.c Mon Aug 20 04:56:12 2001
@@ -1200,6 +1200,10 @@
pval_destructor(&overloaded_property->element);
}
+ if (obj_prop != NULL) {
+ RETVAL_COM(obj);
+ }
+
FREE_VARIANT(var_result);
return return_value;
Index: php4/ext/com/conversion.c
diff -u php4/ext/com/conversion.c:1.33.2.1 php4/ext/com/conversion.c:1.33.2.2
--- php4/ext/com/conversion.c:1.33.2.1 Fri Aug 17 04:19:27 2001
+++ php4/ext/com/conversion.c Mon Aug 20 04:56:12 2001
@@ -614,27 +614,32 @@
break;
case VT_DATE: {
+ BOOL success;
SYSTEMTIME wintime;
struct tm phptime;
if (V_ISBYREF(var_arg)) {
- VariantTimeToSystemTime(*V_DATEREF(var_arg), &wintime);
+ success = VariantTimeToSystemTime(*V_DATEREF(var_arg), &wintime);
} else {
- VariantTimeToSystemTime(V_DATE(var_arg), &wintime);
+ success = VariantTimeToSystemTime(V_DATE(var_arg), &wintime);
}
- memset(&phptime, 0, sizeof(phptime));
+ if (success) {
+ memset(&phptime, 0, sizeof(phptime));
- phptime.tm_year = wintime.wYear - 1900;
- phptime.tm_mon = wintime.wMonth - 1;
- phptime.tm_mday = wintime.wDay;
- phptime.tm_hour = wintime.wHour;
- phptime.tm_min = wintime.wMinute;
- phptime.tm_sec = wintime.wSecond;
- phptime.tm_isdst = -1;
+ phptime.tm_year = wintime.wYear - 1900;
+ phptime.tm_mon = wintime.wMonth - 1;
+ phptime.tm_mday = wintime.wDay;
+ phptime.tm_hour = wintime.wHour;
+ phptime.tm_min = wintime.wMinute;
+ phptime.tm_sec = wintime.wSecond;
+ phptime.tm_isdst = -1;
- tzset();
- ZVAL_LONG(pval_arg, mktime(&phptime));
+ tzset();
+ ZVAL_LONG(pval_arg, mktime(&phptime));
+ } else {
+ ret = FAILURE;
+ }
}
break;
Index: php4/ext/com/VARIANT.c
diff -u php4/ext/com/VARIANT.c:1.24 php4/ext/com/VARIANT.c:1.24.2.1
--- php4/ext/com/VARIANT.c:1.24 Tue Aug 14 08:47:08 2001
+++ php4/ext/com/VARIANT.c Mon Aug 20 04:56:12 2001
@@ -185,10 +185,10 @@
{
zend_overloaded_element *overloaded_property;
int type;
- TSRMLS_FETCH();
-
pval result, **var_handle, *object = property_reference->object;
VARIANT *var_arg;
+ TSRMLS_FETCH();
+
/* fetch the VARIANT structure */
zend_hash_index_find(Z_OBJPROP_P(object), 0, (void **) &var_handle);
@@ -230,10 +230,10 @@
{
zend_overloaded_element *overloaded_property;
int type;
- TSRMLS_FETCH();
-
pval **var_handle, *object = property_reference->object;
VARIANT *var_arg;
+ TSRMLS_FETCH();
+
/* fetch the VARIANT structure */
zend_hash_index_find(Z_OBJPROP_P(object), 0, (void **) &var_handle);