We have a core dump here:
#0 0xf749b0d9 in std::string::size () from /usr/lib/libstdc++.so.6
#1 0x0822119c in bd::Header::ByteSize ()
#2 0x082323b3 in
google::protobuf::internal::WireFormat::MessageSizeNoVirtual<bd::Header> ()
#3 0x082257cd in bd::Request::ByteSize ()
#4 0x08233773 in
google::protobuf::internal::WireFormat::MessageSizeNoVirtual<bd::Request> ()
#5 0x082258b8 in bd::Data::ByteSize ()
#6 0x08233797 in
google::protobuf::internal::WireFormat::MessageSizeNoVirtual<bd::Data> ()
#7 0x0822598e in bd::Main::ByteSize ()
Question #1: Any clue what could cause this? If bd::Request defines a
"repeated bd::Header" field and this core dump is already in
bd::Header::ByteSize, does that mean there must be at least one bd::Header
in the repeated list, or could it be empty still (never added anything)?
We are trying to track down the state of the data in the frame that has a
pointer to the protobuf message (which is named "bd::Main" i.e. "package bd;
message Main { ... }" in the proto).
We are trying in gdb to get to it, without success. For example:
(gdb) p *pb_pip_thread_data->bd_pb_data_msg.main_msg_hnd
Attempt to dereference a generic pointer.
(gdb) p *(bd::Main *)pb_pip_thread_data->bd_pb_data_msg.main_msg_hnd
A syntax error in expression, near
`)pb_pip_thread_data->bd_pb_data_msg.main_msg_hnd'.
Question #2: How do we dereference the pointer to the message in GDB? Note
that it is defined as a "void *" but we can't convince gdb to cast it
properly - any clues?
Thanks
--edan
--
You received this message because you are subscribed to the Google Groups
"Protocol Buffers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/protobuf?hl=en.