summaryrefslogtreecommitdiff
path: root/Services/ProtocolServer/GeminiProtocol.cpp
diff options
context:
space:
mode:
authorConrad Pankoff <deoxxa@fknsrs.biz>2020-05-16 05:36:40 +1000
committerAndreas Kling <kling@serenityos.org>2020-05-17 12:41:38 +0200
commitf2621f37a4ce024a49e41755ea12d826e991fc1a (patch)
tree8d4648908e63e69e42a58c7dcc127c1b5bb9f4a0 /Services/ProtocolServer/GeminiProtocol.cpp
parent184ee8ac77457e7e5bae07a3cb48f872e2063871 (diff)
downloadserenity-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.cpp2
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);