|
@@ -10,8 +10,6 @@ from __future__ import absolute_import
|
|
import weakref
|
|
import weakref
|
|
import traceback
|
|
import traceback
|
|
|
|
|
|
-from collections import Callable
|
|
|
|
-
|
|
|
|
__all__ = ['safe_ref']
|
|
__all__ = ['safe_ref']
|
|
|
|
|
|
|
|
|
|
@@ -35,7 +33,7 @@ def safe_ref(target, on_delete=None): # pragma: no cover
|
|
don't know how to create reference""".format(target)
|
|
don't know how to create reference""".format(target)
|
|
return get_bound_method_weakref(target=target,
|
|
return get_bound_method_weakref(target=target,
|
|
on_delete=on_delete)
|
|
on_delete=on_delete)
|
|
- if isinstance(on_delete, Callable):
|
|
|
|
|
|
+ if callable(on_delete):
|
|
return weakref.ref(target, on_delete)
|
|
return weakref.ref(target, on_delete)
|
|
else:
|
|
else:
|
|
return weakref.ref(target)
|
|
return weakref.ref(target)
|
|
@@ -140,7 +138,7 @@ class BoundMethodWeakref(object): # pragma: no cover
|
|
pass
|
|
pass
|
|
for function in methods:
|
|
for function in methods:
|
|
try:
|
|
try:
|
|
- if isinstance(function, Callable):
|
|
|
|
|
|
+ if callable(function):
|
|
function(self)
|
|
function(self)
|
|
except Exception as exc:
|
|
except Exception as exc:
|
|
try:
|
|
try:
|