hgweb: support custom http headers in ErrorResponse
authorSune Foldager <cryo@cyanite.org>
Mon, 09 Feb 2009 11:31:52 +0100
changeset 7741 a3d7f99c23c0
parent 7740 176d3d681702
child 7742 fceb9fa01a00
hgweb: support custom http headers in ErrorResponse
mercurial/hgweb/common.py
mercurial/hgweb/request.py
--- a/mercurial/hgweb/common.py	Mon Feb 09 11:29:09 2009 +0100
+++ b/mercurial/hgweb/common.py	Mon Feb 09 11:31:52 2009 +0100
@@ -17,9 +17,10 @@
 HTTP_SERVER_ERROR = 500
 
 class ErrorResponse(Exception):
-    def __init__(self, code, message=None):
+    def __init__(self, code, message=None, headers=[]):
         Exception.__init__(self)
         self.code = code
+        self.headers = headers
         if message is not None:
             self.message = message
         else:
--- a/mercurial/hgweb/request.py	Mon Feb 09 11:29:09 2009 +0100
+++ b/mercurial/hgweb/request.py	Mon Feb 09 11:31:52 2009 +0100
@@ -77,6 +77,7 @@
 
             if isinstance(status, ErrorResponse):
                 status = statusmessage(status.code)
+                self.header(status.headers)
             elif status == 200:
                 status = '200 Script output follows'
             elif isinstance(status, int):