aboutsummaryrefslogtreecommitdiffstats
path: root/src/blogc-git-receiver/pre-receive.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/blogc-git-receiver/pre-receive.c')
-rw-r--r--src/blogc-git-receiver/pre-receive.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/blogc-git-receiver/pre-receive.c b/src/blogc-git-receiver/pre-receive.c
index 99e15dd..954c379 100644
--- a/src/blogc-git-receiver/pre-receive.c
+++ b/src/blogc-git-receiver/pre-receive.c
@@ -104,6 +104,11 @@ bgr_pre_receive_hook(int argc, char *argv[])
return 1;
}
char *repo_dir = dirname(real_hooks_dir);
+ if (0 != chdir(repo_dir)) {
+ fprintf(stderr, "error: failed to change to repository root\n");
+ free(real_hooks_dir);
+ return 1;
+ }
char *htdocs_sym = bc_strdup_printf("%s/htdocs", repo_dir);
free(real_hooks_dir);
if (0 != access(htdocs_sym, F_OK)) {