Browse Source

replace *_STRTOL with STRTOI, etc.

str_size_and_int64
Anatol Belski 13 years ago
parent
commit
d5c924750b
  1. 4
      Zend/zend_ini.c
  2. 24
      Zend/zend_int.h
  3. 14
      Zend/zend_language_scanner.c
  4. 14
      Zend/zend_language_scanner.l
  5. 8
      Zend/zend_operators.c
  6. 2
      Zend/zend_operators.h
  7. 4
      compat/PECL_PORTING
  8. 8
      compat/compat.h
  9. 2
      ext/json/JSON_parser.c
  10. 6
      ext/mysqlnd/mysqlnd.c
  11. 4
      ext/mysqlnd/mysqlnd_result_meta.c
  12. 4
      ext/session/mod_files.c
  13. 2
      ext/session/session.c
  14. 2
      ext/standard/crypt_sha256.c
  15. 2
      ext/standard/crypt_sha512.c
  16. 2
      ext/standard/formatted_print.c
  17. 2
      ext/standard/html.c
  18. 4
      ext/standard/php_fopen_wrapper.c
  19. 20
      ext/standard/scanf.c
  20. 4
      ext/standard/url.c

4
Zend/zend_ini.c

@ -352,9 +352,9 @@ ZEND_API zend_int_t zend_ini_int(char *name, zend_size_t name_length, int orig)
if (zend_hash_find(EG(ini_directives), name, name_length, (void **) &ini_entry) == SUCCESS) {
if (orig && ini_entry->modified) {
return (ini_entry->orig_value ? ZEND_STRTOL(ini_entry->orig_value, NULL, 0) : 0);
return (ini_entry->orig_value ? ZEND_STRTOI(ini_entry->orig_value, NULL, 0) : 0);
} else {
return (ini_entry->value ? ZEND_STRTOL(ini_entry->value, NULL, 0) : 0);
return (ini_entry->value ? ZEND_STRTOI(ini_entry->value, NULL, 0) : 0);
}
}

24
Zend/zend_int.h

@ -84,14 +84,14 @@ typedef long zend_off_t;
# ifdef PHP_WIN32
# define ZEND_ITOA(i, s, len) _i64toa_s((i), (s), (len), 10)
# define ZEND_ATOI(i, s) i = _atoi64((s))
# define ZEND_STRTOL(s0, s1, base) _strtoi64((s0), (s1), (base))
# define ZEND_STRTOUL(s0, s1, base) _strtoui64((s0), (s1), (base))
# define ZEND_STRTOI(s0, s1, base) _strtoi64((s0), (s1), (base))
# define ZEND_STRTOUI(s0, s1, base) _strtoui64((s0), (s1), (base))
# define ZEND_INT_FMT "%I64d"
# define ZEND_UINT_FMT "%I64u"
# define ZEND_INT_FMT_SPEC "I64d"
# define ZEND_UINT_FMT_SPEC "I64u"
# define ZEND_STRTOL_PTR _strtoi64
# define ZEND_STRTOUL_PTR _strtoui64
# define ZEND_STRTOI_PTR _strtoi64
# define ZEND_STRTOUI_PTR _strtoui64
# define ZEND_ABS _abs64
# else
# define ZEND_ITOA(i, s, len) \
@ -100,19 +100,19 @@ typedef long zend_off_t;
(s)[st] = '\0'; \
} while (0)
# define ZEND_ATOI(i, s) (i) = atoll((s))
# define ZEND_STRTOL(s0, s1, base) strtoll((s0), (s1), (base))
# define ZEND_STRTOUL(s0, s1, base) strtoull((s0), (s1), (base))
# define ZEND_STRTOI(s0, s1, base) strtoll((s0), (s1), (base))
# define ZEND_STRTOUI(s0, s1, base) strtoull((s0), (s1), (base))
# define ZEND_INT_FMT "%" PRId64
# define ZEND_UINT_FMT "%lu"
# define ZEND_INT_FMT_SPEC PRId64
# define ZEND_UINT_FMT_SPEC "lu"
# define ZEND_STRTOL_PTR strtoll
# define ZEND_STRTOUL_PTR strtoull
# define ZEND_STRTOI_PTR strtoll
# define ZEND_STRTOUI_PTR strtoull
# define ZEND_ABS llabs
# endif
#else
# define ZEND_STRTOL(s0, s1, base) strtol((s0), (s1), (base))
# define ZEND_STRTOUL(s0, s1, base) strtoul((s0), (s1), (base))
# define ZEND_STRTOI(s0, s1, base) strtol((s0), (s1), (base))
# define ZEND_STRTOUI(s0, s1, base) strtoul((s0), (s1), (base))
# ifdef PHP_WIN32
# define ZEND_ITOA(i, s, len) _ltoa_s((i), (s), (len), 10)
# define ZEND_ATOI(i, s) i = atol((s))
@ -128,8 +128,8 @@ typedef long zend_off_t;
# define ZEND_UINT_FMT "%lu"
# define ZEND_INT_FMT_SPEC "ld"
# define ZEND_UINT_FMT_SPEC "lu"
# define ZEND_STRTOL_PTR strtol
# define ZEND_STRTOUL_PTR strtoul
# define ZEND_STRTOI_PTR strtol
# define ZEND_STRTOUI_PTR strtoul
# define ZEND_ABS abs
#endif

