diff --git a/ndn-cpp/data.cpp b/ndn-cpp/data.cpp
index 1be361a..98ffde0 100644
--- a/ndn-cpp/data.cpp
+++ b/ndn-cpp/data.cpp
@@ -31,7 +31,7 @@
   timestampMilliseconds_ = metaInfoStruct.timestampMilliseconds;
   type_ = metaInfoStruct.type;
   freshnessSeconds_ = metaInfoStruct.freshnessSeconds;
-  finalBlockID_ = Name::Component(Blob(metaInfoStruct.finalBlockID.value, metaInfoStruct.finalBlockID.valueLength));
+  finalBlockID_ = Name::Component(Blob(metaInfoStruct.finalBlockID.value));
 }
 
 Data::Data()
@@ -50,12 +50,7 @@
   signature_->get(dataStruct.signature);
   name_.get(dataStruct.name);
   metaInfo_.get(dataStruct.metaInfo);
-  
-  dataStruct.contentLength = content_.size();
-  if (content_.size() > 0)
-    dataStruct.content = (uint8_t*)content_.buf();
-  else
-    dataStruct.content = 0;
+  content_.get(dataStruct.content);
 }
 
 void 
@@ -64,7 +59,7 @@
   signature_->set(dataStruct.signature);
   name_.set(dataStruct.name);
   metaInfo_.set(dataStruct.metaInfo);
-  content_ = Blob(dataStruct.content, dataStruct.contentLength);
+  content_ = Blob(dataStruct.content);
 
   onChanged();
 }
