@@ -49,31 +49,19 @@ PHPAPI void php_url_free(php_url *theurl)
49
49
}
50
50
/* }}} */
51
51
52
- /* {{{ php_replace_controlchars_ex */
53
- PHPAPI char * php_replace_controlchars_ex (char * str , size_t len )
52
+ static void php_replace_controlchars (char * str , size_t len )
54
53
{
55
54
unsigned char * s = (unsigned char * )str ;
56
55
unsigned char * e = (unsigned char * )str + len ;
57
56
58
- if (!str ) {
59
- return (NULL );
60
- }
57
+ ZEND_ASSERT (str != NULL );
61
58
62
59
while (s < e ) {
63
-
64
60
if (iscntrl (* s )) {
65
61
* s = '_' ;
66
62
}
67
63
s ++ ;
68
64
}
69
-
70
- return (str );
71
- }
72
- /* }}} */
73
-
74
- PHPAPI char * php_replace_controlchars (char * str )
75
- {
76
- return php_replace_controlchars_ex (str , strlen (str ));
77
65
}
78
66
79
67
PHPAPI php_url * php_url_parse (char const * str )
@@ -133,7 +121,7 @@ PHPAPI php_url *php_url_parse_ex2(char const *str, size_t length, bool *has_port
133
121
134
122
if (e + 1 == ue ) { /* only scheme is available */
135
123
ret -> scheme = zend_string_init (s , (e - s ), 0 );
136
- php_replace_controlchars_ex (ZSTR_VAL (ret -> scheme ), ZSTR_LEN (ret -> scheme ));
124
+ php_replace_controlchars (ZSTR_VAL (ret -> scheme ), ZSTR_LEN (ret -> scheme ));
137
125
return ret ;
138
126
}
139
127
@@ -155,13 +143,13 @@ PHPAPI php_url *php_url_parse_ex2(char const *str, size_t length, bool *has_port
155
143
}
156
144
157
145
ret -> scheme = zend_string_init (s , (e - s ), 0 );
158
- php_replace_controlchars_ex (ZSTR_VAL (ret -> scheme ), ZSTR_LEN (ret -> scheme ));
146
+ php_replace_controlchars (ZSTR_VAL (ret -> scheme ), ZSTR_LEN (ret -> scheme ));
159
147
160
148
s = e + 1 ;
161
149
goto just_path ;
162
150
} else {
163
151
ret -> scheme = zend_string_init (s , (e - s ), 0 );
164
- php_replace_controlchars_ex (ZSTR_VAL (ret -> scheme ), ZSTR_LEN (ret -> scheme ));
152
+ php_replace_controlchars (ZSTR_VAL (ret -> scheme ), ZSTR_LEN (ret -> scheme ));
165
153
166
154
if (e + 2 < ue && * (e + 2 ) == '/' ) {
167
155
s = e + 3 ;
@@ -227,14 +215,14 @@ PHPAPI php_url *php_url_parse_ex2(char const *str, size_t length, bool *has_port
227
215
if ((p = zend_memrchr (s , '@' , (e - s )))) {
228
216
if ((pp = memchr (s , ':' , (p - s )))) {
229
217
ret -> user = zend_string_init (s , (pp - s ), 0 );
230
- php_replace_controlchars_ex (ZSTR_VAL (ret -> user ), ZSTR_LEN (ret -> user ));
218
+ php_replace_controlchars (ZSTR_VAL (ret -> user ), ZSTR_LEN (ret -> user ));
231
219
232
220
pp ++ ;
233
221
ret -> pass = zend_string_init (pp , (p - pp ), 0 );
234
- php_replace_controlchars_ex (ZSTR_VAL (ret -> pass ), ZSTR_LEN (ret -> pass ));
222
+ php_replace_controlchars (ZSTR_VAL (ret -> pass ), ZSTR_LEN (ret -> pass ));
235
223
} else {
236
224
ret -> user = zend_string_init (s , (p - s ), 0 );
237
- php_replace_controlchars_ex (ZSTR_VAL (ret -> user ), ZSTR_LEN (ret -> user ));
225
+ php_replace_controlchars (ZSTR_VAL (ret -> user ), ZSTR_LEN (ret -> user ));
238
226
}
239
227
240
228
s = p + 1 ;
@@ -283,7 +271,7 @@ PHPAPI php_url *php_url_parse_ex2(char const *str, size_t length, bool *has_port
283
271
}
284
272
285
273
ret -> host = zend_string_init (s , (p - s ), 0 );
286
- php_replace_controlchars_ex (ZSTR_VAL (ret -> host ), ZSTR_LEN (ret -> host ));
274
+ php_replace_controlchars (ZSTR_VAL (ret -> host ), ZSTR_LEN (ret -> host ));
287
275
288
276
if (e == ue ) {
289
277
return ret ;
@@ -299,7 +287,7 @@ PHPAPI php_url *php_url_parse_ex2(char const *str, size_t length, bool *has_port
299
287
p ++ ;
300
288
if (p < e ) {
301
289
ret -> fragment = zend_string_init (p , (e - p ), 0 );
302
- php_replace_controlchars_ex (ZSTR_VAL (ret -> fragment ), ZSTR_LEN (ret -> fragment ));
290
+ php_replace_controlchars (ZSTR_VAL (ret -> fragment ), ZSTR_LEN (ret -> fragment ));
303
291
} else {
304
292
ret -> fragment = ZSTR_EMPTY_ALLOC ();
305
293
}
@@ -311,7 +299,7 @@ PHPAPI php_url *php_url_parse_ex2(char const *str, size_t length, bool *has_port
311
299
p ++ ;
312
300
if (p < e ) {
313
301
ret -> query = zend_string_init (p , (e - p ), 0 );
314
- php_replace_controlchars_ex (ZSTR_VAL (ret -> query ), ZSTR_LEN (ret -> query ));
302
+ php_replace_controlchars (ZSTR_VAL (ret -> query ), ZSTR_LEN (ret -> query ));
315
303
} else {
316
304
ret -> query = ZSTR_EMPTY_ALLOC ();
317
305
}
@@ -320,7 +308,7 @@ PHPAPI php_url *php_url_parse_ex2(char const *str, size_t length, bool *has_port
320
308
321
309
if (s < e || s == ue ) {
322
310
ret -> path = zend_string_init (s , (e - s ), 0 );
323
- php_replace_controlchars_ex (ZSTR_VAL (ret -> path ), ZSTR_LEN (ret -> path ));
311
+ php_replace_controlchars (ZSTR_VAL (ret -> path ), ZSTR_LEN (ret -> path ));
324
312
}
325
313
326
314
return ret ;
0 commit comments