14
Zend/zend_language_scanner.c

@ -941,7 +941,7 @@ static void zend_scan_escape_string(zval *zendlval, char *str, int len, char quo
hex_buf[1] = *(++s);
Z_STRSIZE_P(zendlval)--;
}
*t++ = (char) ZEND_STRTOL(hex_buf, NULL, 16);
*t++ = (char) ZEND_STRTOI(hex_buf, NULL, 16);
} else {
*t++ = '\\';
*t++ = *s;
@ -962,7 +962,7 @@ static void zend_scan_escape_string(zval *zendlval, char *str, int len, char quo
Z_STRSIZE_P(zendlval)--;
}
}
*t++ = (char) ZEND_STRTOL(octal_buf, NULL, 8);
*t++ = (char) ZEND_STRTOI(octal_buf, NULL, 8);
} else {
*t++ = '\\';
*t++ = *s;
@ -2943,10 +2943,10 @@ yy173:
#line 1521 "Zend/zend_language_scanner.l"
{
if (yyleng < MAX_LENGTH_OF_ZEND_INT - 1) { /* Won't overflow */
Z_IVAL_P(zendlval) = ZEND_STRTOL(yytext, NULL, 0);
Z_IVAL_P(zendlval) = ZEND_STRTOI(yytext, NULL, 0);
} else {
errno = 0;
Z_IVAL_P(zendlval) = ZEND_STRTOL(yytext, NULL, 0);
Z_IVAL_P(zendlval) = ZEND_STRTOI(yytext, NULL, 0);
if (errno == ERANGE) { /* Overflow */
if (yytext[0] == '0') { /* octal overflow */
Z_DVAL_P(zendlval) = zend_oct_strtod(yytext, NULL);
@ -3309,7 +3309,7 @@ yy200:
if (len == 0) {
Z_IVAL_P(zendlval) = 0;
} else {
Z_IVAL_P(zendlval) = ZEND_STRTOL(bin, NULL, 2);
Z_IVAL_P(zendlval) = ZEND_STRTOI(bin, NULL, 2);
}
zendlval->type = IS_INT;
return T_LNUMBER;
@ -3345,7 +3345,7 @@ yy203:
if (len == 0) {
Z_IVAL_P(zendlval) = 0;
} else {
Z_IVAL_P(zendlval) = ZEND_STRTOL(hex, NULL, 16);
Z_IVAL_P(zendlval) = ZEND_STRTOI(hex, NULL, 16);
}
zendlval->type = IS_INT;
return T_LNUMBER;
@ -7653,7 +7653,7 @@ yy839:
#line 1566 "Zend/zend_language_scanner.l"
{ /* Offset could be treated as a long */
if (yyleng < MAX_LENGTH_OF_ZEND_INT - 1 || (yyleng == MAX_LENGTH_OF_ZEND_INT - 1 && strcmp(yytext, int_min_digits) < 0)) {
ZVAL_INT(zendlval, ZEND_STRTOL(yytext, NULL, 10));
ZVAL_INT(zendlval, ZEND_STRTOI(yytext, NULL, 10));
} else {
ZVAL_STRINGL(zendlval, yytext, yyleng, 1);
}

14
Zend/zend_language_scanner.l

@ -939,7 +939,7 @@ static void zend_scan_escape_string(zval *zendlval, char *str, int len, char quo
hex_buf[1] = *(++s);
Z_STRSIZE_P(zendlval)--;
}
*t++ = (char) ZEND_STRTOL(hex_buf, NULL, 16);
*t++ = (char) ZEND_STRTOI(hex_buf, NULL, 16);
} else {
*t++ = '\\';
*t++ = *s;
@ -960,7 +960,7 @@ static void zend_scan_escape_string(zval *zendlval, char *str, int len, char quo
Z_STRSIZE_P(zendlval)--;
}
}
*t++ = (char) ZEND_STRTOL(octal_buf, NULL, 8);
*t++ = (char) ZEND_STRTOI(octal_buf, NULL, 8);
} else {
*t++ = '\\';
*t++ = *s;
@ -1508,7 +1508,7 @@ NEWLINE ("\r"|"\n"|"\r\n")
if (len == 0) {
Z_IVAL_P(zendlval) = 0;
} else {
Z_IVAL_P(zendlval) = ZEND_STRTOL(bin, NULL, 2);
Z_IVAL_P(zendlval) = ZEND_STRTOI(bin, NULL, 2);
}
zendlval->type = IS_INT;
return T_LNUMBER;
@ -1520,10 +1520,10 @@ NEWLINE ("\r"|"\n"|"\r\n")
<ST_IN_SCRIPTING>{LNUM} {
if (yyleng < MAX_LENGTH_OF_ZEND_INT - 1) { /* Won't overflow */
Z_IVAL_P(zendlval) = ZEND_STRTOL(yytext, NULL, 0);
Z_IVAL_P(zendlval) = ZEND_STRTOI(yytext, NULL, 0);
} else {
errno = 0;
Z_IVAL_P(zendlval) = ZEND_STRTOL(yytext, NULL, 0);
Z_IVAL_P(zendlval) = ZEND_STRTOI(yytext, NULL, 0);
if (errno == ERANGE) { /* Overflow */
if (yytext[0] == '0') { /* octal overflow */
Z_DVAL_P(zendlval) = zend_oct_strtod(yytext, NULL);
@ -1553,7 +1553,7 @@ NEWLINE ("\r"|"\n"|"\r\n")
if (len == 0) {
Z_IVAL_P(zendlval) = 0;
} else {
Z_IVAL_P(zendlval) = ZEND_STRTOL(hex, NULL, 16);
Z_IVAL_P(zendlval) = ZEND_STRTOI(hex, NULL, 16);
}
zendlval->type = IS_INT;
return T_LNUMBER;
@ -1565,7 +1565,7 @@ NEWLINE ("\r"|"\n"|"\r\n")
<ST_VAR_OFFSET>[0]|([1-9][0-9]*) { /* Offset could be treated as a long */
if (yyleng < MAX_LENGTH_OF_ZEND_INT - 1 || (yyleng == MAX_LENGTH_OF_ZEND_INT - 1 && strcmp(yytext, int_min_digits) < 0)) {
ZVAL_INT(zendlval, ZEND_STRTOL(yytext, NULL, 10));
ZVAL_INT(zendlval, ZEND_STRTOI(yytext, NULL, 10));
} else {
ZVAL_STRINGL(zendlval, yytext, yyleng, 1);
}

8
Zend/zend_operators.c

@ -86,7 +86,7 @@ ZEND_API int zend_atoi(const char *str, zend_size_t str_len) /* {{{ */
if (!str_len) {
str_len = strlen(str);
}
retval = ZEND_STRTOL(str, NULL, 0);
retval = ZEND_STRTOI(str, NULL, 0);
if (str_len>0) {
switch (str[str_len-1]) {
case 'g':
@ -114,7 +114,7 @@ ZEND_API zend_int_t zend_atol(const char *str, zend_size_t str_len) /* {{{ */
if (!str_len) {
str_len = strlen(str);
}
retval = ZEND_STRTOL(str, NULL, 0);
retval = ZEND_STRTOI(str, NULL, 0);
if (str_len>0) {
switch (str[str_len-1]) {
case 'g':
@ -263,7 +263,7 @@ ZEND_API void convert_scalar_to_number(zval *op TSRMLS_DC) /* {{{ */
Z_IVAL(holder) = zend_dval_to_ival(Z_DVAL_P(op)); \
break; \
case IS_STRING: \
Z_IVAL(holder) = ZEND_STRTOL(Z_STRVAL_P(op), NULL, 10); \
Z_IVAL(holder) = ZEND_STRTOI(Z_STRVAL_P(op), NULL, 10); \
break; \
case IS_ARRAY: \
Z_IVAL(holder) = (zend_hash_num_elements(Z_ARRVAL_P(op))?1:0); \
@ -390,7 +390,7 @@ ZEND_API void convert_to_int_base(zval *op, int base) /* {{{ */
{
char *strval = Z_STRVAL_P(op);
Z_IVAL_P(op) = ZEND_STRTOL(strval, NULL, base);
Z_IVAL_P(op) = ZEND_STRTOI(strval, NULL, base);
str_efree(strval);
}
break;

2
Zend/zend_operators.h

@ -254,7 +254,7 @@ process_double:
}
if (lval) {
*lval = ZEND_STRTOL(str, NULL, base);
*lval = ZEND_STRTOI(str, NULL, base);
}
return IS_INT;

4
compat/PECL_PORTING

@ -79,8 +79,8 @@ https://wiki.php.net/rfc/size_t_and_int64
ZVAL_INT - replacement for ZVAL_LONG
RETVAL_INT - RETVAL_LONG
RETURN_INT - RETURN_LONG
ZEND_STRTOL - portable strtol version
ZEND_STRTOUL - portable strtoul version
ZEND_STRTOI - portable strtol version
ZEND_STRTOUI - portable strtoul version
ZEND_ITOA - portable itoa version
ZEND_ATOI - portable atol version
ZEND_ABS - portable abs version

8
compat/compat.h

@ -38,8 +38,8 @@ typedef struct stat zend_stat_t;
# define Z_I(i) i
# define Z_UI(i) i
# define SIZEOF_ZEND_INT SIZEOF_LONG
# define ZEND_STRTOL(s0, s1, base) strtol((s0), (s1), (base))
# define ZEND_STRTOUL(s0, s1, base) strtoul((s0), (s1), (base))
# define ZEND_STRTOI(s0, s1, base) strtol((s0), (s1), (base))
# define ZEND_STRTOUI(s0, s1, base) strtoul((s0), (s1), (base))
# ifdef PHP_WIN32
# define ZEND_ITOA(i, s, len) _ltoa_s((i), (s), (len), 10)
# define ZEND_ATOI(i, s) i = atol((s))
@ -55,8 +55,8 @@ typedef struct stat zend_stat_t;
# define ZEND_UINT_FMT "%lu"
# define ZEND_INT_FMT_SPEC "ld"
# define ZEND_UINT_FMT_SPEC "lu"
# define ZEND_STRTOL_PTR strtol
# define ZEND_STRTOUL_PTR strtoul
# define ZEND_STRTOI_PTR strtol
# define ZEND_STRTOUI_PTR strtoul
# define ZEND_ABS abs
# define zend_fseek fseek
# define zend_ftell ftell

2
ext/json/JSON_parser.c

@ -328,7 +328,7 @@ static void json_create_zval(zval **z, smart_str *buf, int type, php_int_t optio
}
}
ZVAL_INT(*z, ZEND_STRTOL(buf->c, NULL, 10));
ZVAL_INT(*z, ZEND_STRTOI(buf->c, NULL, 10));
}
else if (type == IS_DOUBLE)
{

6
ext/mysqlnd/mysqlnd.c

@ -2097,11 +2097,11 @@ MYSQLND_METHOD(mysqlnd_conn_data, get_server_version)(const MYSQLND_CONN_DATA *
return 0;
}
major = ZEND_STRTOL(p, &p, 10);
major = ZEND_STRTOI(p, &p, 10);
p += 1; /* consume the dot */
minor = ZEND_STRTOL(p, &p, 10);
minor = ZEND_STRTOI(p, &p, 10);
p += 1; /* consume the dot */
patch = ZEND_STRTOL(p, &p, 10);
patch = ZEND_STRTOI(p, &p, 10);
return (php_uint_t)(major * 10000L + (php_uint_t)(minor * 100L + patch));
}

4
ext/mysqlnd/mysqlnd_result_meta.c

@ -74,12 +74,12 @@ mysqlnd_is_key_numeric(const char * key, size_t length, php_int_t *idx)
}
if (tmp==end && *tmp=='\0') { /* a numeric index */
if (*key=='-') {
*idx = ZEND_STRTOL(key, NULL, 10);
*idx = ZEND_STRTOI(key, NULL, 10);
if (*idx!=PHP_INT_MIN) {
return TRUE;
}
} else {
*idx = ZEND_STRTOL(key, NULL, 10);
*idx = ZEND_STRTOI(key, NULL, 10);
if (*idx!=PHP_INT_MAX) {
return TRUE;
}

4
ext/session/mod_files.c

@ -272,7 +272,7 @@ PS_OPEN_FUNC(files)
if (argc > 1) {
errno = 0;
dirdepth = (size_t) ZEND_STRTOL(argv[0], NULL, 10);
dirdepth = (size_t) ZEND_STRTOI(argv[0], NULL, 10);
if (errno == ERANGE) {
php_error(E_WARNING, "The first parameter in session.save_path is invalid");
return FAILURE;
@ -281,7 +281,7 @@ PS_OPEN_FUNC(files)
if (argc > 2) {
errno = 0;
filemode = ZEND_STRTOL(argv[1], NULL, 8);
filemode = ZEND_STRTOI(argv[1], NULL, 8);
if (errno == ERANGE || filemode < 0 || filemode > 07777) {
php_error(E_WARNING, "The second parameter in session.save_path is invalid");
return FAILURE;

2
ext/session/session.c

@ -720,7 +720,7 @@ static PHP_INI_MH(OnUpdateHashFunc) /* {{{ */
PS(hash_ops) = NULL;
#endif
val = ZEND_STRTOL(new_value, &endptr, 10);
val = ZEND_STRTOI(new_value, &endptr, 10);
if (endptr && (*endptr == '\0')) {
/* Numeric value */
PS(hash_func) = val ? 1 : 0;

2
ext/standard/crypt_sha256.c

@ -372,7 +372,7 @@ char * php_sha256_crypt_r(const char *key, const char *salt, char *buffer, int b
if (strncmp(salt, sha256_rounds_prefix, sizeof(sha256_rounds_prefix) - 1) == 0) {
const char *num = salt + sizeof(sha256_rounds_prefix) - 1;
char *endp;
php_uint_t srounds = ZEND_STRTOUL(num, &endp, 10);
php_uint_t srounds = ZEND_STRTOUI(num, &endp, 10);
if (*endp == '$') {
salt = endp + 1;
rounds = MAX(ROUNDS_MIN, MIN(srounds, ROUNDS_MAX));

2
ext/standard/crypt_sha512.c

@ -405,7 +405,7 @@ php_sha512_crypt_r(const char *key, const char *salt, char *buffer, int buflen)
if (strncmp(salt, sha512_rounds_prefix, sizeof(sha512_rounds_prefix) - 1) == 0) {
const char *num = salt + sizeof(sha512_rounds_prefix) - 1;
char *endp;
php_uint_t srounds = ZEND_STRTOUL(num, &endp, 10);
php_uint_t srounds = ZEND_STRTOUI(num, &endp, 10);
if (*endp == '$') {
salt = endp + 1;

2
ext/standard/formatted_print.c

@ -324,7 +324,7 @@ inline static int
php_sprintf_getnumber(char *buffer, php_size_t *pos)
{
char *endptr;
register php_int_t num = ZEND_STRTOL(&buffer[*pos], &endptr, 10);
register php_int_t num = ZEND_STRTOI(&buffer[*pos], &endptr, 10);
register php_size_t i = 0;
if (endptr != NULL) {

2
ext/standard/html.c

@ -792,7 +792,7 @@ static inline int process_numeric_entity(const char **buf, unsigned *code_point)
return FAILURE;
}
code_l = ZEND_STRTOL(*buf, &endptr, hexadecimal ? 16 : 10);
code_l = ZEND_STRTOI(*buf, &endptr, hexadecimal ? 16 : 10);
/* we're guaranteed there were valid digits, so *endptr > buf */
*buf = endptr;

4
ext/standard/php_fopen_wrapper.c

@ -190,7 +190,7 @@ php_stream * php_stream_url_wrap_php(php_stream_wrapper *wrapper, const char *pa
max_memory = PHP_STREAM_MAX_MEM;
if (!strncasecmp(path, "/maxmemory:", 11)) {
path += 11;
max_memory = ZEND_STRTOL(path, NULL, 10);
max_memory = ZEND_STRTOI(path, NULL, 10);
if (max_memory < 0) {
php_error_docref(NULL TSRMLS_CC, E_RECOVERABLE_ERROR, "Max memory must be >= 0");
return NULL;
@ -303,7 +303,7 @@ php_stream * php_stream_url_wrap_php(php_stream_wrapper *wrapper, const char *pa
}
start = &path[3];
fildes_ori = ZEND_STRTOL(start, &end, 10);
fildes_ori = ZEND_STRTOI(start, &end, 10);
if (end == start || *end != '\0') {
php_stream_wrapper_log_error(wrapper, options TSRMLS_CC,
"php://fd/ stream must be specified in the form php://fd/<orig fd>");

20
ext/standard/scanf.c

@ -356,7 +356,7 @@ PHPAPI int ValidateFormat(char *format, int numVars, int *totalSubs)
* must not be a mixture of XPG3 specs and non-XPG3 specs
* in the same format string.
*/
value = ZEND_STRTOUL(format-1, &end, 10);
value = ZEND_STRTOUI(format-1, &end, 10);
if (*end != '$') {
goto notXpg;
}
@ -403,7 +403,7 @@ xpgCheckDone:
* Parse any width specifier.
*/
if (isdigit(UCHAR(*ch))) {
value = ZEND_STRTOUL(format-1, &format, 10);
value = ZEND_STRTOUI(format-1, &format, 10);
flags |= SCAN_WIDTH;
ch = format++;
}
@ -594,7 +594,7 @@ PHPAPI int php_sscanf_internal( char *string, char *format,
char *ch, sch;
int flags;
char buf[64]; /* Temporary buffer to hold scanned number
* strings before they are passed to ZEND_STRTOUL() */
* strings before they are passed to ZEND_STRTOUI() */
/* do some sanity checking */
if ((varStart > argCount) || (varStart < 0)){
@ -709,7 +709,7 @@ literal:
flags |= SCAN_SUPPRESS;
ch = format++;
} else if ( isdigit(UCHAR(*ch))) {
value = ZEND_STRTOUL(format-1, &end, 10);
value = ZEND_STRTOUI(format-1, &end, 10);
if (*end == '$') {
format = end+1;
ch = format++;
@ -721,7 +721,7 @@ literal:
* Parse any width specifier.
*/
if ( isdigit(UCHAR(*ch))) {
width = ZEND_STRTOUL(format-1, &format, 10);
width = ZEND_STRTOUI(format-1, &format, 10);
ch = format++;
} else {
width = 0;
@ -762,29 +762,29 @@ literal:
case 'D':
op = 'i';
base = 10;
fn = (php_int_t (*)())ZEND_STRTOL_PTR;
fn = (php_int_t (*)())ZEND_STRTOI_PTR;
break;
case 'i':
op = 'i';
base = 0;
fn = (php_int_t (*)())ZEND_STRTOL_PTR;
fn = (php_int_t (*)())ZEND_STRTOI_PTR;
break;
case 'o':
op = 'i';
base = 8;
fn = (php_int_t (*)())ZEND_STRTOL_PTR;
fn = (php_int_t (*)())ZEND_STRTOI_PTR;
break;
case 'x':
case 'X':
op = 'i';
base = 16;
fn = (php_int_t (*)())ZEND_STRTOL_PTR;
fn = (php_int_t (*)())ZEND_STRTOI_PTR;
break;
case 'u':
op = 'i';
base = 10;
flags |= SCAN_UNSIGNED;
fn = (php_int_t (*)())ZEND_STRTOUL_PTR;
fn = (php_int_t (*)())ZEND_STRTOUI_PTR;
break;
case 'f':

4
ext/standard/url.c

@ -189,7 +189,7 @@ PHPAPI php_url *php_url_parse_ex(char const *str, php_size_t length)
php_int_t port;
memcpy(port_buf, p, (pp - p));
port_buf[pp - p] = '\0';
port = ZEND_STRTOL(port_buf, NULL, 10);
port = ZEND_STRTOI(port_buf, NULL, 10);
if (port > 0 && port <= 65535) {
ret->port = (unsigned short) port;
} else {
@ -283,7 +283,7 @@ PHPAPI php_url *php_url_parse_ex(char const *str, php_size_t length)
php_int_t port;
memcpy(port_buf, p, (e - p));
port_buf[e - p] = '\0';
port = ZEND_STRTOL(port_buf, NULL, 10);
port = ZEND_STRTOI(port_buf, NULL, 10);
if (port > 0 && port <= 65535) {
ret->port = (unsigned short)port;
} else {

Loading…
Cancel
Save