diff options
| author | John Keeping <john@keeping.me.uk> | 2014-01-12 17:13:50 +0000 | 
|---|---|---|
| committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2014-01-12 20:20:20 +0100 | 
| commit | 3d8a6507ca542881a5e8b30ad6b7068a9c4fdeea (patch) | |
| tree | f95c74d3317546606d72b74db3082769515c5e33 /ui-summary.c | |
| parent | ui-snapshot: set unused cgit_filter fields to zero (diff) | |
| download | cgit-3d8a6507ca542881a5e8b30ad6b7068a9c4fdeea.tar.gz cgit-3d8a6507ca542881a5e8b30ad6b7068a9c4fdeea.tar.bz2 cgit-3d8a6507ca542881a5e8b30ad6b7068a9c4fdeea.zip | |
filter: pass extra arguments via cgit_open_filter
This avoids poking into the filter data structure at various points in
the code.  We rely on the fact that the number of arguments is fixed
based on the filter type (set in cgit_new_filter) and that the call
sites all know which filter type they're using.
Signed-off-by: John Keeping <john@keeping.me.uk>
Diffstat (limited to '')
| -rw-r--r-- | ui-summary.c | 13 | 
1 files changed, 6 insertions, 7 deletions
| diff --git a/ui-summary.c b/ui-summary.c index 63a5a75..725f3ab 100644 --- a/ui-summary.c +++ b/ui-summary.c @@ -151,18 +151,17 @@ void cgit_print_repo_readme(char *path)  	 * filesystem, while applying the about-filter.  	 */  	html("<div id='summary'>"); -	if (ctx.repo->about_filter) { -		ctx.repo->about_filter->argv[1] = filename; -		cgit_open_filter(ctx.repo->about_filter); -	} +	if (ctx.repo->about_filter) +		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) { + +	if (ctx.repo->about_filter)  		cgit_close_filter(ctx.repo->about_filter); -		ctx.repo->about_filter->argv[1] = NULL; -	} +  	html("</div>");  	if (free_filename)  		free(filename); | 
