aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2017-04-14Fix bugs in proto3 mode encoding of submessages (#256)Petteri Aimonen1-5/+31
pb_check_proto3_default_value() recurses into submessages, but it didn't handle other than singular fields correctly. This caused it to sometimes skip submessages with only repeated or oneof fields present.
2017-04-14Add testcase for issue #256Petteri Aimonen3-0/+65
2017-03-28Merge branch 'master' of github.com:nanopb/nanopbPetteri Aimonen1-3/+3
2017-03-28Fix message length calculation for arrays of size 1 (issue #253)Petteri Aimonen1-1/+6
2017-03-28Add regression test for issue #253Petteri Aimonen3-0/+46
2017-03-16Merge pull request #250 from conz27/masterPetteri Aimonen1-3/+3
CMAKE: remove use of relative paths
2017-03-12Fix potential out-of-bounds read with more than 64 required fieldsPetteri Aimonen1-3/+12
2017-03-12Improve varint unittest coverage for error casesPetteri Aimonen1-2/+46
2017-03-05Fixing install issue due to relative pathsConstantine Grantcharov1-2/+2
2017-03-05Remove use of relative pathsConstantine Grantcharov1-2/+2
When doing out of source builds: mkdir build cd build && cmake -G "Unix Makefiles" ../ && make The build script tripped up on relative paths of /generator/proto and the files under generator/proto/*.proto. By using ${PROJECT_SOURCE_DIR}, the paths become absolute and the issue disappears.
2017-03-05Forgot to fill in the datesPetteri Aimonen2-2/+2
2017-03-05Setting version to 0.3.9-devPetteri Aimonen4-4/+4
2017-03-05Publishing nanopb-0.3.8Petteri Aimonen4-4/+4
2017-03-05Update changelogPetteri Aimonen1-1/+1
2017-03-02Fix alltypes_callback testcasePetteri Aimonen4-10/+24
The test case was erroneously comparing whole submsg structures, which could result in false errors when padding bytes differed.
2017-03-02Fix callback pointer corruption in proto3 mode (issue #249)Petteri Aimonen1-1/+1
2017-03-02Add regression test for issue #249Petteri Aimonen3-0/+81
2017-03-02Add callback test for proto3 modePetteri Aimonen4-0/+744
2017-03-02Fix bug in alltypes_callback test casePetteri Aimonen2-4/+5
2017-02-26Update changelogPetteri Aimonen2-2/+24
2017-02-25Fix build failure (const_cast name conflict)Petteri Aimonen1-4/+4
Thought I was cleaning up the naming by calling the function const_cast(), because that's what it does. But of course it conflicts with the C++ builtin, so renaming it to pb_const_cast() now.
2017-02-25Add transitional options.proto file (#241)Petteri Aimonen1-0/+120
2017-02-25Add better error message on Python library version imcompatibility (issue #240)Petteri Aimonen1-0/+14
2017-02-25Make pb_check_proto3_default_value() recurse into submessages (issue #247)Petteri Aimonen1-23/+47
2017-02-25Add testcase for issue #247Petteri Aimonen3-0/+58
2017-02-25Windows build fixPetteri Aimonen1-2/+3
2017-02-25Merge pull request #245 from jdemar/masterPetteri Aimonen6-1/+417
Fix infinite loop in pb_check_proto3_default_value
2017-02-24Fix infinite loop in pb_check_proto3_default_valueJustin DeMartino6-1/+417
- Occurs with proto3, PB_FIELD_16BIT and submessage > 255 bytes - Add test case for PB_FIELD_16BIT and proto3
2017-02-24Fix build failurePetteri Aimonen1-1/+2
2017-02-24Add test coverage for calling pb_release() on a message with callback fields.Petteri Aimonen2-2/+13
2017-02-22Add fixed length bytes to alltypes test case (issue #244)Petteri Aimonen22-20/+80
2017-02-22Extend inline / fixed length bytes array support (issue #244)Petteri Aimonen7-85/+97
Adds support for proto3 and POINTER field types to have fixed length bytes arrays. Also changed the .proto option to a separate fixed_length:true, while also supporting the old FT_INLINE option. Restructured the generator and decoder logic to threat the inline bytes fields more like "just another field type".
2017-02-20Add new option max_length for strings (issue #107)Petteri Aimonen4-0/+11
Max_size is the allocated size, so users had to add +1 for the null terminator. Max_length does the +1 automatically in the generator.
2017-02-13Update download links (changes in webhost system)Petteri Aimonen1-3/+3
2017-02-12Merge branch 'master' of github.com:nanopb/nanopbPetteri Aimonen6-37/+94
2017-02-12Zero-valued extension fields were mistakenly ignored by encoder. (issue #242)Petteri Aimonen1-2/+7
2017-02-12Add regression test for issue 242Petteri Aimonen3-0/+79
2017-01-21Merge pull request #239 from mxk/plugin-fixPetteri Aimonen2-2/+2
Fix documentation for protoc --plugin argument
2017-01-20Fix documentation for protoc --plugin argumentMaxim Khitrov2-2/+2
2017-01-18Merge pull request #237 from wak-google/fix-buildPetteri Aimonen1-26/+57
WIP: cmake cleanup to support installable host tooling
2017-01-18Merge pull request #236 from wak-google/fix-libPetteri Aimonen1-3/+3
cmake: Fix library name
2017-01-17cmake: Cleanup the build so that host and runtime tooling is installableWilliam A. Kennington III1-26/+57
Signed-off-by: William A. Kennington III <wak@google.com>
2017-01-17cmake: Fix library nameWilliam A. Kennington III1-3/+3
The produced static library should be `libprotobuf-nanopb.a` instead of the current `liblibprotobuf-nanopb.a`. Signed-off-by: William A. Kennington III <wak@google.com>
2017-01-12Merge pull request #230 from Tobba/nonempty-substringPetteri Aimonen3-9/+35
Fix closing a non-empty substream resulting in an incorrect stream state
2017-01-12Fix closing a non-empty substream resulting in an incorrect stream stateTobba3-9/+35
2016-12-31Merge branch 'master' of github.com:nanopb/nanopbPetteri Aimonen2-2/+5
2016-12-31Fix multiple oneofs in same message (issue #229)Petteri Aimonen3-8/+20
Previously the field iterator logic didn't know whether two oneof fields were part of the same union, or separate. This caused wrong pointers to be calculated if multiple oneofs were inside a single message. This commit fixes this by using dataoffset of PB_SIZE_MAX to indicate union fields after the first field. Theoretically PB_SIZE_MAX is also a valid value for data offset, which could cause errors. Adding a compile-time assert for this is somewhat difficult. However I consider it extremely unlikely that there is any platform that could trigger this situation, as it would require 255 bytes of extra data/padding between two protobuf oneof fields. On 64-bit architectures the worst case is 16 bytes, and even esoteric platforms only align to 64 bytes or so. Manual modification of the generated .pb.h file could trigger this, but even then it would require pretty bad luck to happen.
2016-12-31Add testcase for issue #229Petteri Aimonen3-0/+59
2016-12-23Update readmePetteri Aimonen1-1/+1
2016-12-23Merge pull request #231 from Tobba/expose-varint32Petteri Aimonen2-2/+5
Make pb_decode_varint32 public API