aboutsummaryrefslogtreecommitdiff
path: root/src/libstore/http-binary-cache-store.cc
diff options
context:
space:
mode:
authoreldritch horrors <pennae@lix.systems>2024-05-11 00:22:21 +0200
committereldritch horrors <pennae@lix.systems>2024-07-11 11:39:18 +0000
commit5587dbdcf078586dcc5b9c54af614c1915e9da0a (patch)
tree52c1de6713edddd1579f9d4740afd7e7a4cd4abe /src/libstore/http-binary-cache-store.cc
parentdf8851f286a407c46ea9107ca403888291f1afbe (diff)
libstore: make BinaryCacheStore::getFile return a source
this lets us remove the last true remaining uses of makeDecompressionSink. Change-Id: I146ca2bbe1a9ae9a367117a7b8a304b23a63e5e2
Diffstat (limited to 'src/libstore/http-binary-cache-store.cc')
-rw-r--r--src/libstore/http-binary-cache-store.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/libstore/http-binary-cache-store.cc b/src/libstore/http-binary-cache-store.cc
index 06297e2eb..7ceea716a 100644
--- a/src/libstore/http-binary-cache-store.cc
+++ b/src/libstore/http-binary-cache-store.cc
@@ -150,12 +150,12 @@ protected:
}
- void getFile(const std::string & path, Sink & sink) override
+ box_ptr<Source> getFile(const std::string & path) override
{
checkEnabled();
auto request(makeRequest(path));
try {
- getFileTransfer()->download(std::move(request))->drainInto(sink);
+ return getFileTransfer()->download(std::move(request));
} catch (FileTransferError & e) {
if (e.error == FileTransfer::NotFound || e.error == FileTransfer::Forbidden)
throw NoSuchBinaryCacheFile("file '%s' does not exist in binary cache '%s'", path, getUri());