Commits

Robert Brewer committed b9223ca

Fix for #486 (Error when raise an error other than cherrypy.NotFound).

  • Participants
  • Parent commits 294c3b3

Comments (0)

Files changed (2)

cherrypy/_cphttptools.py

         try:
             body = page_handler(*virtual_path, **self.params)
         except Exception, x:
-            x.args = x.args + (page_handler,)
+            if hasattr(x, "args"):
+                x.args = x.args + (page_handler,)
             raise
         cherrypy.response.body = body
     

cherrypy/_cputil.py

     
     if exc == (None, None, None):
         return ""
-    args = exc[1].args
-    page_handler_str = ""
-    if len(args) > 1:
-        page_handler = args[-1]
-        page_handler_str = 'Page handler: %s\n' % repr(page_handler)
-        args = args[:-1]
-        exc[1].args = args
+    if hasattr(exc[1], "args"):
+        page_handler_str = ""
+        if len(exc[1].args) > 1:
+            page_handler = exc[1].args.pop()
+            page_handler_str = 'Page handler: %s\n' % repr(page_handler)
     return page_handler_str + "".join(traceback.format_exception(*exc))
 
 def bareError(extrabody=None):