[PATCH 1/2] filter: introduce cgit_open_email_filter() wrapper
John Keeping
john at keeping.me.uk
Thu Aug 25 22:13:11 CEST 2016
We provide email addresses to the email filter surrounded by angle
brackets, but we will soon remove these in our internal representation.
Introduce a wrapper so that we only have to add them in one place.
Signed-off-by: John Keeping <john at keeping.me.uk>
---
It might be nice for this to be symmetric with a new
cgit_close_email_filter() thin wrapper as well, but I haven't bothered
with that in this first pass.
---
cgit.h | 2 ++
filter.c | 5 +++++
ui-commit.c | 4 ++--
ui-log.c | 2 +-
ui-refs.c | 4 ++--
5 files changed, 12 insertions(+), 5 deletions(-)
diff --git a/cgit.h b/cgit.h
index 325432b..7331965 100644
--- a/cgit.h
+++ b/cgit.h
@@ -383,6 +383,8 @@ extern struct cgit_filter *cgit_new_filter(const char *cmd, filter_type filterty
extern void cgit_cleanup_filters(void);
extern void cgit_init_filters(void);
+extern void cgit_open_email_filter(const char *email, const char *origin);
+
extern void cgit_prepare_repo_env(struct cgit_repo * repo);
extern int readfile(const char *path, char **buf, size_t *size);
diff --git a/filter.c b/filter.c
index 949c931..88098ba 100644
--- a/filter.c
+++ b/filter.c
@@ -454,3 +454,8 @@ struct cgit_filter *cgit_new_filter(const char *cmd, filter_type filtertype)
die("Invalid filter type: %.*s", (int) len, cmd);
}
+
+void cgit_open_email_filter(const char *email, const char *origin)
+{
+ cgit_open_filter(ctx.repo->email_filter, email, origin);
+}
diff --git a/ui-commit.c b/ui-commit.c
index 099d294..95958e0 100644
--- a/ui-commit.c
+++ b/ui-commit.c
@@ -47,7 +47,7 @@ void cgit_print_commit(char *hex, const char *prefix)
cgit_print_diff_ctrls();
html("<table summary='commit info' class='commit-info'>\n");
html("<tr><th>author</th><td>");
- cgit_open_filter(ctx.repo->email_filter, info->author_email, "commit");
+ cgit_open_email_filter(info->author_email, "commit");
html_txt(info->author);
if (!ctx.cfg.noplainemail) {
html(" ");
@@ -59,7 +59,7 @@ void cgit_print_commit(char *hex, const char *prefix)
cgit_date_mode(DATE_ISO8601)));
html("</td></tr>\n");
html("<tr><th>committer</th><td>");
- cgit_open_filter(ctx.repo->email_filter, info->committer_email, "commit");
+ cgit_open_email_filter(info->committer_email, "commit");
html_txt(info->committer);
if (!ctx.cfg.noplainemail) {
html(" ");
diff --git a/ui-log.c b/ui-log.c
index c97b8e0..7baf5e8 100644
--- a/ui-log.c
+++ b/ui-log.c
@@ -238,7 +238,7 @@ static void print_commit(struct commit *commit, struct rev_info *revs)
oid_to_hex(&commit->object.oid), ctx.qry.vpath);
show_commit_decorations(commit);
html("</td><td>");
- cgit_open_filter(ctx.repo->email_filter, info->author_email, "log");
+ cgit_open_email_filter(info->author_email, "log");
html_txt(info->author);
cgit_close_filter(ctx.repo->email_filter);
diff --git a/ui-refs.c b/ui-refs.c
index 75f2789..ffb9bb1 100644
--- a/ui-refs.c
+++ b/ui-refs.c
@@ -69,7 +69,7 @@ static int print_branch(struct refinfo *ref)
if (ref->object->type == OBJ_COMMIT) {
cgit_commit_link(info->subject, NULL, NULL, name, NULL, NULL);
html("</td><td>");
- cgit_open_filter(ctx.repo->email_filter, info->author_email, "refs");
+ cgit_open_email_filter(info->author_email, "refs");
html_txt(info->author);
cgit_close_filter(ctx.repo->email_filter);
html("</td><td colspan='2'>");
@@ -148,7 +148,7 @@ static int print_tag(struct refinfo *ref)
cgit_close_filter(ctx.repo->email_filter);
}
} else if (ref->object->type == OBJ_COMMIT) {
- cgit_open_filter(ctx.repo->email_filter, ref->commit->author_email, "refs");
+ cgit_open_email_filter(ref->commit->author_email, "refs");
html_txt(ref->commit->author);
cgit_close_filter(ctx.repo->email_filter);
}
--
2.10.0.rc0.142.g1e9f63b
More information about the CGit
mailing list