From 060b14401469edd7321257c6e16bbefeaf1fa476 Mon Sep 17 00:00:00 2001 From: Ansgar Burchardt Date: Thu, 7 Mar 2013 07:42:44 +0100 Subject: [PATCH] parse_file_list: really handle files without an entry in the Files field We have to raise an exception right away after all if "entry" is None as we later assign to "entry['sha*sum']". --- daklib/upload.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/daklib/upload.py b/daklib/upload.py index 059cc511..1683b8b0 100644 --- a/daklib/upload.py +++ b/daklib/upload.py @@ -191,6 +191,8 @@ def parse_file_list(control, has_priority_and_section): continue (sha1sum, size, filename) = line.split() entry = entries.get(filename, None) + if entry is None: + raise InvalidChangesException('{0} is listed in Checksums-Sha1, but not in Files.'.format(filename)) if entry is not None and entry.get('size', None) != long(size): raise InvalidChangesException('Size for {0} in Files and Checksum-Sha1 fields differ.'.format(filename)) entry['sha1sum'] = sha1sum @@ -200,6 +202,8 @@ def parse_file_list(control, has_priority_and_section): continue (sha256sum, size, filename) = line.split() entry = entries.get(filename, None) + if entry is None: + raise InvalidChangesException('{0} is listed in Checksums-Sha256, but not in Files.'.format(filename)) if entry is not None and entry.get('size', None) != long(size): raise InvalidChangesException('Size for {0} in Files and Checksum-Sha256 fields differ.'.format(filename)) entry['sha256sum'] = sha256sum -- 2.39.2