X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=pb_encode.c;h=d6ba7e34ef03a6cfee09506218c9984dd2d9b0a5;hb=696a01bf140e91661eae77663de99c78c95dcc73;hp=f3c62a166b2159183ac2f11332a87b6e30351273;hpb=ebddda9b5cdda5d082f07bbb6beb010f48c8f9b3;p=apps%2Fagl-service-can-low-level.git diff --git a/pb_encode.c b/pb_encode.c index f3c62a16..d6ba7e34 100644 --- a/pb_encode.c +++ b/pb_encode.c @@ -28,7 +28,8 @@ static const pb_encoder_t PB_ENCODERS[PB_LTYPES_COUNT] = { &pb_enc_bytes, &pb_enc_string, - &pb_enc_submessage + &pb_enc_submessage, + NULL /* extensions */ }; /* pb_ostream_t implementation */ @@ -160,9 +161,14 @@ static bool checkreturn encode_static_field(pb_ostream_t *stream, { pb_encoder_t func; const void *pSize; + bool dummy = true; func = PB_ENCODERS[PB_LTYPE(field->type)]; - pSize = (const char*)pData + field->size_offset; + + if (field->size_offset) + pSize = (const char*)pData + field->size_offset; + else + pSize = &dummy; switch (PB_HTYPE(field->type)) {