Index: runtime/vm/service.cc |
diff --git a/runtime/vm/service.cc b/runtime/vm/service.cc |
index ccc2d58865787bec2cd1cd461036385575625692..db05721f7a41c66553987b7d643ca609ebcd2014 100644 |
--- a/runtime/vm/service.cc |
+++ b/runtime/vm/service.cc |
@@ -1445,10 +1445,14 @@ static RawObject* LookupHeapObjectMessage(Thread* thread, |
// The user may try to load an expired message. |
return Object::sentinel().raw(); |
} |
- MessageSnapshotReader reader(message->data(), |
- message->len(), |
- thread); |
- return reader.ReadObject(); |
+ if (message->len() > 0) { |
+ MessageSnapshotReader reader(message->data(), |
+ message->len(), |
+ thread); |
+ return reader.ReadObject(); |
+ } else { |
+ return message->raw_obj(); |
+ } |
} |