NotesFolderFS: Remove any notes which failed to load

This commit is contained in:
Vishesh Handa
2020-09-03 13:42:54 +02:00
parent 477d47c824
commit ec91a784de

View File

@ -163,6 +163,20 @@ class NotesFolderFS with NotesFolderNotifier implements NotesFolder {
await Future.wait(futures); await Future.wait(futures);
futures = <Future>[]; futures = <Future>[];
// Remove notes which have errors
var errFunc = (Note n) => n.loadState == NoteLoadState.Error;
var hasBadNotes = _notes.any(errFunc);
if (hasBadNotes) {
while (true) {
var i = _notes.indexWhere(errFunc);
if (i == -1) {
break;
}
var note = _notes.removeAt(i);
notifyNoteRemoved(i, note);
}
}
for (var folder in _folders) { for (var folder in _folders) {
var f = folder.loadRecursively(); var f = folder.loadRecursively();
futures.add(f); futures.add(f);