. Fixed bug #68166 (Exception with invalid character causes segv). (Rasmus)
. Fixed bug #69141 (Missing arguments in reflection info for some builtin
functions). (kostyantyn dot lysyy at oracle dot com)
-
-- CGI:
- . Fixed bug #69015 (php-cgi's getopt does not see $argv). (Laruence)
-
-- CLI:
- . Fixed bug #67741 (auto_prepend_file messes up __LINE__). (Reeze Xia)
++ . Fixed bug #68917 (parse_url fails on some partial urls). (Wei Dai)
- cURL:
. Fixed bug #69088 (PHP_MINIT_FUNCTION does not fully initialize cURL on
}
if (pp - p > 0 && pp - p < 6 && (*pp == '/' || *pp == '\0')) {
- long port;
+ zend_long port;
memcpy(port_buf, p, (pp - p));
port_buf[pp - p] = '\0';
- port = strtol(port_buf, NULL, 10);
+ port = ZEND_STRTOL(port_buf, NULL, 10);
if (port > 0 && port <= 65535) {
ret->port = (unsigned short) port;
+ if (*s == '/' && *(s + 1) == '/') { /* relative-scheme URL */
+ s += 2;
+ }
} else {
- STR_FREE(ret->scheme);
+ if (ret->scheme) efree(ret->scheme);
efree(ret);
return NULL;
}
} else if (p == pp && *pp == '\0') {
- STR_FREE(ret->scheme);
+ if (ret->scheme) efree(ret->scheme);
efree(ret);
return NULL;
- } else if (*s == '/' && *(s+1) == '/') { /* relative-scheme URL */
+ } else if (*s == '/' && *(s + 1) == '/') { /* relative-scheme URL */
s += 2;
} else {
goto just_path;