diff options
Diffstat (limited to 'patchtracker/ReqHandler.py')
-rwxr-xr-x | patchtracker/ReqHandler.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/patchtracker/ReqHandler.py b/patchtracker/ReqHandler.py index af54116..90fc75a 100755 --- a/patchtracker/ReqHandler.py +++ b/patchtracker/ReqHandler.py @@ -7,6 +7,7 @@ import sys import patchtracker.Conf as Conf from patchtracker.Templates import ErrorTemplate, PatchTemplate, PackageVersTemplate, LetterTocTemplate, FrontPageTemplate, SearchResultsTemplate from patchtracker.DiffGzHandler import DiffGzHandler, DiffGzException +from patchtracker.DebTarHandler import DebTarHandler from patchtracker.CacheObject import CacheObject, CacheMissException import patchtracker.DB as DB from patchtracker.DB import PatchTrackerDB @@ -66,12 +67,17 @@ class PatchCmd(Cmd): if mode == "dl": self.content_type = "text/x-diff" + # XXX this is kinda ugly... def make_diffhandler(self, pkgname, vers): dfile = self.db.findDiffGz(pkgname,vers) if dfile: return DiffGzHandler(dfile) else: - raise ReqHandlerException("can not find diff file for %s / %s"%(pkgname,vers)) + dfile = self.db.findDebTar(pkgname, vers) + if dfile: + return DebTarHandler(dfile) + else: + raise ReqHandlerException("can not find diff file for %s / %s"%(pkgname,vers)) def output(self): if self.mode == "dl": |