Parcourir la source

Fixed segfault on image removal with uninitialized thumbnails; fixes issue #177

master
Bert Münnich il y a 10 ans
Parent
révision
8db3191f04
2 fichiers modifiés avec 7 ajouts et 6 suppressions
  1. +1
    -1
      Makefile
  2. +6
    -5
      main.c

+ 1
- 1
Makefile Voir le fichier

@@ -1,4 +1,4 @@
VERSION = git-20140930
VERSION = git-20141001

PREFIX = /usr/local
MANPREFIX = $(PREFIX)/share/man


+ 6
- 5
main.c Voir le fichier

@@ -177,12 +177,13 @@ void remove_file(int n, bool manual)
free((void*) files[n].name);

if (n + 1 < filecnt) {
memmove(files + n, files + n + 1, (filecnt - n - 1) * sizeof(fileinfo_t));
memmove(tns.thumbs + n, tns.thumbs + n + 1, (filecnt - n - 1) *
sizeof(thumb_t));
memset(tns.thumbs + filecnt - 1, 0, sizeof(thumb_t));
if (tns.thumbs != NULL) {
memmove(tns.thumbs + n, tns.thumbs + n + 1, (filecnt - n - 1) *
sizeof(*tns.thumbs));
memset(tns.thumbs + filecnt - 1, 0, sizeof(*tns.thumbs));
}
memmove(files + n, files + n + 1, (filecnt - n - 1) * sizeof(*files));
}

filecnt--;
if (fileidx >= filecnt)
fileidx = filecnt - 1;


Chargement…
Annuler
Enregistrer