1
0
Fork 0
mirror of https://github.com/LadybirdBrowser/ladybird.git synced 2025-06-10 01:51:03 +09:00
ladybird/Userland/Libraries/LibWebSocket
Shannon Booth cc55732332 LibURL+Everywhere: Only percent decode URL paths when actually needed
Web specs do not return through javascript percent decoded URL path
components - but we were doing this in a number of places due to the
default behaviour of URL::serialize_path.

Since percent encoded URL paths may not contain valid UTF-8 - this was
resulting in us crashing in these places.

For example - on an HTMLAnchorElement when retrieving the pathname for
the URL of:

http://ladybird.org/foo%C2%91%91

To fix this make the URL class only return the percent encoded
serialized path, matching the URL spec. When the decoded path is
required instead explicitly call URL::percent_decode.

This fixes a crash running WPT URL tests for the anchor element on:

https://wpt.live/url/a-element.html
2024-08-05 09:58:13 +02:00
..
Impl Revert "LibTLS+Everywhere: Switch to using WolfSSL" 2024-07-06 15:15:34 -06:00
CMakeLists.txt
ConnectionInfo.cpp LibURL+Everywhere: Only percent decode URL paths when actually needed 2024-08-05 09:58:13 +02:00
ConnectionInfo.h LibWebSocket: Use HTTP::HeaderMap in WebSocket code 2024-06-22 18:53:24 +02:00
Message.h
WebSocket.cpp Revert "LibTLS+Everywhere: Switch to using WolfSSL" 2024-07-06 15:15:34 -06:00
WebSocket.h