cleanly abort on unknown archive type (
issue966)
--- a/mercurial/archival.py Tue Feb 05 14:02:03 2008 +0100
+++ b/mercurial/archival.py Tue Feb 05 15:54:42 2008 +0100
@@ -208,6 +208,8 @@
archiver.addfile(name, mode, islink, data)
ctx = repo.changectx(node)
+ if kind not in archivers:
+ raise util.Abort(_("unknown archive type '%s'" % kind))
archiver = archivers[kind](dest, prefix, mtime or ctx.date()[0])
m = ctx.manifest()
items = m.items()
--- a/tests/test-archive Tue Feb 05 14:02:03 2008 +0100
+++ b/tests/test-archive Tue Feb 05 15:54:42 2008 +0100
@@ -69,6 +69,8 @@
echo 'rev-0.tar created'
fi
+hg archive -t bogus test.bogus
+
echo '% empty repo'
hg init ../empty
cd ../empty
--- a/tests/test-archive.out Tue Feb 05 14:02:03 2008 +0100
+++ b/tests/test-archive.out Tue Feb 05 15:54:42 2008 +0100
@@ -39,5 +39,6 @@
test-TIP/baz/bletch
test-TIP/foo
rev-0.tar created
+abort: unknown archive type 'bogus'
% empty repo
abort: repository has no revisions