From 7dd358972a15f9911a0bcb6f5389679bbe8dde5a Mon Sep 17 00:00:00 2001 From: Adam Date: Wed, 12 Jun 2013 02:33:30 +0000 Subject: [PATCH] Fix possible crash in Extensible::ExtensibleUnserialize if a null entry is in it --- src/extensible.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/extensible.cpp b/src/extensible.cpp index f408785e6..25fa7938c 100644 --- a/src/extensible.cpp +++ b/src/extensible.cpp @@ -82,8 +82,11 @@ void Extensible::ExtensibleUnserialize(Serialize::Data &data) std::deque list; this->GetExtList(list); for (unsigned i = 0; i < list.size(); ++i) - if ((*extension_items)[list[i]]->Serialize()) + { + ExtensibleItem *item = extension_items->at(list[i]); + if (item && item->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)