diff options
Diffstat (limited to 'gallery_dl/job.py')
| -rw-r--r-- | gallery_dl/job.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/gallery_dl/job.py b/gallery_dl/job.py index b6b5a6f..d529705 100644 --- a/gallery_dl/job.py +++ b/gallery_dl/job.py @@ -266,6 +266,8 @@ class DownloadJob(Job): if self.postprocessors: for pp in self.postprocessors: pp.finalize() + if self.archive: + self.archive.close() def handle_skip(self): self.out.skip(self.pathfmt.path) @@ -332,7 +334,14 @@ class DownloadJob(Job): archive = self.extractor.config("archive") if archive: path = util.expand_path(archive) - self.archive = util.DownloadArchive(path, self.extractor) + try: + self.archive = util.DownloadArchive(path, self.extractor) + except Exception as exc: + self.extractor.log.warning( + "Failed to open download archive at '%s' ('%s: %s')", + path, exc.__class__.__name__, exc) + else: + self.extractor.log.debug("Using download archive '%s'", path) postprocessors = self.extractor.config("postprocessors") if postprocessors: |
