about summary refs log tree commit diff
path: root/src/libstore/download.cc
diff options
context:
space:
mode:
authorShea Levy <shea@shealevy.com>2016-08-15T11·37-0400
committerShea Levy <shea@shealevy.com>2016-08-15T11·37-0400
commitd52d391164d9a6fb4a2efec2777e24de5e19b225 (patch)
tree4e1ab818d97a2054abd612b3358b7bb1c18f7102 /src/libstore/download.cc
parenteff80419c76eb7d77d3b434a45fb9e18d53d1d19 (diff)
builtins.fetch{url,tarball}: Allow name attribute
Diffstat (limited to 'src/libstore/download.cc')
-rw-r--r--src/libstore/download.cc9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/libstore/download.cc b/src/libstore/download.cc
index 95c7d2255a..13c665a40c 100644
--- a/src/libstore/download.cc
+++ b/src/libstore/download.cc
@@ -243,13 +243,14 @@ ref<Downloader> makeDownloader()
     return make_ref<CurlDownloader>();
 }
 
-Path Downloader::downloadCached(ref<Store> store, const string & url_, bool unpack, const Hash & expectedHash)
+Path Downloader::downloadCached(ref<Store> store, const string & url_, bool unpack, string name, const Hash & expectedHash)
 {
     auto url = resolveUri(url_);
 
-    string name;
-    auto p = url.rfind('/');
-    if (p != string::npos) name = string(url, p + 1);
+    if (name == "") {
+        auto p = url.rfind('/');
+        if (p != string::npos) name = string(url, p + 1);
+    }
 
     Path expectedStorePath;
     if (expectedHash) {