# HG changeset patch # User Sylvain Thénault # Date 1305036943 -7200 # Node ID 73d873681c7cca7492c53a3caae59f519dd34716 # Parent ed66f236715d8269f2ca1a684cbdfb48539e24f6# Parent dce4fa28ae491681e4760460b9c7f1d3895ae631 backport oldstable diff -r ed66f236715d -r 73d873681c7c web/application.py --- a/web/application.py Tue May 10 14:07:14 2011 +0200 +++ b/web/application.py Tue May 10 16:15:43 2011 +0200 @@ -390,7 +390,9 @@ raise StatusResponse(404, self.notfound_content(req)) except ValidationError, ex: self.validation_error_handler(req, ex) - except (Unauthorized, BadRQLQuery, RequestError), ex: + except Unauthorized, ex: + self.error_handler(req, ex, tb=False, code=403) + except (BadRQLQuery, RequestError), ex: self.error_handler(req, ex, tb=False) except BaseException, ex: self.error_handler(req, ex, tb=True) @@ -422,7 +424,7 @@ raise Redirect(req.form['__errorurl'].rsplit('#', 1)[0]) self.error_handler(req, ex, tb=False) - def error_handler(self, req, ex, tb=False): + def error_handler(self, req, ex, tb=False, code=500): excinfo = sys.exc_info() self.exception(repr(ex)) req.set_header('Cache-Control', 'no-cache') @@ -441,7 +443,7 @@ content = self.vreg['views'].main_template(req, template, view=errview) except: content = self.vreg['views'].main_template(req, 'error-template') - raise StatusResponse(500, content) + raise StatusResponse(code, content) def need_login_content(self, req): return self.vreg['views'].main_template(req, 'login')