Fix infinite loop problem in processNewItems method

codemagic-setup
Hank Grabowski 2022-12-29 01:20:27 -05:00
rodzic f8cb7cd440
commit 4d28607714
1 zmienionych plików z 8 dodań i 1 usunięć

Wyświetl plik

@ -264,6 +264,7 @@ class EntryManagerService extends ChangeNotifier {
return int.parse(i1.id).compareTo(int.parse(i2.id));
});
final postNodesToReturn = <_Node>{};
var lastCount = 0;
while (allSeenItems.isNotEmpty) {
final seenItemsCopy = [...allSeenItems];
for (final item in seenItemsCopy) {
@ -288,11 +289,17 @@ class EntryManagerService extends ChangeNotifier {
continue;
} else {
injectionNode.addChild(newNode);
allSeenItems.remove(item);
}
}
allSeenItems.remove(item);
}
}
if (allSeenItems.isNotEmpty && allSeenItems.length == lastCount) {
_logger.severe(
'Had ${allSeenItems.length} items left over after all iterations');
break;
}
lastCount = allSeenItems.length;
}
final updatedPosts = postNodesToReturn