nsxive648c11
Respect updated path format when cleaning cache
Since d8114e8 the file name is used for caching as-is without adding .jpg at the end, but sxiv -c still expected old format causing it to remove all fresh thumbnails.
+2 −11
1 file changed
- M thumbs.c +2 −11
| @@ -120,8 +120,7 @@ void tns_cache_write(Imlib_Image im, const char *filepath, bool force) | |||
| 120 | 120 | void tns_clean_cache(tns_t *tns) | |
| 121 | 121 | { | |
| 122 | 122 | int dirlen; | |
| 123 | − | bool delete; | |
| 124 | − | char *cfile, *filename, *tpos; | |
| 123 | + | char *cfile, *filename; | |
| 125 | 124 | r_dir_t dir; | |
| 126 | 125 | ||
| 127 | 126 | if (r_opendir(&dir, cache_dir, true) < 0) { | |
| @@ -133,15 +132,7 @@ void tns_clean_cache(tns_t *tns) | |||
| 133 | 132 | ||
| 134 | 133 | while ((cfile = r_readdir(&dir, false)) != NULL) { | |
| 135 | 134 | filename = cfile + dirlen; | |
| 136 | − | delete = false; | |
| 137 | − | ||
| 138 | − | if ((tpos = strrchr(filename, '.')) != NULL) { | |
| 139 | − | *tpos = '\0'; | |
| 140 | − | if (access(filename, F_OK) < 0) | |
| 141 | − | delete = true; | |
| 142 | − | *tpos = '.'; | |
| 143 | − | } | |
| 144 | − | if (delete) { | |
| 135 | + | if (access(filename, F_OK) < 0) { | |
| 145 | 136 | if (unlink(cfile) < 0) | |
| 146 | 137 | error(0, errno, "%s", cfile); | |
| 147 | 138 | } | |