Skip to content

Commit 037875f

Browse files
committed
Remove unnecessary extra child traversal in collectDirtyChildren
1 parent 797786f commit 037875f

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

parse/src/main/java/com/parse/ParseObject.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -606,7 +606,9 @@ protected boolean visit(Object node) {
606606
// Check for cycles of new objects. Any such cycle means it will be
607607
// impossible to save this collection of objects, so throw an exception.
608608
if (object.getObjectId() != null) {
609-
seenNew = new HashSet<>();
609+
if (!seenNew.isEmpty()) {
610+
seenNew = new HashSet<>();
611+
}
610612
} else {
611613
if (seenNew.contains(object)) {
612614
throw new RuntimeException("Found a circular dependency while saving.");
@@ -621,7 +623,6 @@ protected boolean visit(Object node) {
621623
if (seen.contains(object)) {
622624
return true;
623625
}
624-
seen = new HashSet<>(seen);
625626
seen.add(object);
626627

627628
// Recurse into this object's children looking for dirty children.

0 commit comments

Comments
 (0)