diff options
Diffstat (limited to 'shared.c')
-rw-r--r-- | shared.c | 8 |
1 files changed, 4 insertions, 4 deletions
@@ -70,6 +70,7 @@ struct cgit_repo *cgit_add_repo(const char *url) | |||
70 | ret->about_filter = ctx.cfg.about_filter; | 70 | ret->about_filter = ctx.cfg.about_filter; |
71 | ret->commit_filter = ctx.cfg.commit_filter; | 71 | ret->commit_filter = ctx.cfg.commit_filter; |
72 | ret->source_filter = ctx.cfg.source_filter; | 72 | ret->source_filter = ctx.cfg.source_filter; |
73 | ret->clone_url = ctx.cfg.clone_url; | ||
73 | return ret; | 74 | return ret; |
74 | } | 75 | } |
75 | 76 | ||
@@ -374,7 +375,8 @@ typedef struct { | |||
374 | char * value; | 375 | char * value; |
375 | } cgit_env_var; | 376 | } cgit_env_var; |
376 | 377 | ||
377 | static void prepare_env(struct cgit_repo * repo) { | 378 | void cgit_prepare_repo_env(struct cgit_repo * repo) |
379 | { | ||
378 | cgit_env_var env_vars[] = { | 380 | cgit_env_var env_vars[] = { |
379 | { .name = "CGIT_REPO_URL", .value = repo->url }, | 381 | { .name = "CGIT_REPO_URL", .value = repo->url }, |
380 | { .name = "CGIT_REPO_NAME", .value = repo->name }, | 382 | { .name = "CGIT_REPO_NAME", .value = repo->name }, |
@@ -395,7 +397,7 @@ static void prepare_env(struct cgit_repo * repo) { | |||
395 | fprintf(stderr, warn, p->name, p->value); | 397 | fprintf(stderr, warn, p->name, p->value); |
396 | } | 398 | } |
397 | 399 | ||
398 | int cgit_open_filter(struct cgit_filter *filter, struct cgit_repo * repo) | 400 | int cgit_open_filter(struct cgit_filter *filter) |
399 | { | 401 | { |
400 | 402 | ||
401 | filter->old_stdout = chk_positive(dup(STDOUT_FILENO), | 403 | filter->old_stdout = chk_positive(dup(STDOUT_FILENO), |
@@ -406,8 +408,6 @@ int cgit_open_filter(struct cgit_filter *filter, struct cgit_repo * repo) | |||
406 | close(filter->pipe_fh[1]); | 408 | close(filter->pipe_fh[1]); |
407 | chk_non_negative(dup2(filter->pipe_fh[0], STDIN_FILENO), | 409 | chk_non_negative(dup2(filter->pipe_fh[0], STDIN_FILENO), |
408 | "Unable to use pipe as STDIN"); | 410 | "Unable to use pipe as STDIN"); |
409 | if (repo) | ||
410 | prepare_env(repo); | ||
411 | execvp(filter->cmd, filter->argv); | 411 | execvp(filter->cmd, filter->argv); |
412 | die("Unable to exec subprocess %s: %s (%d)", filter->cmd, | 412 | die("Unable to exec subprocess %s: %s (%d)", filter->cmd, |
413 | strerror(errno), errno); | 413 | strerror(errno), errno); |