From 2941e90e041b0d7872a4ea458e77dcc787ca6ff2 Mon Sep 17 00:00:00 2001 From: Petteri Aimonen Date: Fri, 24 Aug 2012 20:23:25 +0300 Subject: Reorganize the field decoder interface. This makes the field decoding functions more intuitive to use. The old interface is still present if you specify NANOPB_INTERNALS. Update issue 2 Status: FixedInGit --- example_unions/decode.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'example_unions') diff --git a/example_unions/decode.c b/example_unions/decode.c index edd568cb..a7cc7814 100644 --- a/example_unions/decode.c +++ b/example_unions/decode.c @@ -44,10 +44,11 @@ const pb_field_t* decode_unionmessage_type(pb_istream_t *stream) bool decode_unionmessage_contents(pb_istream_t *stream, const pb_field_t fields[], void *dest_struct) { - pb_field_t field = {}; /* NB: Could get rid of this wrapper by fixing issue #2. */ - field.ptr = fields; + pb_istream_t substream; + if (!pb_make_string_substream(stream, &substream)) + return false; - return pb_dec_submessage(stream, &field, dest_struct); + return pb_decode(&substream, fields, dest_struct); } int main() -- cgit 1.2.3-korg