I sent a question yesterday, but I don't see it as having been posted, much less responded to. My apologies for the redundancy if my original message is in some queue somewhere.
********** I'm trying to determine the utility of Valgrind in an app. The app uses protocol buffers. I am seeing a message from Valgrind Syscall param write(buf) points to uninitialised byte(s) with the following info Address 0x11c7fa02 is 2 bytes inside a block of size 8,192 alloc'd At first, I thought it might be one of the fields in a message declared optional, but when I filled out the field, I got the same warning. In the process of looking into this more closely I was able to dump the buffer: 0x00 0x01 0xc1 0x09 0x00 0x00 0x00 0x10 <---- secret, pre-header? 0x08 0x00 0x10 0xa5 0xcb 0x96 0xad 0x0a 0x1a 0x06 0x61 0x70 0x61 0x63 0x68 0x65 The latter 16 bytes are the message proper with three fields and I understand how they are created and interpreted from the Encoding spec (very helpful). It is the first eight bytes I don't understand. These first bytes are almost like a secret pre-header. It looks to me as if the last four bytes are a 32-bit length field. The number matches in this case and in the other case in which the optional field was left unset. I can't figure what the first four bytes indicate. In particular, the bytes 0xc1 and 0x09, which would start the area of the supposedly uninitialized bytes. Is there somewhere in the code I can look to see how this pre-header is created. Or I would be happy to research this myself if some documentation exists, but I don't know where to start looking. Thanks for any help, jdm -- 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/d/optout.
