if (p - c == 0) {
goto out;
}
- SET_U (u, UF_USERINFO);
st = parse_password_start;
}
else if (t == '@') {
case parse_password_start:
if (t == '@') {
/* Empty password */
+ SET_U (u, UF_USERINFO);
st = parse_at;
}
else {
case parse_password:
if (t == '@') {
/* XXX: password is not stored */
+ SET_U (u, UF_USERINFO);
st = parse_at;
}
else if (!g_ascii_isgraph (t)) {
uri->protocollen -= shift;
memmove (uri->string + uri->protocollen, uri->string + old_shift,
uri->urllen - uri->protocollen);
+ uri->urllen -= shift;
break;
case UF_HOST:
if (nlen >= uri->hostlen) {
uri->hostlen -= shift;
memmove (uri->host + uri->hostlen, uri->host + old_shift,
uri->datalen + uri->querylen + uri->fragmentlen);
+ uri->urllen -= shift;
break;
case UF_PATH:
if (nlen >= uri->datalen) {
uri->datalen -= shift;
memmove (uri->data + uri->datalen, uri->data + old_shift,
uri->querylen + uri->fragmentlen);
+ uri->urllen -= shift;
break;
case UF_QUERY:
if (nlen >= uri->querylen) {
uri->querylen -= shift;
memmove (uri->query + uri->querylen, uri->query + old_shift,
uri->fragmentlen);
+ uri->urllen -= shift;
break;
case UF_FRAGMENT:
if (nlen >= uri->fragmentlen) {
}
uri->fragmentlen -= shift;
+ uri->urllen -= shift;
break;
default:
break;