Skip to content

Commit 5a223a1

Browse files
committed
Merge branch 'master' into realtime-rc-merge
2 parents 66a524a + a283019 commit 5a223a1

File tree

3 files changed

+8
-11
lines changed

3 files changed

+8
-11
lines changed

firebase-firestore/CHANGELOG.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,11 @@ by opting into a release at
44

55
# Unreleased
66

7-
# 24.1.2
7+
# 24.2.0
88
- [feature] Added `TransactionOptions` to control how many times a transaction
99
will retry commits before failing.
10+
11+
# 24.1.2
1012
- [fixed] Fixed an issue where patching multiple fields shadows each other (#3528).
1113

1214
# 24.1.1

firebase-firestore/src/main/java/com/google/firebase/firestore/Query.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -618,7 +618,7 @@ private void validateNewFieldFilter(
618618
validateOrderByFieldMatchesInequality(firstOrderByField, newInequality);
619619
}
620620
}
621-
Operator conflictingOp = findFilterWithOperator(query.getFilters(), conflictingOps(filterOp));
621+
Operator conflictingOp = findOpInsideFilters(query.getFilters(), conflictingOps(filterOp));
622622
if (conflictingOp != null) {
623623
// We special case when it's a duplicate op to give a slightly clearer error message.
624624
if (conflictingOp == filterOp) {
@@ -649,7 +649,7 @@ private void validateNewFilter(com.google.firebase.firestore.core.Filter filter)
649649
* returns the first one that is, or null if none are.
650650
*/
651651
@Nullable
652-
private Operator findFilterWithOperator(
652+
private Operator findOpInsideFilters(
653653
List<com.google.firebase.firestore.core.Filter> filters, List<Operator> operators) {
654654
for (com.google.firebase.firestore.core.Filter filter : filters) {
655655
for (FieldFilter fieldFilter : filter.getFlattenedFilters()) {

firebase-firestore/src/main/java/com/google/firebase/firestore/core/CompositeFilter.java

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -115,14 +115,9 @@ public CompositeFilter withAddedFilters(List<Filter> otherFilters) {
115115
*/
116116
@Nullable
117117
private FieldFilter findFirstMatchingFilter(Function<FieldFilter, Boolean> condition) {
118-
for (Filter filter : filters) {
119-
if (filter instanceof FieldFilter && condition.apply(((FieldFilter) filter))) {
120-
return (FieldFilter) filter;
121-
} else if (filter instanceof CompositeFilter) {
122-
FieldFilter found = ((CompositeFilter) filter).findFirstMatchingFilter(condition);
123-
if (found != null) {
124-
return found;
125-
}
118+
for (FieldFilter filter : getFlattenedFilters()) {
119+
if (condition.apply(filter)) {
120+
return filter;
126121
}
127122
}
128123
return null;

0 commit comments

Comments
 (0)