diff options
-rw-r--r-- | ext/intl/calendar/calendar_methods.cpp | 12 | ||||
-rw-r--r-- | ext/intl/timezone/timezone_methods.cpp | 2 |
2 files changed, 6 insertions, 8 deletions
diff --git a/ext/intl/calendar/calendar_methods.cpp b/ext/intl/calendar/calendar_methods.cpp index 02dfe5e224..b67bd4bf6b 100644 --- a/ext/intl/calendar/calendar_methods.cpp +++ b/ext/intl/calendar/calendar_methods.cpp @@ -1141,7 +1141,7 @@ U_CFUNC PHP_FUNCTION(intlcal_from_date_time) zval *zv_arg, zv_tmp, *zv_datetime = NULL, - *zv_timestamp = NULL; + zv_timestamp; php_date_obj *datetime; char *locale_str = NULL; int locale_str_len; @@ -1178,11 +1178,12 @@ U_CFUNC PHP_FUNCTION(intlcal_from_date_time) goto error; } - zend_call_method_with_0_params(zv_datetime, php_date_get_date_ce(), NULL, "gettimestamp", zv_timestamp); - if (!zv_timestamp || Z_TYPE_P(zv_timestamp) != IS_LONG) { + zend_call_method_with_0_params(zv_datetime, php_date_get_date_ce(), NULL, "gettimestamp", &zv_timestamp); + if (Z_TYPE(zv_timestamp) != IS_LONG) { intl_error_set(NULL, U_ILLEGAL_ARGUMENT_ERROR, "intlcal_from_date_time: bad DateTime; call to " "DateTime::getTimestamp() failed", 0 TSRMLS_CC); + zval_ptr_dtor(&zv_timestamp); goto error; } @@ -1208,7 +1209,7 @@ U_CFUNC PHP_FUNCTION(intlcal_from_date_time) "error creating ICU Calendar object", 0 TSRMLS_CC); goto error; } - cal->setTime(((UDate)Z_LVAL_P(zv_timestamp)) * 1000., status); + cal->setTime(((UDate)Z_LVAL(zv_timestamp)) * 1000., status); if (U_FAILURE(status)) { /* time zone was adopted by cal; should not be deleted here */ delete cal; @@ -1223,9 +1224,6 @@ error: if (zv_datetime && zv_datetime != zv_arg) { zval_ptr_dtor(zv_datetime); } - if (zv_timestamp) { - zval_ptr_dtor(zv_timestamp); - } } U_CFUNC PHP_FUNCTION(intlcal_to_date_time) diff --git a/ext/intl/timezone/timezone_methods.cpp b/ext/intl/timezone/timezone_methods.cpp index bef69ba539..c98a03639f 100644 --- a/ext/intl/timezone/timezone_methods.cpp +++ b/ext/intl/timezone/timezone_methods.cpp @@ -436,7 +436,7 @@ U_CFUNC PHP_FUNCTION(intltz_get_id) id_us.getBuffer(), id_us.length(), TIMEZONE_ERROR_CODE_P(to)); INTL_METHOD_CHECK_STATUS(to, "intltz_get_id: Could not convert id to UTF-8"); - RETURN_STRINGL(id, id_len); + RETVAL_STRINGL(id, id_len); //??? efree(id); } |