diff options
author | 2015-03-26 14:29:58 +0000 | |
---|---|---|
committer | 2015-03-26 15:14:51 +0000 | |
commit | 6a1673bf85fbbdbcf804ecbd7aa94b3d115b521f (patch) | |
tree | 9eb449850bce641c51a832c6995ceef4e8497390 /src/main/protobuf/build.proto | |
parent | e7c06ebc6bf3d2e77f49fe808d943f90321d5047 (diff) |
PackageSerializer: include attributes with null values.
PackageDeserializer: handle null-value attributes (single-value attributes with
no value setting) without crashing.
Without this change, attributes with computed defaults can crash on serialization
because RawAttributeMapper.isNotNull isn't smart enough to check *indirect*
configurable attributes that the computed attribute depends on.
--
MOS_MIGRATED_REVID=89599145
Diffstat (limited to 'src/main/protobuf/build.proto')
-rw-r--r-- | src/main/protobuf/build.proto | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/main/protobuf/build.proto b/src/main/protobuf/build.proto index b5d6346276..d212cbbddf 100644 --- a/src/main/protobuf/build.proto +++ b/src/main/protobuf/build.proto @@ -137,17 +137,21 @@ message Attribute { // If this attribute has an integer value this will be populated. // Boolean and TriState also use this field as [0,1] and [-1,0,1] // for [false, true] and [auto, no, yes] respectively. + // Null-valued attributes will *not* set this value. optional int32 int_value = 3; // If the attribute has a string value this will be populated. Label and // path attributes use this field as the value even though the type may // be LABEL or something else other than STRING. + // Null-valued attributes will *not* set this value. optional string string_value = 5; - // If the attribute has a boolean value this will be populated + // If the attribute has a boolean value this will be populated. + // Null-valued attributes will *not* set this value. optional bool boolean_value = 14; // If the attribute is a Tristate value, this will be populated. + // Null-valued attributes will *not* set this value. optional Tristate tristate_value = 15; // The value of the attribute has a list of string values (label and path @@ -155,6 +159,7 @@ message Attribute { repeated string string_list_value = 6; // If this is a license attribute, the license information is stored here. + // Null-valued attributes will *not* set this value. optional License license = 7; // If this is a string dict, each entry will be stored here. |