| Index: sync/protocol/proto_value_conversions.cc
|
| diff --git a/sync/protocol/proto_value_conversions.cc b/sync/protocol/proto_value_conversions.cc
|
| index 648e1fc881113eb210052878fa45bbc4be924e8d..ebb4d9568a8833563beea0565e046b6b2dead5a0 100644
|
| --- a/sync/protocol/proto_value_conversions.cc
|
| +++ b/sync/protocol/proto_value_conversions.cc
|
| @@ -105,6 +105,15 @@ base::ListValue* MakeRepeatedValue(const F& fields, V* (*converter_fn)(T)) {
|
| std::string >, \
|
| base::StringValue>(proto.field(), \
|
| MakeStringValue))
|
| +#define SET_EXPERIMENT_ENABLED_FIELD(field) \
|
| + do { \
|
| + if (proto.has_##field() && \
|
| + proto.field().has_enabled()) { \
|
| + value->Set(#field, \
|
| + new base::FundamentalValue( \
|
| + proto.field().enabled())); \
|
| + } \
|
| + } while (0)
|
|
|
| #define SET_FIELD(field, fn) \
|
| do { \
|
| @@ -208,13 +217,6 @@ base::DictionaryValue* PasswordSpecificsDataToValue(
|
| return value;
|
| }
|
|
|
| -base::DictionaryValue* KeystoreEncryptionFlagsToValue(
|
| - const sync_pb::KeystoreEncryptionFlags& proto) {
|
| - base::DictionaryValue* value = new base::DictionaryValue();
|
| - SET_BOOL(enabled);
|
| - return value;
|
| -}
|
| -
|
| base::DictionaryValue* GlobalIdDirectiveToValue(
|
| const sync_pb::GlobalIdDirective& proto) {
|
| base::DictionaryValue* value = new base::DictionaryValue();
|
| @@ -339,7 +341,10 @@ base::DictionaryValue* DictionarySpecificsToValue(
|
| base::DictionaryValue* ExperimentsSpecificsToValue(
|
| const sync_pb::ExperimentsSpecifics& proto) {
|
| base::DictionaryValue* value = new base::DictionaryValue();
|
| - SET(keystore_encryption, KeystoreEncryptionFlagsToValue);
|
| + SET_EXPERIMENT_ENABLED_FIELD(keystore_encryption);
|
| + SET_EXPERIMENT_ENABLED_FIELD(history_delete_directives);
|
| + SET_EXPERIMENT_ENABLED_FIELD(autofill_culling);
|
| + SET_EXPERIMENT_ENABLED_FIELD(favicon_sync);
|
| return value;
|
| }
|
|
|
|
|