about summary refs log tree commit diff
path: root/cache.c
diff options
context:
space:
mode:
authorLars Hjemli <hjemli@gmail.com>2007-05-18 03:00:54 +0200
committerLars Hjemli <hjemli@gmail.com>2007-05-18 22:51:01 +0200
commit30ccdcaa74ebc0aab2b7843b0db8251d0ddf56de (patch)
treeefb3eddd091117281d5592c9eab44bc63121edf6 /cache.c
parentAdd lookup-function for valid repo commands (diff)
downloadcgit-pink-30ccdcaa74ebc0aab2b7843b0db8251d0ddf56de.tar.gz
cgit-pink-30ccdcaa74ebc0aab2b7843b0db8251d0ddf56de.zip
Enable url=value querystring parameter
This makes is possible to use repo-urls like '/pub/scm/git/git.git' and
even add path specifications, like '/pub/scm/git/git.git/log/documentation'.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (limited to 'cache.c')
-rw-r--r--cache.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/cache.c b/cache.c
index 8df7c26..7cdea9b 100644
--- a/cache.c
+++ b/cache.c
@@ -43,15 +43,18 @@ int cache_create_dirs()
 	if (mkdir(path, S_IRWXU) && errno!=EEXIST)
 		return 0;
 
-	if (!cgit_query_repo)
+	if (!cgit_repo)
 		return 0;
 
-	path = fmt("%s/%s", cgit_cache_root, cgit_query_repo);
+	path = fmt("%s/%s", cgit_cache_root,
+		   cache_safe_filename(cgit_repo->url));
+
 	if (mkdir(path, S_IRWXU) && errno!=EEXIST)
 		return 0;
 
 	if (cgit_query_page) {
-		path = fmt("%s/%s/%s", cgit_cache_root, cgit_query_repo, 
+		path = fmt("%s/%s/%s", cgit_cache_root,
+			   cache_safe_filename(cgit_repo->url),
 			   cgit_query_page);
 		if (mkdir(path, S_IRWXU) && errno!=EEXIST)
 			return 0;