summaryrefslogtreecommitdiff
path: root/patchtracker/ReqHandler.py
diff options
context:
space:
mode:
Diffstat (limited to 'patchtracker/ReqHandler.py')
-rwxr-xr-xpatchtracker/ReqHandler.py8
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":