| Index: recipe_engine/third_party/google/protobuf/internal/containers.py
|
| diff --git a/recipe_engine/third_party/google/protobuf/internal/containers.py b/recipe_engine/third_party/google/protobuf/internal/containers.py
|
| index 97cdd848e34d8da4083abb512b7403686ddec91f..ce46d08c9eca71ccddac3df8c7a6958d40e4505c 100644
|
| --- a/recipe_engine/third_party/google/protobuf/internal/containers.py
|
| +++ b/recipe_engine/third_party/google/protobuf/internal/containers.py
|
| @@ -594,7 +594,11 @@ class MessageMap(MutableMapping):
|
|
|
| def MergeFrom(self, other):
|
| for key in other:
|
| - self[key].MergeFrom(other[key])
|
| + # According to documentation: "When parsing from the wire or when merging,
|
| + # if there are duplicate map keys the last key seen is used".
|
| + if key in self:
|
| + del self[key]
|
| + self[key].CopyFrom(other[key])
|
| # self._message_listener.Modified() not required here, because
|
| # mutations to submessages already propagate.
|
|
|
|
|