Author: Jason A. Donenfeld <Jason@zx2c4.com>
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>
filter.c | 4 ++++ ui-commit.c | 18 ++++++------------ ui-repolist.c | 6 ++---- ui-summary.c | 8 ++------
diff --git a/filter.c b/filter.c index 37025857b7d358060febfee65581bb87dfb49acd..7983737b6bc24ab9a7d6e6e19111755864370199 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_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 aa1892f630a7f2fce1c97deeb8d5bfc034b38a16..5ac79c0c5ec35abe805e673fd4103f5c77cc6f9a 100644 --- a/ui-commit.c +++ b/ui-commit.c @@ -107,28 +107,22 @@ html(""); } 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 7b1fec307f2f0927034d9b8299d2bd9a379730cb..f9cb21afb4c467c3cfc5fcf2737610342aa177f6 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 725f3ab4a98c01bac83bcfe43cdfd559c53914ca..ddd8f1b3392a329013cb7ee7d8c652e2847f4d22 100644 --- a/ui-summary.c +++ b/ui-summary.c @@ -151,16 +151,12 @@ /* Print the calculated readme, either from the git repo or from the * 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)