aboutsummaryrefslogtreecommitdiffhomepage
path: root/gbp
diff options
context:
space:
mode:
authorGuido Günther <agx@sigxcpu.org>2009-01-23 18:31:41 +0100
committerGuido Günther <agx@sigxcpu.org>2009-01-23 18:31:41 +0100
commit5c8de273bd8e4498bf40902be4bec675ea037192 (patch)
treebd1eb96c6a632859975103e651059b3c8ef219ec /gbp
parenta748f52866da3579bb7a143e56162260b64dabd0 (diff)
handle dpkg-parsechangelog errors
Closes: #512765
Diffstat (limited to 'gbp')
-rw-r--r--gbp/deb_utils.py17
1 files changed, 10 insertions, 7 deletions
diff --git a/gbp/deb_utils.py b/gbp/deb_utils.py
index 1c3d95f2..8cebd7fa 100644
--- a/gbp/deb_utils.py
+++ b/gbp/deb_utils.py
@@ -114,14 +114,17 @@ def parse_changelog(changelog):
if status:
raise ParseChangeLogError, output
cp = email.message_from_string(output)
- if '-' in cp['Version']:
- upstream_version, cp['Debian-Version'] = cp['Version'].rsplit('-', 1)
- if ':' in upstream_version:
- cp['Epoch'], cp['Upstream-Version'] = upstream_version.split(':', 1)
+ try:
+ if '-' in cp['Version']:
+ upstream_version, cp['Debian-Version'] = cp['Version'].rsplit('-', 1)
+ if ':' in upstream_version:
+ cp['Epoch'], cp['Upstream-Version'] = upstream_version.split(':', 1)
+ else:
+ cp['Upstream-Version'] = upstream_version
else:
- cp['Upstream-Version'] = upstream_version
- else:
- cp['Debian-Version'] = cp['Version']
+ cp['Debian-Version'] = cp['Version']
+ except TypeError:
+ raise ParseChangeLogError, output.split('\n')[0]
return cp