diff --git a/Userland/Libraries/LibWeb/HTML/HTMLFormElement.cpp b/Userland/Libraries/LibWeb/HTML/HTMLFormElement.cpp
index 53c5c45137b..fb104c377a8 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLFormElement.cpp
+++ b/Userland/Libraries/LibWeb/HTML/HTMLFormElement.cpp
@@ -105,14 +105,14 @@ void HTMLFormElement::submit_form(RefPtr submitter, bool from_submi
});
if (effective_method == "get") {
- url.set_query(urlencode(parameters));
+ url.set_query(urlencode(parameters, URL::PercentEncodeSet::ApplicationXWWWFormUrlencoded));
}
LoadRequest request;
request.set_url(url);
if (effective_method == "post") {
- auto body = urlencode(parameters).to_byte_buffer();
+ auto body = urlencode(parameters, URL::PercentEncodeSet::ApplicationXWWWFormUrlencoded).to_byte_buffer();
request.set_method("POST");
request.set_header("Content-Type", "application/x-www-form-urlencoded");
request.set_header("Content-Length", String::number(body.size()));
diff --git a/Userland/Libraries/LibWeb/URLEncoder.cpp b/Userland/Libraries/LibWeb/URLEncoder.cpp
index bad252e2b50..ed4ece6b79b 100644
--- a/Userland/Libraries/LibWeb/URLEncoder.cpp
+++ b/Userland/Libraries/LibWeb/URLEncoder.cpp
@@ -10,13 +10,13 @@
namespace Web {
-String urlencode(const Vector& pairs)
+String urlencode(const Vector& pairs, URL::PercentEncodeSet percent_encode_set)
{
StringBuilder builder;
for (size_t i = 0; i < pairs.size(); ++i) {
- builder.append(URL::percent_encode(pairs[i].name));
+ builder.append(URL::percent_encode(pairs[i].name, percent_encode_set));
builder.append('=');
- builder.append(URL::percent_encode(pairs[i].value));
+ builder.append(URL::percent_encode(pairs[i].value, percent_encode_set));
if (i != pairs.size() - 1)
builder.append('&');
}
diff --git a/Userland/Libraries/LibWeb/URLEncoder.h b/Userland/Libraries/LibWeb/URLEncoder.h
index 5b6a2268a88..5bd004f560a 100644
--- a/Userland/Libraries/LibWeb/URLEncoder.h
+++ b/Userland/Libraries/LibWeb/URLEncoder.h
@@ -16,6 +16,6 @@ struct URLQueryParam {
String value;
};
-String urlencode(const Vector&);
+String urlencode(const Vector&, URL::PercentEncodeSet);
}