Skip to content

Commit b3bbea9

Browse files
authored
local_serializer.cc: fix lossy implicit conversion compiler warning (#9433)
1 parent e5152af commit b3bbea9

File tree

2 files changed

+9
-2
lines changed

2 files changed

+9
-2
lines changed

Firestore/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
# Unreleased
2+
- [fixed] Fixed compiler warnings in `local_serializer.cc` about "implicit
3+
conversion loses integer precision" that were introduced in 8.13.0 (#9430).
4+
15
# v8.12.1
26
- [changed] Add more details to the assertion failure in OrderBy::Compare() to
37
help with future debugging (#9258).

Firestore/core/src/local/local_serializer.cc

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -499,9 +499,12 @@ LocalSerializer::EncodeFieldIndexSegments(
499499
result->query_scope =
500500
google_firestore_admin_v1_Index_QueryScope_COLLECTION_GROUP;
501501

502-
result->fields_count = segments.size();
502+
// Explicitly cast the result of segments.size() to suppress compiler warnings
503+
// about implicit conversion resulting in potential loss of precision.
504+
const auto segments_size = static_cast<pb_size_t>(segments.size());
505+
result->fields_count = segments_size;
503506
result->fields =
504-
MakeArray<google_firestore_admin_v1_Index_IndexField>(segments.size());
507+
MakeArray<google_firestore_admin_v1_Index_IndexField>(segments_size);
505508
int i = 0;
506509
for (const auto& segment : segments) {
507510
google_firestore_admin_v1_Index_IndexField field;

0 commit comments

Comments
 (0)