diff options
author | zxu <zxu@google.com> | 2018-04-24 12:41:49 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-24 12:41:49 -0400 |
commit | 700413cb64bd9a6a9c57b862106195f39decb045 (patch) | |
tree | 72dc96c33e58abfe977fccdcad2d380304307fdd /Firestore/core/src/firebase/firestore/model/field_value.cc | |
parent | 8327390ccc27853c5bee794029a9ab2cc54df335 (diff) |
fix a bug caught by asan failure (#1173)
Diffstat (limited to 'Firestore/core/src/firebase/firestore/model/field_value.cc')
-rw-r--r-- | Firestore/core/src/firebase/firestore/model/field_value.cc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/Firestore/core/src/firebase/firestore/model/field_value.cc b/Firestore/core/src/firebase/firestore/model/field_value.cc index 9b3acad..35253c8 100644 --- a/Firestore/core/src/firebase/firestore/model/field_value.cc +++ b/Firestore/core/src/firebase/firestore/model/field_value.cc @@ -183,12 +183,12 @@ FieldValue FieldValue::Set(const FieldPath& field_path, } else { ObjectValue::Map copy = CopyExcept(object_map, child_name); const auto iter = object_map.find(child_name); - if (iter == copy.end() || iter->second.type() != Type::Object) { + if (iter == object_map.end() || iter->second.type() != Type::Object) { copy[child_name] = FieldValue::ObjectValueFromMap({}).Set( field_path.PopFirst(), std::move(value)); } else { - copy[child_name] = object_map.at(child_name) - .Set(field_path.PopFirst(), std::move(value)); + copy[child_name] = + iter->second.Set(field_path.PopFirst(), std::move(value)); } return FieldValue::ObjectValueFromMap(std::move(copy)); } |