Status: New
Owner: [email protected]
Labels: Type-Defect Priority-Medium
New issue 593 by [email protected]: FatalException on calling
SerializeAsString()
http://code.google.com/p/protobuf/issues/detail?id=593
Constellation:
Protobuf 2.5.0
Ubuntu 12.04 LTS
C++ API
Problem:
Protobuf randomly throws a FatalException on calling SerializeAsString()
with this output:
[libprotobuf FATAL google/protobuf/message_lite.cc:224] CHECK
failed: !coded_out.HadError():
terminate called after throwing an instance
of 'google::protobuf::FatalException'
what(): CHECK failed: !coded_out.HadError()
This happens on every 10th or 100th call of SerializeAsString().
This is the source code in which the SerializeAsString is called:
QByteArray ProtobufSerializer::serialize(AbstractTransferable*
transferable) throw(NexusDataLinkException) {
ProtoEnvelop envelop;
ProtoPayloadWrapper* wrapper = envelop.add_payloadwrapper();
ChannelResponse* response = static_cast<ChannelResponse*>(transferable);
ProtoResponse*
allocatedProtoResponse(wrapper->mutable_channelresponse());
populateProtoResponse(response, allocatedProtoResponse,
transferable->getDataContainer());
envelop.set_destination_id(CommonDefinitions::SERVER_ID);
envelop.set_source_id(agentId);
// convert to byte array
std::string dataString = envelop.SerializeAsString();
QByteArray data = QByteArray(dataString.data(), dataString.size()); //
makes a deep copy of the data contained in dataString
return data;
}
What could be the cause of this error? I could not find anything similar on
google & Co.
Kind regards,
Manfred
--
You received this message because this project is configured to send all
issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings
--
You received this message because you are subscribed to the Google Groups "Protocol
Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/protobuf.
For more options, visit https://groups.google.com/groups/opt_out.