mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-06-01 07:52:50 +00:00
LibIPC: Also encode URL::blob_url_entry over IPC
This commit is contained in:
parent
27e1f4762c
commit
55cd53e4ed
Notes:
sideshowbarker
2024-07-17 11:33:34 +09:00
Author: https://github.com/shannonbooth
Commit: 55cd53e4ed
Pull-request: https://github.com/SerenityOS/serenity/pull/24220
Reviewed-by: https://github.com/kennethmyhra
2 changed files with 26 additions and 3 deletions
|
@ -83,8 +83,19 @@ ErrorOr<UnixDateTime> decode(Decoder& decoder)
|
|||
template<>
|
||||
ErrorOr<URL::URL> decode(Decoder& decoder)
|
||||
{
|
||||
auto url = TRY(decoder.decode<ByteString>());
|
||||
return URL::URL { url };
|
||||
auto url_string = TRY(decoder.decode<ByteString>());
|
||||
URL::URL url { url_string };
|
||||
|
||||
bool has_blob_url = TRY(decoder.decode<bool>());
|
||||
if (!has_blob_url)
|
||||
return url;
|
||||
|
||||
url.set_blob_url_entry(URL::BlobURLEntry {
|
||||
.type = TRY(decoder.decode<String>()),
|
||||
.byte_buffer = TRY(decoder.decode<ByteBuffer>()),
|
||||
});
|
||||
|
||||
return url;
|
||||
}
|
||||
|
||||
template<>
|
||||
|
|
|
@ -99,7 +99,19 @@ ErrorOr<void> encode(Encoder& encoder, UnixDateTime const& value)
|
|||
template<>
|
||||
ErrorOr<void> encode(Encoder& encoder, URL::URL const& value)
|
||||
{
|
||||
return encoder.encode(value.to_byte_string());
|
||||
TRY(encoder.encode(value.serialize()));
|
||||
|
||||
if (!value.blob_url_entry().has_value())
|
||||
return encoder.encode(false);
|
||||
|
||||
TRY(encoder.encode(true));
|
||||
|
||||
auto const& blob = value.blob_url_entry().value();
|
||||
|
||||
TRY(encoder.encode(blob.type));
|
||||
TRY(encoder.encode(blob.byte_buffer));
|
||||
|
||||
return {};
|
||||
}
|
||||
|
||||
template<>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue