Krolyxon
Commit 8db3191

Branches

Refs →

nsxiv8db3191

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

Author
Bert Münnich
Date
2014-10-01 20:25 +0200
Parent
ddd028e
Commit
8db3191f04d52929ec10b1412d282a4ac4cf5240

+7 −6

2 files changed

  1. M Makefile +1 −1
  2. M main.c +6 −5
M Makefile View
@@ -1,4 +1,4 @@
1−VERSION = git-20140930
1+VERSION = git-20141001
22
33 PREFIX = /usr/local
44 MANPREFIX = $(PREFIX)/share/man
M main.c View
@@ -177,12 +177,13 @@ void remove_file(int n, bool manual)
177177 free((void*) files[n].name);
178178
179179 if (n + 1 < filecnt) {
180− memmove(files + n, files + n + 1, (filecnt - n - 1) * sizeof(fileinfo_t));
181− memmove(tns.thumbs + n, tns.thumbs + n + 1, (filecnt - n - 1) *
182− sizeof(thumb_t));
183− memset(tns.thumbs + filecnt - 1, 0, sizeof(thumb_t));
180+ if (tns.thumbs != NULL) {
181+ memmove(tns.thumbs + n, tns.thumbs + n + 1, (filecnt - n - 1) *
182+ sizeof(*tns.thumbs));
183+ memset(tns.thumbs + filecnt - 1, 0, sizeof(*tns.thumbs));
184+ }
185+ memmove(files + n, files + n + 1, (filecnt - n - 1) * sizeof(*files));
184186 }
185−
186187 filecnt--;
187188 if (fileidx >= filecnt)
188189 fileidx = filecnt - 1;