Allow relative paths for cgit_cache_root
Make sure we chdir(2) back to the original getcwd(2) when a page has been generated. Also, if the cgit_cache_root do not exist, try to create it. This is a feature intended to ease testing/debugging. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
This commit is contained in:
förälder
61245ad185
incheckning
7c849d94ec
4
cache.c
4
cache.c
@ -45,6 +45,10 @@ int cache_create_dirs()
|
||||
{
|
||||
char *path;
|
||||
|
||||
path = fmt("%s", cgit_cache_root);
|
||||
if (mkdir(path, S_IRWXU) && errno!=EEXIST)
|
||||
return 0;
|
||||
|
||||
if (!cgit_query_repo)
|
||||
return 0;
|
||||
|
||||
|
4
cgit.c
4
cgit.c
@ -42,12 +42,16 @@ static void cgit_print_repo_page(struct cacheitem *item)
|
||||
|
||||
static void cgit_fill_cache(struct cacheitem *item)
|
||||
{
|
||||
static char buf[PATH_MAX];
|
||||
|
||||
getcwd(buf, sizeof(buf));
|
||||
htmlfd = item->fd;
|
||||
item->st.st_mtime = time(NULL);
|
||||
if (cgit_query_repo)
|
||||
cgit_print_repo_page(item);
|
||||
else
|
||||
cgit_print_repolist(item);
|
||||
chdir(buf);
|
||||
}
|
||||
|
||||
static void cgit_check_cache(struct cacheitem *item)
|
||||
|
Laddar…
Referens i nytt ärende
Block a user