Browse Source

dump_body did not show message body properly when isa buffer instance

Ask Solem 12 years ago
parent
commit
a846fe84a7
1 changed files with 3 additions and 1 deletions
  1. 3 1
      celery/worker/consumer.py

+ 3 - 1
celery/worker/consumer.py

@@ -81,7 +81,7 @@ from time import sleep
 from Queue import Empty
 from Queue import Empty
 
 
 from kombu.syn import _detect_environment
 from kombu.syn import _detect_environment
-from kombu.utils.encoding import safe_repr, safe_str
+from kombu.utils.encoding import safe_repr, safe_str, bytes_t
 from kombu.utils.eventio import READ, WRITE, ERR
 from kombu.utils.eventio import READ, WRITE, ERR
 
 
 from celery.app import app_or_default
 from celery.app import app_or_default
@@ -171,6 +171,8 @@ def debug(msg, *args, **kwargs):
 
 
 
 
 def dump_body(m, body):
 def dump_body(m, body):
+    if isinstance(body, buffer):
+        body = bytes_t(body)
     return "%s (%sb)" % (text.truncate(safe_repr(body), 1024), len(m.body))
     return "%s (%sb)" % (text.truncate(safe_repr(body), 1024), len(m.body))