summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2014-01-13 03:56:50 +0100
committerJason A. Donenfeld <Jason@zx2c4.com>2014-01-14 02:00:07 +0100
commit800380dde797ae35d738a644acdae2fabb9a0d44 (patch)
tree4770bb2a3eb10021f5d527200ad61a2659a78bea
parentf43b228d0bca5791be98ff3fbb2f8743219635b6 (diff)
downloadcgit-800380dde797ae35d738a644acdae2fabb9a0d44.tar.gz
cgit-800380dde797ae35d738a644acdae2fabb9a0d44.tar.bz2
filter: return on null filter from open and close
So that we don't have to include the if(filter) open_filter(filter) block everywhere, we introduce the guard in the function itself. This should simplify quite a bit of code. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
-rw-r--r--filter.c4
-rw-r--r--ui-commit.c18
-rw-r--r--ui-repolist.c6
-rw-r--r--ui-summary.c8
4 files changed, 14 insertions, 22 deletions
diff --git a/filter.c b/filter.c
index 3702585..7983737 100644
--- a/filter.c
+++ b/filter.c
@@ -351,6 +351,8 @@ int cgit_open_filter(struct cgit_filter *filter, ...)
{
int result;
va_list ap;
+ if (!filter)
+ return 0;
va_start(ap, filter);
result = filter->open(filter, ap);
va_end(ap);
@@ -359,6 +361,8 @@ int cgit_open_filter(struct cgit_filter *filter, ...)
int cgit_close_filter(struct cgit_filter *filter)
{
+ if (!filter)
+ return 0;
return filter->close(filter);
}
diff --git a/ui-commit.c b/ui-commit.c
index aa1892f..5ac79c0 100644
--- a/ui-commit.c
+++ b/ui-commit.c
@@ -107,28 +107,22 @@ void cgit_print_commit(char *hex, const char *prefix)
}
html("</table>\n");
html("<div class='commit-subject'>");
- if (ctx.repo->commit_filter)
- cgit_open_filter(ctx.repo->commit_filter);
+ cgit_open_filter(ctx.repo->commit_filter);
html_txt(info->subject);
- if (ctx.repo->commit_filter)
- cgit_close_filter(ctx.repo->commit_filter);
+ cgit_close_filter(ctx.repo->commit_filter);
show_commit_decorations(commit);
html("</div>");
html("<div class='commit-msg'>");
- if (ctx.repo->commit_filter)
- cgit_open_filter(ctx.repo->commit_filter);
+ cgit_open_filter(ctx.repo->commit_filter);
html_txt(info->msg);
- if (ctx.repo->commit_filter)
- cgit_close_filter(ctx.repo->commit_filter);
+ cgit_close_filter(ctx.repo->commit_filter);
html("</div>");
if (notes.len != 0) {
html("<div class='notes-header'>Notes</div>");
html("<div class='notes'>");
- if (ctx.repo->commit_filter)
- cgit_open_filter(ctx.repo->commit_filter);
+ cgit_open_filter(ctx.repo->commit_filter);
html_txt(notes.buf);
- if (ctx.repo->commit_filter)
- cgit_close_filter(ctx.repo->commit_filter);
+ cgit_close_filter(ctx.repo->commit_filter);
html("</div>");
html("<div class='notes-footer'></div>");
}
diff --git a/ui-repolist.c b/ui-repolist.c
index 7b1fec3..f9cb21a 100644
--- a/ui-repolist.c
+++ b/ui-repolist.c
@@ -333,9 +333,7 @@ void cgit_print_site_readme()
{
if (!ctx.cfg.root_readme)
return;
- if (ctx.cfg.about_filter)
- cgit_open_filter(ctx.cfg.about_filter, ctx.cfg.root_readme);
+ cgit_open_filter(ctx.cfg.about_filter, ctx.cfg.root_readme);
html_include(ctx.cfg.root_readme);
- if (ctx.cfg.about_filter)
- cgit_close_filter(ctx.cfg.about_filter);
+ cgit_close_filter(ctx.cfg.about_filter);
}
diff --git a/ui-summary.c b/ui-summary.c
index 725f3ab..ddd8f1b 100644
--- a/ui-summary.c
+++ b/ui-summary.c
@@ -151,16 +151,12 @@ void cgit_print_repo_readme(char *path)
* filesystem, while applying the about-filter.
*/
html("<div id='summary'>");
- if (ctx.repo->about_filter)
- cgit_open_filter(ctx.repo->about_filter, filename);
-
+ cgit_open_filter(ctx.repo->about_filter, filename);
if (ref)
cgit_print_file(filename, ref, 1);
else
html_include(filename);
-
- if (ctx.repo->about_filter)
- cgit_close_filter(ctx.repo->about_filter);
+ cgit_close_filter(ctx.repo->about_filter);
html("</div>");
if (free_filename)