From ebc507dc6eaa42be8729f01bcee6cd4d352a9055 Mon Sep 17 00:00:00 2001 From: Todd Gamblin Date: Sat, 29 Jun 2013 15:59:08 -0700 Subject: Clean up half-downloaded tarballs. --- lib/spack/spack/stage.py | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/lib/spack/spack/stage.py b/lib/spack/spack/stage.py index 54d5eb7e6a..9145fa5371 100644 --- a/lib/spack/spack/stage.py +++ b/lib/spack/spack/stage.py @@ -155,11 +155,17 @@ class Stage(object): else: tty.msg("Fetching %s" % self.url) - # Run curl but grab the mime type from the http headers - headers = spack.curl('-#', # status bar - '-O', # save file to disk - '-D', '-', # print out HTML headers - '-L', self.url, return_output=True) + try: + # Run curl but grab the mime type from the http headers + headers = spack.curl('-#', # status bar + '-O', # save file to disk + '-D', '-', # print out HTML headers + '-L', self.url, return_output=True) + except: + # clean up archive on failure. + if self.archive_file: + os.remove(self.archive_file) + raise # Check if we somehow got an HTML file rather than the archive we # asked for. We only look at the last content type, to handle -- cgit v1.2.3-60-g2f50