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 <ja...@zx2c4.com>
---
 filter.c      |  4 ++++
 ui-commit.c   | 18 ++++++------------
 ui-repolist.c |  6 ++----
 ui-summary.c  |  8 ++------
 4 files changed, 14 insertions(+), 22 deletions(-)

diff --git a/filter.c b/filter.c
index d2f6a4f..7db98b1 100644
--- a/filter.c
+++ b/filter.c
@@ -316,6 +316,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);
@@ -324,6 +326,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)
-- 
1.8.5.2

_______________________________________________
CGit mailing list
CGit@lists.zx2c4.com
http://lists.zx2c4.com/mailman/listinfo/cgit

Reply via email to