From 0f0629faebdd1683bce1b69a5d7b099afc794a75 Mon Sep 17 00:00:00 2001 From: Wayne Witzel III Date: Fri, 3 Aug 2012 12:07:24 -0700 Subject: Fix for issue #621 --- pyramid/config/util.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pyramid/config/util.py b/pyramid/config/util.py index 4e4c93be3..ade02e87f 100644 --- a/pyramid/config/util.py +++ b/pyramid/config/util.py @@ -1,6 +1,8 @@ import re import traceback +from functools import update_wrapper + from zope.interface import implementer from pyramid.interfaces import IActionInfo @@ -59,9 +61,10 @@ def action_method(wrapped): finally: self._ainfo.pop() return result - wrapper.__name__ = wrapped.__name__ - wrapper.__doc__ = wrapped.__doc__ - wrapper.__docobj__ = wrapped # for sphinx + + if hasattr(wrapped, '__name__'): + update_wrapper(wrapper, wrapped) + wrapper.__docobj__ = wrapped return wrapper def make_predicates(xhr=None, request_method=None, path_info=None, -- cgit v1.2.3