Fix for wrappers with a zero value (#7195) (#7201)
* Add failing tests for issues with wrapped values where the value is the default * Add test for wrapped values without a value set * Bugfix for wrapper types with default values. The previous optimizations for wrapper types had a bug that prevented wrappers from registering as "present" if the "value" field was not present on the wire. In practice the "value" field will not be serialized when it is zero, according to proto3 semantics, but due to the optimization this prevented it from creating a new object to represent the presence of the field. The fix is to ensure that if the wrapper message is present on the wire, we always initialize its value to zero. Co-authored-by:Joshua Haberman <jhaberman@gmail.com> Co-authored-by:
Dan Quan <dan@quan.io>
Showing
Please
register
or
sign in
to comment