Skip to content

Commit b73a50d

Browse files
committedNov 10, 2024
fix crash on sharing target
1 parent 87de5c5 commit b73a50d

File tree

1 file changed

+7
-6
lines changed

1 file changed

+7
-6
lines changed
 

‎app/src/main/java/fr/nuage/souvenirs/viewmodel/AlbumListViewModel.java

+7-6
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ public AlbumListViewModel(@NonNull Application application) {
4545
//albumViewModels = new CopyOnWriteArrayList<>(new ArrayList<>());
4646
albumViewModels = new ArrayList<>();
4747
//build livedata and load album list
48+
updateAlbumList();
4849
albumList.addSource(albums.getLiveDataAlbumList(), albums -> updateAlbumList());
4950
//load NC albums
5051
NCUtils.getIsNCEnable().observeForever(aBoolean -> {
@@ -138,19 +139,19 @@ private void updateAlbumList() {
138139
}
139140
}
140141
//check if some album are deleted
141-
Iterator<AlbumViewModel> itAVM = albumViewModels.iterator();
142-
while (itAVM.hasNext()) {
143-
AlbumViewModel avm = itAVM.next();
142+
ArrayList<AlbumViewModel> aVM = new ArrayList<>(albumViewModels);
143+
for(int i = 0; i<aVM.size(); i++) {
144+
AlbumViewModel avm = aVM.get(i);
144145
if ((avm.getAlbum()!=null) && (!albums.isInAlbumList(avm.getAlbum().getId()))) {
145-
avm.setAlbum(null);
146+
albumViewModels.get(i).setAlbum(null);
146147
}
147148
if (albumsNC != null) {
148149
if ((avm.getAlbumNC()!=null) && (!albumsNC.isInAlbumList(avm.getAlbumNC().getId()))) {
149-
avm.setAlbumNC(null);
150+
albumViewModels.get(i).setAlbum(null);
150151
}
151152
}
152153
if ((avm.getAlbum() == null) && (avm.getAlbumNC() == null)) {
153-
itAVM.remove();
154+
albumViewModels.remove(i);
154155
}
155156
}
156157
sortAlbumList();

0 commit comments

Comments
 (0)
Failed to load comments.