1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 02:47:35 +00:00

AK: URL should support file:// URL's

Also add some setters since this class was very setter-less.
This commit is contained in:
Andreas Kling 2019-10-05 10:14:42 +02:00
parent 4f47146433
commit d64c054d25
2 changed files with 14 additions and 4 deletions

View file

@ -61,7 +61,10 @@ bool URL::parse(const StringView& string)
return false;
m_protocol = String::copy(buffer);
buffer.clear();
state = State::InHostname;
if (m_protocol == "file")
state = State::InPath;
else
state = State::InHostname;
continue;
case State::InHostname:
if (is_valid_hostname_character(peek())) {
@ -120,9 +123,11 @@ String URL::to_string() const
StringBuilder builder;
builder.append(m_protocol);
builder.append("://");
builder.append(m_host);
builder.append(':');
builder.append(String::number(m_port));
if (protocol() != "file") {
builder.append(m_host);
builder.append(':');
builder.append(String::number(m_port));
}
builder.append(m_path);
return builder.to_string();
}