Mercurial > hg
changeset 4165:0d0f098e5d51
Merge with crew
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Thu, 08 Mar 2007 16:13:16 -0600 |
parents | fe41d9a186ab (current diff) 5c1e18bb804c (diff) |
children | c0271aba6abe |
files | |
diffstat | 1 files changed, 7 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/hgweb/hgweb_mod.py Thu Mar 08 16:12:52 2007 -0600 +++ b/mercurial/hgweb/hgweb_mod.py Thu Mar 08 16:13:16 2007 -0600 @@ -606,9 +606,13 @@ 'zip': ('application/zip', 'zip', '.zip', None), } - def archive(self, req, cnode, type_): + def archive(self, req, id, type_): reponame = re.sub(r"\W+", "-", os.path.basename(self.reponame)) - name = "%s-%s" % (reponame, short(cnode)) + cnode = self.repo.lookup(id) + arch_version = id + if cnode == id: + arch_version = short(cnode) + name = "%s-%s" % (reponame, arch_version) mimetype, artype, extension, encoding = self.archive_specs[type_] headers = [('Content-type', mimetype), ('Content-disposition', 'attachment; filename=%s%s' % @@ -989,12 +993,11 @@ req.write(z.flush()) def do_archive(self, req): - changeset = self.repo.lookup(req.form['node'][0]) type_ = req.form['type'][0] allowed = self.configlist("web", "allow_archive") if (type_ in self.archives and (type_ in allowed or self.configbool("web", "allow" + type_, False))): - self.archive(req, changeset, type_) + self.archive(req, req.form['node'][0], type_) return req.write(self.t("error"))