diff --git a/src/sofa/pbrpc/pbjson.cc b/src/sofa/pbrpc/pbjson.cc index 341a907..3373938 100644 --- a/src/sofa/pbrpc/pbjson.cc +++ b/src/sofa/pbrpc/pbjson.cc @@ -204,8 +204,10 @@ static rapidjson::Value* field2json(const Message *msg, const FieldDescriptor *f { const Message *value = &(ref->GetRepeatedMessage(*msg, field, i)); rapidjson::Value* v = parse_msg(value, allocator); - json->PushBack(*v, allocator); - delete v; + if (v){ + json->PushBack(*v, allocator); + delete v; + } } } else