From 0b05eaa020482e3ec17a345eea612bf9e8ae1593 Mon Sep 17 00:00:00 2001 From: Adam Date: Fri, 1 Mar 2013 01:40:14 -0500 Subject: [PATCH] Only shrink extensible items that are metadata in ExtensibleUnserialize --- src/extensible.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/extensible.cpp b/src/extensible.cpp index 98395eccb..f408785e6 100644 --- a/src/extensible.cpp +++ b/src/extensible.cpp @@ -78,11 +78,12 @@ void Extensible::ExtensibleSerialize(Serialize::Data &data) const void Extensible::ExtensibleUnserialize(Serialize::Data &data) { - /* Shrink existing extensible items */ + /* Shrink existing extensible metadata items */ std::deque list; this->GetExtList(list); for (unsigned i = 0; i < list.size(); ++i) - this->Shrink(list[i]); + if ((*extension_items)[list[i]]->Serialize()) + this->Shrink(list[i]); std::set keys = data.KeySet(); for (std::set::iterator it = keys.begin(), it_end = keys.end(); it != it_end; ++it)