summaryrefslogtreecommitdiff
path: root/kafka/protocol/pickle.py
diff options
context:
space:
mode:
Diffstat (limited to 'kafka/protocol/pickle.py')
-rw-r--r--kafka/protocol/pickle.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/kafka/protocol/pickle.py b/kafka/protocol/pickle.py
index b7e5264..d6e5fa7 100644
--- a/kafka/protocol/pickle.py
+++ b/kafka/protocol/pickle.py
@@ -9,9 +9,15 @@ import types
def _pickle_method(method):
- func_name = method.im_func.__name__
- obj = method.im_self
- cls = method.im_class
+ try:
+ func_name = method.__func__.__name__
+ obj = method.__self__
+ cls = method.__self__.__class__
+ except AttributeError:
+ func_name = method.im_func.__name__
+ obj = method.im_self
+ cls = method.im_class
+
return _unpickle_method, (func_name, obj, cls)