@@ -145,9 +145,9 @@ PHP_FUNCTION(datefmt_parse)
145
145
DATE_FORMAT_METHOD_FETCH_OBJECT ;
146
146
147
147
if (z_parse_pos ) {
148
- zend_long long_parse_pos ;
149
- ZVAL_DEREF (z_parse_pos );
150
- long_parse_pos = zval_get_long (z_parse_pos );
148
+ zval * z_parse_pos_tmp = z_parse_pos ;
149
+ ZVAL_DEREF (z_parse_pos_tmp );
150
+ zend_long long_parse_pos = zval_get_long (z_parse_pos_tmp );
151
151
if (ZEND_LONG_INT_OVFL (long_parse_pos )) {
152
152
intl_error_set_code (NULL , U_ILLEGAL_ARGUMENT_ERROR );
153
153
intl_error_set_custom_msg (NULL , "String index is out of valid range." , 0 );
@@ -160,8 +160,7 @@ PHP_FUNCTION(datefmt_parse)
160
160
}
161
161
internal_parse_to_timestamp ( dfo , text_to_parse , text_len , z_parse_pos ? & parse_pos : NULL , false, return_value );
162
162
if (z_parse_pos ) {
163
- zval_ptr_dtor (z_parse_pos );
164
- ZVAL_LONG (z_parse_pos , parse_pos );
163
+ ZEND_TRY_ASSIGN_REF_LONG (z_parse_pos , parse_pos );
165
164
}
166
165
}
167
166
/* }}} */
@@ -186,12 +185,12 @@ PHP_METHOD(IntlDateFormatter, parseToCalendar)
186
185
DATE_FORMAT_METHOD_FETCH_OBJECT ;
187
186
188
187
if (z_parse_pos ) {
189
- zend_long long_parse_pos ;
190
- ZVAL_DEREF (z_parse_pos );
188
+ zval * z_parse_pos_tmp = z_parse_pos ;
189
+ ZVAL_DEREF (z_parse_pos_tmp );
191
190
bool failed = false;
192
- long_parse_pos = zval_try_get_long (z_parse_pos , & failed );
191
+ zend_long long_parse_pos = zval_try_get_long (z_parse_pos_tmp , & failed );
193
192
if (failed ) {
194
- zend_argument_type_error (2 , "must be of type int, %s given" , zend_zval_value_name (z_parse_pos ));
193
+ zend_argument_type_error (2 , "must be of type int, %s given" , zend_zval_value_name (z_parse_pos_tmp ));
195
194
RETURN_THROWS ();
196
195
}
197
196
if (ZEND_LONG_INT_OVFL (long_parse_pos )) {
@@ -206,8 +205,7 @@ PHP_METHOD(IntlDateFormatter, parseToCalendar)
206
205
}
207
206
internal_parse_to_timestamp ( dfo , ZSTR_VAL (text_to_parse ), ZSTR_LEN (text_to_parse ), z_parse_pos ? & parse_pos : NULL , true, return_value );
208
207
if (z_parse_pos ) {
209
- zval_ptr_dtor (z_parse_pos );
210
- ZVAL_LONG (z_parse_pos , parse_pos );
208
+ ZEND_TRY_ASSIGN_REF_LONG (z_parse_pos , parse_pos );
211
209
}
212
210
}
213
211
@@ -231,9 +229,9 @@ PHP_FUNCTION(datefmt_localtime)
231
229
DATE_FORMAT_METHOD_FETCH_OBJECT ;
232
230
233
231
if (z_parse_pos ) {
234
- zend_long long_parse_pos ;
235
- ZVAL_DEREF (z_parse_pos );
236
- long_parse_pos = zval_get_long (z_parse_pos );
232
+ zval * z_parse_pos_tmp = z_parse_pos ;
233
+ ZVAL_DEREF (z_parse_pos_tmp );
234
+ zend_long long_parse_pos = zval_get_long (z_parse_pos_tmp );
237
235
if (ZEND_LONG_INT_OVFL (long_parse_pos )) {
238
236
intl_error_set_code (NULL , U_ILLEGAL_ARGUMENT_ERROR );
239
237
intl_error_set_custom_msg (NULL , "String index is out of valid range." , 0 );
@@ -246,8 +244,7 @@ PHP_FUNCTION(datefmt_localtime)
246
244
}
247
245
internal_parse_to_localtime ( dfo , text_to_parse , text_len , z_parse_pos ?& parse_pos :NULL , return_value );
248
246
if (z_parse_pos ) {
249
- zval_ptr_dtor (z_parse_pos );
250
- ZVAL_LONG (z_parse_pos , parse_pos );
247
+ ZEND_TRY_ASSIGN_REF_LONG (z_parse_pos , parse_pos );
251
248
}
252
249
}
253
250
/* }}} */
0 commit comments