summaryrefslogtreecommitdiffstats
path: root/pb.h
AgeCommit message (Collapse)AuthorFilesLines
2015-11-14Add testcase for anonymous unions + few fixes.Petteri Aimonen1-2/+2
Fixes compilation error with anonymous unions when it is not the last field in message. Also fixes extraneous newlines in header file. Cleanup the pb.h extraneous use of ##.
2015-11-10Add option to allow for anonymous unionsBenjamin Kamath1-1/+16
2015-09-26Setting version to 0.3.5-devPetteri Aimonen1-1/+1
2015-09-26Publishing nanopb-0.3.4Petteri Aimonen1-1/+1
2015-09-12Fix handling of unsigned 8- or 16-bit enums.Petteri Aimonen1-1/+2
Previously unsigned enums would throw errors on decoding if the value went outside the signed range (issue #164). Currently only helps for enums defined within the same file, but solving issue #165 will make it work for multiple files also.
2015-04-10Setting version to 0.3.4-devPetteri Aimonen1-1/+1
2015-04-10Publishing nanopb-0.3.3Petteri Aimonen1-1/+1
2015-01-24Setting version to nanopb-0.3.3-devPetteri Aimonen1-1/+1
2015-01-24Publishing nanopb-0.3.2Petteri Aimonen1-1/+1
2015-01-11Bugfixes for oneof support.Petteri Aimonen1-1/+1
Fixes crashes / memory leaks when using pointer type fields. Also fixes initialization of which_oneof fields.
2015-01-04Implement support for oneofs (C unions).Petteri Aimonen1-0/+18
Basic test included, should probably add an oneof to the AllTypes test also. Update issue 131 Status: Started
2015-01-03Change PB_RETURN_ERROR() macro to avoid compiler warnings.Petteri Aimonen1-11/+10
Update issue 140 Status: FixedInGit
2014-12-26Add support for POINTER type in extensionsPetteri Aimonen1-2/+4
2014-12-22Add compilation option to disable struct packing.Petteri Aimonen1-1/+10
Update issue 136 Status: FixedInGit
2014-09-16Set version to nanopb-0.3.2-devPetteri Aimonen1-1/+1
2014-09-11Publishing nanopb-0.3.1Petteri Aimonen1-1/+1
2014-08-26Setting version to 0.3.1-devPetteri Aimonen1-1/+1
2014-08-26Publishing nanopb-0.3.0Petteri Aimonen1-1/+1
2014-08-19Add #if guard for .pb.h version.Petteri Aimonen1-14/+6
The version in PB_PROTO_HEADER_VERSION can be bumped whenever there is a breaking change to the generated files, and it will then alert to the difference. Update issue 129 Status: FixedInGit
2014-08-18Rename poorly named identifier to avoid name conflicts.Petteri Aimonen1-14/+14
Update issue 106 Status: FixedInGit
2014-08-18Rename UNUSED() and STATIC_ASSERT() macros with PB_ prefix.Petteri Aimonen1-18/+22
This avoids possible namespace conflicts with other macros.
2014-08-18Change the _count fields to use pb_size_t datatype.Petteri Aimonen1-2/+5
Update issue 82 Status: FixedInGit
2014-08-09Setting version to 0.3.0-devPetteri Aimonen1-1/+1
2014-08-09Publishing nanopb-0.2.9Petteri Aimonen1-1/+1
2014-05-30Add PB_PACKED_STRUCT support for Keil MDK-ARM toolchainPetteri Aimonen1-2/+2
Patch from Jon Read. Update issue 119 Status: FixedInGit
2014-05-20Setting version to 0.2.9-devPetteri Aimonen1-1/+1
2014-05-20Publishing nanopb-0.2.8Petteri Aimonen1-1/+1
2014-04-07Setting version to 0.2.8-devPetteri Aimonen1-1/+1
2014-04-07Publishing nanopb-0.2.7Petteri Aimonen1-1/+1
2014-04-05Fix unused parameter warning when building without errmsg.Petteri Aimonen1-1/+5
2014-04-05Add a 'found' field to pb_extension_t.Petteri Aimonen1-0/+4
Update issue 112 Status: FixedInGit
2014-03-17More configuration options for dynamic allocPetteri Aimonen1-0/+14
2014-03-15Get rid of pb_bytes_ptr_t, just allocate pb_bytes_array_t dynamically.Petteri Aimonen1-9/+3
This makes the internal logic much simpler, and also keeps the datatypes more similar between STATIC/POINTER cases. It will still be a bit cumbersome to use because of variable length array member. Macros PB_BYTES_ARRAY_T(n) and PB_BYTES_ARRAY_T_ALLOCSIZE(n) have been added to make life a bit easier. This has the drawback that it is no longer as easy to use externally allocated byte array as input for bytes field in pointer mode. However, this is still easy to do using callbacks, so it shouldn't be a large issue.
2014-02-24Beginnings of malloc support in pb_decodePetteri Aimonen1-0/+4
2014-02-15Setting version to 0.2.7-devPetteri Aimonen1-1/+1
2014-02-15Publishing nanopb-0.2.6Petteri Aimonen1-1/+1
2014-02-04Add coments to places where STATIC_ASSERT is used.Petteri Aimonen1-3/+13
Update issue 96 Status: FixedInGit
2014-01-01Setting version to 0.2.6-devPetteri Aimonen1-1/+1
2014-01-01Publishing nanopb-0.2.5Petteri Aimonen1-1/+1
2013-12-29Organize allocation logic in generator, add pb_bytes_ptr_t.Petteri Aimonen1-3/+11
Allocation decision is now made before the field data type is decided. This way the data type decisions can more cleanly account for the allocation type, i.e. FT_DEFAULT logic etc. Added pb_bytes_ptr_t for pointer-allocated bytes-fields. There is no point generating separate structs for these, as they would all be of the same type.
2013-12-29Generating and encoding messages with dynamic allocaitonMartin Donath1-0/+17
2013-12-21Add PB_LTYPE_UVARINT to fix encoding of negative int32 values.Petteri Aimonen1-17/+13
Apparently int32 values that are negative must be cast into int64 first before being encoded. Because uint32 still needs to be cast to uint64, the cases for int32 and uint32 had to be separated. Update issue 97 Status: FixedInGit
2013-11-07Setting version to 0.2.5-devPetteri Aimonen1-1/+1
2013-11-07Publishing nanopb-0.2.4Petteri Aimonen1-1/+1
2013-10-20Define pb_size_t and pb_ssize_t data types.Petteri Aimonen1-22/+19
Use these in pb_field_t definition to clean up some #ifs, and also to prepare for solving issue #82.
2013-09-18Setting version to 0.2.4-devPetteri Aimonen1-1/+1
2013-09-18Publishing nanopb-0.2.3Petteri Aimonen1-1/+1
2013-09-13Merge branch 'dev_get_rid_of_ternary_operator'Petteri Aimonen1-19/+43
2013-09-13Fine-tune the naming of new macros before merging into master.Petteri Aimonen1-11/+17
Requires re-generation of files generated with dev_get_rid_of_ternary_operator.
2013-09-11Get rid of the ternary operator in the pb_field_t initialization.Petteri Aimonen1-19/+37
Some compilers where unable to detect that the ternary operator can be evaluated at the compile time. This commit does the evaluation on the Python side, which should fix the problem. The new .pb.c files are generated using PB_FIELD2() macro. The old PB_FIELD() macro remains, so that previously generated files keep working.