diff options
author | Conrad Pankoff <deoxxa@fknsrs.biz> | 2020-05-16 05:36:40 +1000 |
---|---|---|
committer | Andreas Kling <kling@serenityos.org> | 2020-05-17 12:41:38 +0200 |
commit | f2621f37a4ce024a49e41755ea12d826e991fc1a (patch) | |
tree | 8d4648908e63e69e42a58c7dcc127c1b5bb9f4a0 /Services/ProtocolServer/GeminiProtocol.cpp | |
parent | 184ee8ac77457e7e5bae07a3cb48f872e2063871 (diff) | |
download | serenity-f2621f37a4ce024a49e41755ea12d826e991fc1a.zip |
ProtocolServer: Attach downloads and their lifecycles to clients
Previously a download lived independently of the client connection it came
from. This was the source of several undesirable behaviours, including the
potential for clients to influence downloads they didn't start, and
downloads living longer than their associated client connections. Now we
attach downloads to client connections, which means they're cleaned up
automatically when the client goes away, and there's significantly less
risk of clients interfering with each other.
Diffstat (limited to 'Services/ProtocolServer/GeminiProtocol.cpp')
-rw-r--r-- | Services/ProtocolServer/GeminiProtocol.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/Services/ProtocolServer/GeminiProtocol.cpp b/Services/ProtocolServer/GeminiProtocol.cpp index 8eda72eb5b..0bc413a463 100644 --- a/Services/ProtocolServer/GeminiProtocol.cpp +++ b/Services/ProtocolServer/GeminiProtocol.cpp @@ -38,7 +38,7 @@ GeminiProtocol::~GeminiProtocol() { } -RefPtr<Download> GeminiProtocol::start_download(PSClientConnection& client, const URL& url) +OwnPtr<Download> GeminiProtocol::start_download(PSClientConnection& client, const URL& url) { Gemini::GeminiRequest request; request.set_url(url); |