Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2013-04-14 | Fix bug with empty strings in repeated string callbacks. | Petteri Aimonen | 4 | -2/+23 | |
Fix suggested by Henrik Carlgren. Added also unit test for the bug. Update issue 73 Status: FixedInGit | |||||
2013-04-08 | Avoid maybe-uninitialized warning | Petteri Aimonen | 1 | -4/+6 | |
Patch from dch. | |||||
2013-04-08 | No need to include stdbool.h separately | dch | 2 | -2/+0 | |
2013-04-08 | __pragma keyword is only supported by recent Microsoft compilers | dch | 1 | -1/+1 | |
2013-04-02 | Do not generate has_ fields for callback fields. | Petteri Aimonen | 1 | -1/+1 | |
The arg field can be used to store the field presence from inside the callback. Furthermore, having the has_ field for encoding callbacks would be more annoying than useful. Update issue 70 Status: FixedInGit | |||||
2013-04-02 | Change the callback function to use void**. | Petteri Aimonen | 11 | -30/+58 | |
NOTE: This change breaks backwards-compatibility by default. If you have old callback functions, you can define PB_OLD_CALLBACK_STYLE to retain the old behaviour. If you want to convert your old callbacks to new signature, you need to do the following: 1) Change decode callback argument to void **arg and encode callback argument to void * const *arg. 2) Change any reference to arg into *arg. The rationale for making the new behaviour the default is that it simplifies the common case of "allocate some memory in decode callback". Update issue 69 Status: FixedInGit | |||||
2013-03-13 | Fix warning on clang. | Petteri Aimonen | 1 | -1/+1 | |
Update issue 67 Status: FixedInGit | |||||
2013-03-13 | Add support for packed structures on IAR and MSVC. | Petteri Aimonen | 2 | -4/+29 | |
Update issue 66 Status: FixedInGit | |||||
2013-03-09 | Make the generator options accept a file name in addition to format string. | Petteri Aimonen | 1 | -2/+10 | |
2013-03-09 | Add PB_SYSTEM_HEADER compile time option. | Petteri Aimonen | 3 | -2/+5 | |
This allows replacing the C99 standard include file names with a single system-specific file. It should provide all the necessary system functions (typedefs, memset, memcpy, strlen). Update issue 62 Status: FixedInGit | |||||
2013-03-09 | Rename pb_field_iterator_t field 'current' to 'pos'. | Petteri Aimonen | 1 | -38/+38 | |
This avoids a name clash when compiling as Linux kernel module. Update issue 60 Status: FixedInGit | |||||
2013-03-09 | Implement error message support for the encoder side. | Petteri Aimonen | 5 | -15/+41 | |
Update issue 7 Status: FixedInGit | |||||
2013-03-09 | alltypes.proto no longer needs to include nanopb.proto | Petteri Aimonen | 1 | -2/+0 | |
2013-03-09 | Switch alltypes.proto to use the new .options file mechanism. | Petteri Aimonen | 2 | -23/+26 | |
2013-03-09 | Add simple support for separate options file. | Petteri Aimonen | 2 | -33/+87 | |
Update issue 12 Still needs documentation. | |||||
2013-03-09 | Fix additional bug with empty message types. | Petteri Aimonen | 1 | -0/+3 | |
pb_field_next() would access past the fields array. | |||||
2013-03-09 | Add option to run the tests with mudflap to detect pointer errors. | Petteri Aimonen | 1 | -0/+8 | |
2013-03-09 | Improve the fuzztest. | Petteri Aimonen | 1 | -4/+4 | |
Enable -fstack-protector-all to detect any stack smashing bugs. Also use test_decode3 for maximal vulnerable surface. | |||||
2013-03-09 | Fix error in backwards compatibility testcase | Petteri Aimonen | 1 | -1/+1 | |
2013-03-09 | Fix bug with decoding empty message types. Add test for the same. | Petteri Aimonen | 4 | -1/+13 | |
Note: the bug only applies to empty message types. Empty messages of non-empty message types are not affected. Update issue 65 Status: FixedInGit | |||||
2013-03-06 | Add a dummy field if struct would otherwise be empty. | Petteri Aimonen | 1 | -0/+6 | |
Update issue 64 Status: FixedInGit | |||||
2013-03-04 | Add generator option to configure #include directives. | Petteri Aimonen | 1 | -5/+14 | |
This suits complex projects, where there are multiple interdependent .proto files in various directories. Patch by Michael Haberler. | |||||
2013-03-02 | Setting version to 0.2.1-dev | Petteri Aimonen | 2 | -2/+2 | |
2013-03-02 | Publishing nanopb-0.2.0 | Petteri Aimonen | 2 | -2/+2 | |
2013-03-02 | Update changelog | Petteri Aimonen | 1 | -0/+13 | |
2013-03-02 | Update documentation | Petteri Aimonen | 3 | -35/+35 | |
2013-02-28 | Add --extension option to generator. | Petteri Aimonen | 1 | -5/+7 | |
Patch courtesy of Michael Haberler. | |||||
2013-02-22 | Added CMake file for use in projects linking against nanopb. | Pavel Ilin | 1 | -0/+224 | |
2013-02-21 | Merge branch 'dev-0.2' | Petteri Aimonen | 7 | -570/+507 | |
2013-02-21 | Move STATIC_ASSERTs to .pb.c file. | Petteri Aimonen | 1 | -22/+24 | |
This way the .pb.h will remain cleaner and easier to read. | |||||
2013-02-20 | Separate PB_HTYPE to PB_ATYPE and PB_HTYPE. | Petteri Aimonen | 3 | -122/+176 | |
Also clean up the logic so that it is easier to implement more allocation types in the future. Update issue 53 Status: FixedInGit | |||||
2013-02-20 | Rename PB_HTYPE_ARRAY -> PB_HTYPE_REPEATED. | Petteri Aimonen | 5 | -313/+103 | |
This is a more logical name in parallel with PB_HTYPE_REQUIRED and PB_HTYPE_OPTIONAL. Warning: This breaks backwards-compatibility of generated .pb.c files. You will have to regenerate the files and recompile. | |||||
2013-02-17 | Reformat generated .pb.c files using macros. | Petteri Aimonen | 2 | -87/+139 | |
This has the following advantages: 1) Easier to modify pb_field_t encoding 2) Simpler generator logic 3) Tidier looking, easier to read .pb.c files Update issue 58 Status: FixedInGit | |||||
2013-02-13 | Setting version to 0.1.9.1-dev | Petteri Aimonen | 2 | -2/+2 | |
2013-02-13 | Publishing nanopb-0.1.9 | Petteri Aimonen | 3 | -3/+3 | |
2013-02-11 | Add gitignore. | Petteri Aimonen | 1 | -0/+39 | |
This is a bit bloated gitignore file. Having binaries in a separate build directory would be cleaner, but I don't bother to make that change now. | |||||
2013-02-11 | Replace pb_type_t enum with #defines. | Petteri Aimonen | 1 | -54/+54 | |
See issue #57. | |||||
2013-02-11 | Set version to 0.2.0-dev | Petteri Aimonen | 2 | -2/+2 | |
2013-02-07 | Update changelog | Petteri Aimonen | 1 | -0/+11 | |
2013-02-07 | Fix error message bugs with packed arrays. | Petteri Aimonen | 1 | -3/+9 | |
Error messages were not propagated correctly with PB_HTYPE_ARRAY. Error status (boolean return value) was correct. Update issue 56 Status: FixedInGit | |||||
2013-02-07 | Add check for sizeof(double) == 8. | Petteri Aimonen | 1 | -0/+15 | |
Update issue 54 Status: FixedInGit | |||||
2013-02-07 | Sanitize filenames before putting them in #ifndef. | Petteri Aimonen | 3 | -2/+13 | |
Update issue 50 Status: FixedInGit | |||||
2013-02-07 | Fix compiler warning on MSVC (issue #57) | Petteri Aimonen | 1 | -1/+1 | |
2013-02-06 | Use unsigned datatypes where appropriate. | Petteri Aimonen | 1 | -9/+9 | |
2013-02-06 | Improve the pb_decode_varint implementations. | Petteri Aimonen | 1 | -18/+40 | |
Results for ARM: -4% execution time, +1% code size | |||||
2013-02-06 | Avoid unnecessary looping in required fields check. | Petteri Aimonen | 1 | -7/+26 | |
Results for ARM: -6% execution time, -1% code size | |||||
2013-02-06 | Add compile-time option PB_BUFFER_ONLY. | Petteri Aimonen | 6 | -3/+60 | |
This allows slight optimizations if only memory buffer support (as opposed to stream callbacks) is wanted. On ARM difference is -12% execution time, -4% code size when enabled. | |||||
2013-02-05 | Make pb_decode_varint32 a separate implementation. | Petteri Aimonen | 1 | -4/+14 | |
This avoids doing 64-bit arithmetic for 32-bit varint decodings. It does increase the code size somewhat. Results for ARM Cortex-M3: -10% execution time, +1% code size, -2% ram usage. | |||||
2013-02-05 | Performance improvement: replace memcpy with loop. | Petteri Aimonen | 2 | -3/+9 | |
In the pb_istream_from_buffer and pb_ostream_from_buffer, memcpy was used to transfer values to the buffer. For the common case of count = 1-10 bytes, a simple loop is faster. | |||||
2013-02-05 | Add Java package name to nanopb.proto. | Petteri Aimonen | 1 | -0/+2 | |
This fixes problems when interoperating with Java. Fix suggested by trepidacious: https://groups.google.com/forum/#!topic/nanopb/hZgrj6h9OnY |