summaryrefslogtreecommitdiffstats
path: root/pb.h
diff options
context:
space:
mode:
authorPetteri Aimonen <jpa@git.mail.kapsi.fi>2015-09-12 13:04:22 +0300
committerPetteri Aimonen <jpa@git.mail.kapsi.fi>2015-09-12 13:07:34 +0300
commit708084e7883a95dd7fd315cdc909f6664491c043 (patch)
treec6ec5ffa5478dd2913ee875f7cdde74cb8b9fed8 /pb.h
parent1582038e37771ade214f0627c3ecbf6e1ba69946 (diff)
Fix handling of unsigned 8- or 16-bit enums.
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.
Diffstat (limited to 'pb.h')
-rw-r--r--pb.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/pb.h b/pb.h
index 649a25e9..ef2a166f 100644
--- a/pb.h
+++ b/pb.h
@@ -468,6 +468,7 @@ struct pb_extension_s {
#define PB_LTYPE_MAP_BYTES PB_LTYPE_BYTES
#define PB_LTYPE_MAP_DOUBLE PB_LTYPE_FIXED64
#define PB_LTYPE_MAP_ENUM PB_LTYPE_VARINT
+#define PB_LTYPE_MAP_UENUM PB_LTYPE_UVARINT
#define PB_LTYPE_MAP_FIXED32 PB_LTYPE_FIXED32
#define PB_LTYPE_MAP_FIXED64 PB_LTYPE_FIXED64
#define PB_LTYPE_MAP_FLOAT PB_LTYPE_FIXED32
@@ -486,7 +487,7 @@ struct pb_extension_s {
/* This is the actual macro used in field descriptions.
* It takes these arguments:
* - Field tag number
- * - Field type: BOOL, BYTES, DOUBLE, ENUM, FIXED32, FIXED64,
+ * - Field type: BOOL, BYTES, DOUBLE, ENUM, UENUM, FIXED32, FIXED64,
* FLOAT, INT32, INT64, MESSAGE, SFIXED32, SFIXED64
* SINT32, SINT64, STRING, UINT32, UINT64 or EXTENSION
* - Field rules: REQUIRED, OPTIONAL or REPEATED