@@ -55,11 +55,14 @@ IC_METHOD(chr) {
55
55
char buffer [5 ];
56
56
int buffer_len = 0 ;
57
57
58
- if ((zend_parse_parameters (ZEND_NUM_ARGS (), "z" , & zcp ) == FAILURE ) ||
59
- (convert_cp (& cp , zcp ) == FAILURE )) {
58
+ if (zend_parse_parameters (ZEND_NUM_ARGS (), "z" , & zcp ) == FAILURE ) {
60
59
return ;
61
60
}
62
61
62
+ if (convert_cp (& cp , zcp ) == FAILURE ) {
63
+ RETURN_NULL ();
64
+ }
65
+
63
66
/* We can use unsafe because we know the codepoint is in valid range
64
67
* and that 4 bytes is enough for any unicode point
65
68
*/
@@ -80,11 +83,14 @@ IC_METHOD(ord) {
80
83
UChar32 cp ;
81
84
zval * zcp ;
82
85
83
- if ((zend_parse_parameters (ZEND_NUM_ARGS (), "z" , & zcp ) == FAILURE ) ||
84
- (convert_cp (& cp , zcp ) == FAILURE )) {
86
+ if (zend_parse_parameters (ZEND_NUM_ARGS (), "z" , & zcp ) == FAILURE ) {
85
87
return ;
86
88
}
87
89
90
+ if (convert_cp (& cp , zcp ) == FAILURE ) {
91
+ RETURN_NULL ();
92
+ }
93
+
88
94
RETURN_LONG (cp );
89
95
}
90
96
/* }}} */
@@ -99,11 +105,14 @@ IC_METHOD(hasBinaryProperty) {
99
105
zend_long prop ;
100
106
zval * zcp ;
101
107
102
- if ((zend_parse_parameters (ZEND_NUM_ARGS (), "zl" , & zcp , & prop ) == FAILURE ) ||
103
- (convert_cp (& cp , zcp ) == FAILURE )) {
108
+ if (zend_parse_parameters (ZEND_NUM_ARGS (), "zl" , & zcp , & prop ) == FAILURE ) {
104
109
return ;
105
110
}
106
111
112
+ if (convert_cp (& cp , zcp ) == FAILURE ) {
113
+ RETURN_NULL ();
114
+ }
115
+
107
116
RETURN_BOOL (u_hasBinaryProperty (cp , (UProperty )prop ));
108
117
}
109
118
/* }}} */
@@ -118,11 +127,14 @@ IC_METHOD(getIntPropertyValue) {
118
127
zend_long prop ;
119
128
zval * zcp ;
120
129
121
- if ((zend_parse_parameters (ZEND_NUM_ARGS (), "zl" , & zcp , & prop ) == FAILURE ) ||
122
- (convert_cp (& cp , zcp ) == FAILURE )) {
130
+ if (zend_parse_parameters (ZEND_NUM_ARGS (), "zl" , & zcp , & prop ) == FAILURE ) {
123
131
return ;
124
132
}
125
133
134
+ if (convert_cp (& cp , zcp ) == FAILURE ) {
135
+ RETURN_NULL ();
136
+ }
137
+
126
138
RETURN_LONG (u_getIntPropertyValue (cp , (UProperty )prop ));
127
139
}
128
140
/* }}} */
@@ -165,11 +177,14 @@ IC_METHOD(getNumericValue) {
165
177
UChar32 cp ;
166
178
zval * zcp ;
167
179
168
- if ((zend_parse_parameters (ZEND_NUM_ARGS (), "z" , & zcp ) == FAILURE ) ||
169
- (convert_cp (& cp , zcp ) == FAILURE )) {
180
+ if (zend_parse_parameters (ZEND_NUM_ARGS (), "z" , & zcp ) == FAILURE ) {
170
181
return ;
171
182
}
172
183
184
+ if (convert_cp (& cp , zcp ) == FAILURE ) {
185
+ RETURN_NULL ();
186
+ }
187
+
173
188
RETURN_DOUBLE (u_getNumericValue (cp ));
174
189
}
175
190
/* }}} */
@@ -227,11 +242,14 @@ IC_METHOD(getBlockCode) {
227
242
UChar32 cp ;
228
243
zval * zcp ;
229
244
230
- if ((zend_parse_parameters (ZEND_NUM_ARGS (), "z" , & zcp ) == FAILURE ) ||
231
- (convert_cp (& cp , zcp ) == FAILURE )) {
245
+ if (zend_parse_parameters (ZEND_NUM_ARGS (), "z" , & zcp ) == FAILURE ) {
232
246
return ;
233
247
}
234
248
249
+ if (convert_cp (& cp , zcp ) == FAILURE ) {
250
+ RETURN_NULL ();
251
+ }
252
+
235
253
RETURN_LONG (ublock_getCode (cp ));
236
254
}
237
255
/* }}} */
@@ -249,11 +267,14 @@ IC_METHOD(charName) {
249
267
zend_string * buffer = NULL ;
250
268
int32_t buffer_len ;
251
269
252
- if ((zend_parse_parameters (ZEND_NUM_ARGS (), "z|l" , & zcp , & nameChoice ) == FAILURE ) ||
253
- (convert_cp (& cp , zcp ) == FAILURE )) {
270
+ if (zend_parse_parameters (ZEND_NUM_ARGS (), "z|l" , & zcp , & nameChoice ) == FAILURE ) {
254
271
return ;
255
272
}
256
273
274
+ if (convert_cp (& cp , zcp ) == FAILURE ) {
275
+ RETURN_NULL ();
276
+ }
277
+
257
278
buffer_len = u_charName (cp , (UCharNameChoice )nameChoice , NULL , 0 , & error );
258
279
buffer = zend_string_alloc (buffer_len , 0 );
259
280
error = U_ZERO_ERROR ;
@@ -332,12 +353,14 @@ IC_METHOD(enumCharNames) {
332
353
zend_long nameChoice = U_UNICODE_CHAR_NAME ;
333
354
UErrorCode error = U_ZERO_ERROR ;
334
355
335
- if ((zend_parse_parameters (ZEND_NUM_ARGS (), "zzf|l" , & zstart , & zlimit , & context .fci , & context .fci_cache , & nameChoice ) == FAILURE ) ||
336
- (convert_cp (& start , zstart ) == FAILURE ) ||
337
- (convert_cp (& limit , zlimit ) == FAILURE )) {
356
+ if (zend_parse_parameters (ZEND_NUM_ARGS (), "zzf|l" , & zstart , & zlimit , & context .fci , & context .fci_cache , & nameChoice ) == FAILURE ) {
338
357
return ;
339
358
}
340
359
360
+ if (convert_cp (& start , zstart ) == FAILURE || convert_cp (& limit , zlimit ) == FAILURE ) {
361
+ RETURN_NULL ();
362
+ }
363
+
341
364
u_enumCharNames (start , limit , (UEnumCharNamesFn * )enumCharNames_callback , & context , nameChoice , & error );
342
365
INTL_CHECK_STATUS (error , NULL );
343
366
}
@@ -437,11 +460,14 @@ IC_METHOD(foldCase) {
437
460
zval * zcp ;
438
461
zend_long options = U_FOLD_CASE_DEFAULT ;
439
462
440
- if ((zend_parse_parameters (ZEND_NUM_ARGS (), "z|l" , & zcp , & options ) == FAILURE ) ||
441
- (convert_cp (& cp , zcp ) == FAILURE )) {
463
+ if (zend_parse_parameters (ZEND_NUM_ARGS (), "z|l" , & zcp , & options ) == FAILURE ) {
442
464
return ;
443
465
}
444
466
467
+ if (convert_cp (& cp , zcp ) == FAILURE ) {
468
+ RETURN_NULL ();
469
+ }
470
+
445
471
ret = u_foldCase (cp , options );
446
472
if (Z_TYPE_P (zcp ) == IS_STRING ) {
447
473
char buffer [5 ];
@@ -466,11 +492,14 @@ IC_METHOD(digit) {
466
492
zend_long radix = 10 ;
467
493
int ret ;
468
494
469
- if ((zend_parse_parameters (ZEND_NUM_ARGS (), "z|l" , & zcp , & radix ) == FAILURE ) ||
470
- (convert_cp (& cp , zcp ) == FAILURE )) {
495
+ if (zend_parse_parameters (ZEND_NUM_ARGS (), "z|l" , & zcp , & radix ) == FAILURE ) {
471
496
return ;
472
497
}
473
498
499
+ if (convert_cp (& cp , zcp ) == FAILURE ) {
500
+ RETURN_NULL ();
501
+ }
502
+
474
503
ret = u_digit (cp , radix );
475
504
if (ret < 0 ) {
476
505
intl_error_set_code (NULL , U_ILLEGAL_ARGUMENT_ERROR );
@@ -507,11 +536,14 @@ IC_METHOD(charAge) {
507
536
UVersionInfo version ;
508
537
int i ;
509
538
510
- if ((zend_parse_parameters (ZEND_NUM_ARGS (), "z" , & zcp ) == FAILURE ) ||
511
- (convert_cp (& cp , zcp ) == FAILURE )) {
539
+ if (zend_parse_parameters (ZEND_NUM_ARGS (), "z" , & zcp ) == FAILURE ) {
512
540
return ;
513
541
}
514
542
543
+ if (convert_cp (& cp , zcp ) == FAILURE ) {
544
+ RETURN_NULL ();
545
+ }
546
+
515
547
u_charAge (cp , version );
516
548
array_init (return_value );
517
549
for (i = 0 ; i < U_MAX_VERSION_LENGTH ; ++ i ) {
@@ -548,11 +580,14 @@ IC_METHOD(getFC_NFKC_Closure) {
548
580
int32_t closure_len ;
549
581
UErrorCode error = U_ZERO_ERROR ;
550
582
551
- if ((zend_parse_parameters (ZEND_NUM_ARGS (), "z" , & zcp ) == FAILURE ) ||
552
- (convert_cp (& cp , zcp ) == FAILURE )) {
583
+ if (zend_parse_parameters (ZEND_NUM_ARGS (), "z" , & zcp ) == FAILURE ) {
553
584
return ;
554
585
}
555
586
587
+ if (convert_cp (& cp , zcp ) == FAILURE ) {
588
+ RETURN_NULL ();
589
+ }
590
+
556
591
closure_len = u_getFC_NFKC_Closure (cp , NULL , 0 , & error );
557
592
if (closure_len == 0 ) {
558
593
RETURN_EMPTY_STRING ();
0 commit comments