summaryrefslogtreecommitdiff
path: root/ext/intl/formatter/formatter_parse.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/intl/formatter/formatter_parse.c')
-rw-r--r--ext/intl/formatter/formatter_parse.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/ext/intl/formatter/formatter_parse.c b/ext/intl/formatter/formatter_parse.c
index 73b331302b..3d0c84dab6 100644
--- a/ext/intl/formatter/formatter_parse.c
+++ b/ext/intl/formatter/formatter_parse.c
@@ -36,7 +36,7 @@
*/
PHP_FUNCTION( numfmt_parse )
{
- long type = FORMAT_TYPE_DOUBLE;
+ php_int_t type = FORMAT_TYPE_DOUBLE;
UChar* sstr = NULL;
int sstr_len = 0;
char* str = NULL;
@@ -50,7 +50,7 @@ PHP_FUNCTION( numfmt_parse )
FORMATTER_METHOD_INIT_VARS;
/* Parse parameters. */
- if( zend_parse_method_parameters( ZEND_NUM_ARGS() TSRMLS_CC, getThis(), "Os|lz/!",
+ if( zend_parse_method_parameters( ZEND_NUM_ARGS() TSRMLS_CC, getThis(), "Os|iz/!",
&object, NumberFormatter_ce_ptr, &str, &str_len, &type, &zposition ) == FAILURE )
{
intl_error_set( NULL, U_ILLEGAL_ARGUMENT_ERROR,
@@ -68,8 +68,8 @@ PHP_FUNCTION( numfmt_parse )
if(zposition) {
ZVAL_DEREF(zposition);
- convert_to_long(zposition);
- position = (int32_t)Z_LVAL_P( zposition );
+ convert_to_int(zposition);
+ position = (int32_t)Z_IVAL_P( zposition );
position_p = &position;
}
@@ -82,14 +82,14 @@ PHP_FUNCTION( numfmt_parse )
switch(type) {
case FORMAT_TYPE_INT32:
val32 = unum_parse(FORMATTER_OBJECT(nfo), sstr, sstr_len, position_p, &INTL_DATA_ERROR_CODE(nfo));
- RETVAL_LONG(val32);
+ RETVAL_INT(val32);
break;
case FORMAT_TYPE_INT64:
val64 = unum_parseInt64(FORMATTER_OBJECT(nfo), sstr, sstr_len, position_p, &INTL_DATA_ERROR_CODE(nfo));
- if(val64 > LONG_MAX || val64 < LONG_MIN) {
+ if(val64 > ZEND_INT_MAX || val64 < ZEND_INT_MIN) {
RETVAL_DOUBLE(val64);
} else {
- RETVAL_LONG((long)val64);
+ RETVAL_INT((php_int_t)val64);
}
break;
case FORMAT_TYPE_DOUBLE:
@@ -107,7 +107,7 @@ PHP_FUNCTION( numfmt_parse )
#endif
if(zposition) {
zval_dtor(zposition);
- ZVAL_LONG(zposition, position);
+ ZVAL_INT(zposition, position);
}
if (sstr) {
@@ -157,15 +157,15 @@ PHP_FUNCTION( numfmt_parse_currency )
if(zposition) {
ZVAL_DEREF(zposition);
- convert_to_long(zposition);
- position = (int32_t)Z_LVAL_P( zposition );
+ convert_to_int(zposition);
+ position = (int32_t)Z_IVAL_P( zposition );
position_p = &position;
}
number = unum_parseDoubleCurrency(FORMATTER_OBJECT(nfo), sstr, sstr_len, position_p, currency, &INTL_DATA_ERROR_CODE(nfo));
if(zposition) {
zval_dtor(zposition);
- ZVAL_LONG(zposition, position);
+ ZVAL_INT(zposition, position);
}
if (sstr) {
efree(sstr);