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>
This commit is contained in:
		
							
								
								
									
										4
									
								
								filter.c
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								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); | ||||
| } | ||||
|  | ||||
|   | ||||
							
								
								
									
										18
									
								
								ui-commit.c
									
									
									
									
									
								
							
							
						
						
									
										18
									
								
								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>"); | ||||
| 	} | ||||
|   | ||||
| @@ -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); | ||||
| } | ||||
|   | ||||
| @@ -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) | ||||
|   | ||||
		Viittaa uudesa ongelmassa
	
	Block a user
	 Jason A. Donenfeld
					Jason A. Donenfeld