Petteri Aimonen
f187aad63d
Fix -Wextra warning in generated .pb.c files.
...
Compile the generated files with the same extra-strict
settings as the core, in order to detect problems in tests.
Update issue 32
Status: FixedInGit
2012-09-02 19:54:35 +03:00
Petteri Aimonen
a06dba6e49
Fix warnings with -Wcast-qual. Add test for C++ compile.
...
Update issue 27
Status: FixedInGit
2012-08-26 15:21:20 +03:00
Petteri Aimonen
a7a6cdad88
Added alltypes-testcases for optional fields and default values.
2012-08-26 10:57:51 +03:00
Petteri Aimonen
0fb5e5e068
Implement error messages in the decoder side.
...
Update issue 7
Status: Started
2012-08-24 21:22:20 +03:00
Petteri Aimonen
2941e90e04
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
2012-08-24 20:23:25 +03:00
Petteri Aimonen
5703ad0c55
Extend 'alltypes' testcase to cover repeated fields.
2012-07-31 19:10:33 +03:00
Petteri Aimonen
10b5da12dc
Fixed a few compiler warnings, added check.
...
Main code is now compiled (for tests) with -pedantic -Wextra.
The test programs are not as strictly bound, but this should
improve the chances that atleast the core library compiles with
most compilers without warnings.
2012-07-18 21:09:13 +03:00
Petteri Aimonen
d8bddabb83
Fix bug with .proto without messages (again), and add a test case for it.
2012-07-05 20:02:06 +03:00
Petteri Aimonen
95eb4a5499
Improve the detection of missing required fields.
...
Now the limit of tracked fields is configurable at compile-time using
PB_MAX_REQUIRED_FIELDS. Added related test and updated documentation.
Fixes issue #18 .
2012-06-30 18:10:08 +03:00
Petteri Aimonen
9fbe9a5de3
Refactoring the field encoder interface.
...
Replaced the confusing pb_enc_* functions with new pb_encode_* functions that
have a cleaner interface. Updated documentation.
Got rid of the endian_copy stuff in pb_encode.c, instead using C casts to do it automatically.
This makes the code safer and also reduces binary size by about 5%.
Fixes Issue 6.
2012-03-01 13:46:52 +02:00
Petteri Aimonen
113bd7ee87
Fixed issue 1 reported by Erik Rosen:
...
The size of non-callback bytes-fields was miscalculated, which
caused all following fields in a message to contain garbage.
Previous commit contains a testcase for this.
This fix changes the generated message description. If your protocol uses
bytes-fields, you should regenerate *.pb.c.
2012-01-12 19:08:05 +02:00
Petteri Aimonen
0f6b615ae3
Added an encode/decode test for 'required' fields of all types.
2012-01-12 19:06:33 +02:00
Petteri Aimonen
b5fb97f6f5
Make the fuzztest runnable again
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1091 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-12-30 09:05:01 +00:00
Petteri Aimonen
a3f5e4d81f
Expanding the tests to better cover decoding from memory buffer.
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1090 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-12-30 08:57:27 +00:00
Petteri Aimonen
1506450b11
Fixed a bug related to submessage encoding into memory buffer.
...
Stream state was not copied back from substream in pb_enc_submessage,
which caused garbage output if the stream callback modified the state.
Expanded tests to cover this problem.
Thanks to Paweł Pery for debugging and reporting this problem.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1089 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-12-30 08:43:50 +00:00
Petteri Aimonen
2a80ff2bd5
Merged 0004-Added-missing-trailing-newlines.patch by Matt Kern.
...
Just adding newlines at the end of files to satisfy old GCC versions.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1021 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-11-30 15:03:23 +00:00
Petteri Aimonen
e66675a25d
Merged 0003-Fixed-format-specifiers.patch by Matt Kern.
...
Fixes cross-platform issues with the length modifier in printf specifiers,
most importantly %d -> %ld.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1020 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-11-30 15:01:59 +00:00
Petteri Aimonen
d96e9575d4
Added comments to the simplest decode/encode examples.
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@979 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-09-18 16:04:45 +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
d4abb63c05
Tests for callback fields
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@974 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-09-12 18:53:33 +00:00
Petteri Aimonen
fab52deda9
Make fuzz test runnable again :)
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@971 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-24 18:23:05 +00:00
Petteri Aimonen
4c76c9c398
makefile fix
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@968 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-24 12:14:44 +00:00
Petteri Aimonen
9cb63dd266
wrong file name
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@967 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-24 12:13:24 +00:00
Petteri Aimonen
a353417021
More unittests
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@966 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-23 18:50:09 +00:00
Petteri Aimonen
64ac18c884
Changed autogenerated file naming from foo.c to foo.pb.c
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@965 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-23 16:16:33 +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
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
2cefaeaf61
Docs
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@956 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-16 17:28:59 +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
0c5bc4caf9
Unittests for encode
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@952 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-10 17:54:15 +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
3959290bc7
First version of header generator
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@950 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-07-31 12:55:09 +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
42e5fcc0be
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@945 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-07-27 20:01:50 +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