From 39366bfbf12baa1949853baead5ae910c9afc309 Mon Sep 17 00:00:00 2001 From: shortcutme Date: Sun, 11 Feb 2018 01:48:17 +0100 Subject: [PATCH] Rev3323, Fix bigfile download to non-existent directory --- plugins/Bigfile/BigfilePlugin.py | 8 +++++++- src/Config.py | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/plugins/Bigfile/BigfilePlugin.py b/plugins/Bigfile/BigfilePlugin.py index 9505a1de..de74d645 100644 --- a/plugins/Bigfile/BigfilePlugin.py +++ b/plugins/Bigfile/BigfilePlugin.py @@ -267,7 +267,8 @@ class ContentManagerPlugin(object): piecemap_inner_path = inner_path + ".piecemap.msgpack" msgpack.pack({file_name: piecemap_info}, self.site.storage.open(piecemap_inner_path, "wb")) - back.update(super(ContentManagerPlugin, self).hashFile(dir_inner_path, piecemap_relative_path, True)) + + back.update(super(ContentManagerPlugin, self).hashFile(dir_inner_path, piecemap_relative_path, optional=True)) piece_num = int(math.ceil(float(file_size) / piece_size)) @@ -345,6 +346,11 @@ class SiteStoragePlugin(object): def createSparseFile(self, inner_path, size, sha512=None): file_path = self.getPath(inner_path) + + file_dir = os.path.dirname(file_path) + if not os.path.isdir(file_dir): + os.makedirs(file_dir) + f = open(file_path, 'wb') f.truncate(size) f.close() diff --git a/src/Config.py b/src/Config.py index 5d3205f0..7b282cf5 100644 --- a/src/Config.py +++ b/src/Config.py @@ -10,7 +10,7 @@ class Config(object): def __init__(self, argv): self.version = "0.6.2" - self.rev = 3321 + self.rev = 3323 self.argv = argv self.action = None self.config_file = "zeronet.conf"