Skip to content

Commit e4cb445

Browse files
committed
Gracefully handle __name__ not being a valid attribute on signals
1 parent 1264b23 commit e4cb445

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

debug_toolbar/panels/signals.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ class SignalDebugPanel(DebugPanel):
1919
name = "Signals"
2020
template = 'debug_toolbar/panels/signals.html'
2121
has_content = True
22-
22+
2323
SIGNALS = {
2424
'request_started': request_started,
2525
'request_finished': request_finished,
@@ -34,16 +34,16 @@ class SignalDebugPanel(DebugPanel):
3434
'post_delete': post_delete,
3535
'post_syncdb': post_syncdb,
3636
}
37-
37+
3838
def nav_title(self):
3939
return _("Signals")
40-
40+
4141
def title(self):
4242
return _("Signals")
43-
43+
4444
def url(self):
4545
return ''
46-
46+
4747
def signals(self):
4848
signals = self.SIGNALS.copy()
4949
if hasattr(settings, 'DEBUG_TOOLBAR_CONFIG'):
@@ -57,7 +57,7 @@ def signals(self):
5757
signals[parts[-1]] = getattr(sys.modules[path], parts[-1])
5858
return signals
5959
signals = property(signals)
60-
60+
6161
def process_response(self, request, response):
6262
signals = []
6363
keys = self.signals.keys()
@@ -77,8 +77,8 @@ def process_response(self, request, response):
7777
elif getattr(receiver, 'im_class', None) is not None:
7878
text = "method %s on %s" % (receiver.__name__, receiver.im_class.__name__)
7979
else:
80-
text = "function %s" % receiver.__name__
80+
text = "function %s" % getattr(receiver, '__name__', str(receiver))
8181
receivers.append(text)
8282
signals.append((name, signal, receivers))
83-
83+
8484
self.record_stats({'signals': signals})

0 commit comments

Comments
 (0)