Michael Poole
3979f9137f
Unify the non-MALLOC_HEADER tests for PB_POINTER fields.
...
Rather than testing PB_POINTER once for each field type,
test it just in decode_field().
git-svn-id: https://svn.kapsi.fi/jpa/nanopb-dev@1084 e3a754e5-d11d-0410-8d38-ebb782a927b9
2012-01-05 22:01:45 +02:00
Michael Poole
ba93b65e9f
Set the defaults properly for newly allocated submessages.
...
Also, pb_dec_submessage() should have used calloc() instead of malloc()
in the first place.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb-dev@1083 e3a754e5-d11d-0410-8d38-ebb782a927b9
2012-01-05 22:01:37 +02:00
Michael Poole
f7c8dd81d4
Make field decoders return false for unsupported pointer fields.
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb-dev@1082 e3a754e5-d11d-0410-8d38-ebb782a927b9
2012-01-05 22:01:33 +02:00
Michael Poole
c66c6b43c4
Support dynamic allocation for string, bytes and message fields.
...
This is turned on by passing -p to nanopb_generator.py or setting the
(nanopb).pointer option for a .proto field.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb-dev@1081 e3a754e5-d11d-0410-8d38-ebb782a927b9
2012-01-05 22:01:30 +02:00
Michael Poole
8e5337e9ef
Merge the generated has_<name> fields into a single one.
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb-dev@1008 e3a754e5-d11d-0410-8d38-ebb782a927b9
2012-01-05 22:01:24 +02:00
Michael Poole
43b8e20744
Create a message descriptor type.
...
This replaces the sentinel at the end of the pb_field_t
array for each message type.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb-dev@1007 e3a754e5-d11d-0410-8d38-ebb782a927b9
2012-01-05 22:01:17 +02:00
Petteri Aimonen
13b6988b64
Fix some compiler warnings in strict C89 mode
...
Contributed by Michael Poole.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1004 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-11-10 16:19:55 +00:00
Petteri Aimonen
fcfc99f766
Fixed a bunch of bugs related to callback fields.
...
Most importantly, callback fields in submessages were being overwritten with garbage, causing segfaults.
Additionally, converted PB_LTYPE_FIXED to PB_LTYPE_FIXED32 and PB_LTYPE_FIXED64. This makes the interface
a bit easier to use, and in addition runs faster.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@975 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-09-13 16:14:08 +00:00
Petteri Aimonen
9966a8c9b6
more unittests
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@964 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-23 15:57:47 +00:00
Petteri Aimonen
8b635924ba
check return values
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@961 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-23 13:33:43 +00:00
Petteri Aimonen
5490163200
More unittests
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@960 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-23 09:59:18 +00:00
Petteri Aimonen
5a9f85b876
unittests, change to PB_LTYPE_BYTES data size
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@959 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-22 18:57:23 +00:00
Petteri Aimonen
7f53c3f748
Example
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@957 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-17 19:03:06 +00:00
Petteri Aimonen
842d52633d
More documentation, small improvements
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@955 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-14 20:11:05 +00:00
Petteri Aimonen
6dfba365b0
Documenting and improving stream behaviour
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@954 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-11 19:22:36 +00:00
Petteri Aimonen
a8d0172507
Encoder
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@951 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-04 16:49:32 +00:00
Petteri Aimonen
f8364310d3
unittests (some)
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@949 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-07-30 09:59:08 +00:00
Petteri Aimonen
d7863b7424
iter
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@948 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-07-28 15:38:05 +00:00
Petteri Aimonen
b9ca72e6af
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@947 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-07-28 14:54:03 +00:00
Petteri Aimonen
d9238da690
bugfix
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@946 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-07-27 20:06:17 +00:00
Petteri Aimonen
ead3b734d8
Making code ansi-compatible
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@944 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-07-27 19:57:43 +00:00
Petteri Aimonen
84304b343a
Improvements, array support
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@943 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-07-27 19:22:11 +00:00
Petteri Aimonen
14bbe22997
First version of decoding
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@942 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-07-25 20:42:48 +00:00