Moved thumbnail cache to ~/.sxiv/cache/

master
Bert Münnich 2013-01-08 20:55:02 +01:00
parent d6a475e4b1
commit b6a6c260e1
2 changed files with 8 additions and 15 deletions

11
sxiv.1
View File

@ -308,7 +308,7 @@ Pan image left.
Pan image right.
.SH THUMBNAIL CACHING
To enable thumbnail caching, please make sure to create the directory
.I ~/.sxiv/
.I ~/.sxiv/cache/
with write permissions. sxiv will then store all thumbnails inside this
directory, but it will not create this directory by itself. It rather uses the
existance of this directory as an affirmation, that the user wants thumbnails
@ -321,15 +321,6 @@ Additionally, run the following command afterwards inside the cache directory
to remove empty subdirectories:
.P
.RS
find \-type d \-empty \-delete
.RE
.P
If the version of
.I find
installed on your local system does not support the \-delete option, then you
can also try the following command:
.P
.RS
find . \-depth \-type d \-empty ! \-name '.' \-exec rmdir {} \\;
.RE
.SH AUTHOR

View File

@ -31,8 +31,10 @@
#include "util.h"
#include "config.h"
const int thumb_dim = THUMB_SIZE + 10;
char *cache_dir = NULL;
static const int thumb_dim = THUMB_SIZE + 10;
static const char * const CACHE_DIR = ".sxiv/cache";
static char *cache_dir = NULL;
bool tns_cache_enabled(void) {
struct stat stats;
@ -175,9 +177,9 @@ void tns_init(tns_t *tns, int cnt, win_t *win) {
if ((homedir = getenv("HOME")) != NULL) {
if (cache_dir != NULL)
free(cache_dir);
len = strlen(homedir) + 10;
cache_dir = (char*) s_malloc(len * sizeof(char));
snprintf(cache_dir, len, "%s/.sxiv", homedir);
len = strlen(homedir) + strlen(CACHE_DIR) + 2;
cache_dir = (char*) s_malloc(len);
snprintf(cache_dir, len, "%s/%s", homedir, CACHE_DIR);
} else {
warn("could not locate thumbnail cache directory");
}