summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/foundation/AMessage.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'media/libstagefright/foundation/AMessage.cpp')
-rw-r--r--media/libstagefright/foundation/AMessage.cpp16
1 files changed, 14 insertions, 2 deletions
diff --git a/media/libstagefright/foundation/AMessage.cpp b/media/libstagefright/foundation/AMessage.cpp
index 8b01ac6..dc42f91 100644
--- a/media/libstagefright/foundation/AMessage.cpp
+++ b/media/libstagefright/foundation/AMessage.cpp
@@ -25,6 +25,7 @@
#include "AString.h"
#include <binder/Parcel.h>
+#include <media/stagefright/foundation/hexdump.h>
namespace android {
@@ -399,9 +400,20 @@ AString AMessage::debugString(int32_t indent) const {
"RefBase *%s = %p", item.mName, item.u.refValue);
break;
case kTypeBuffer:
- tmp = StringPrintf(
- "ABuffer *%s = %p", item.mName, item.u.refValue);
+ {
+ sp<ABuffer> buffer = static_cast<ABuffer *>(item.u.refValue);
+
+ if (buffer != NULL && buffer->size() <= 64) {
+ tmp = StringPrintf("Buffer %s = {\n", item.mName);
+ hexdump(buffer->data(), buffer->size(), indent + 4, &tmp);
+ appendIndent(&tmp, indent + 2);
+ tmp.append("}");
+ } else {
+ tmp = StringPrintf(
+ "Buffer *%s = %p", item.mName, buffer.get());
+ }
break;
+ }
case kTypeMessage:
tmp = StringPrintf(
"AMessage %s = %s",