ui-snapshot: pass repo into get_ref_from_filename()
Prepare to allow a custom snapshot prefix. Signed-off-by: John Keeping <john@keeping.me.uk> Reviewed-by: Christian Hesse <mail@eworm.de>
This commit is contained in:
		 John Keeping
					John Keeping
				
			
				
					committed by
					
						 Jason A. Donenfeld
						Jason A. Donenfeld
					
				
			
			
				
	
			
			
			 Jason A. Donenfeld
						Jason A. Donenfeld
					
				
			
						parent
						
							bd1b281478
						
					
				
				
					commit
					d85e8a9810
				
			| @@ -139,7 +139,8 @@ static int make_snapshot(const struct cgit_snapshot_format *format, | ||||
|  * pending a 'v' or a 'V' to the remaining snapshot name ("0.7.2" -> | ||||
|  * "v0.7.2") gives us something valid. | ||||
|  */ | ||||
| static const char *get_ref_from_filename(const char *url, const char *filename, | ||||
| static const char *get_ref_from_filename(const struct cgit_repo *repo, | ||||
| 					 const char *filename, | ||||
| 					 const struct cgit_snapshot_format *format) | ||||
| { | ||||
| 	const char *reponame; | ||||
| @@ -153,7 +154,7 @@ static const char *get_ref_from_filename(const char *url, const char *filename, | ||||
| 	if (get_oid(snapshot.buf, &oid) == 0) | ||||
| 		goto out; | ||||
|  | ||||
| 	reponame = cgit_repobasename(url); | ||||
| 	reponame = cgit_repobasename(repo->url); | ||||
| 	if (starts_with(snapshot.buf, reponame)) { | ||||
| 		const char *new_start = snapshot.buf; | ||||
| 		new_start += strlen(reponame); | ||||
| @@ -200,7 +201,7 @@ void cgit_print_snapshot(const char *head, const char *hex, | ||||
| 	} | ||||
|  | ||||
| 	if (!hex && dwim) { | ||||
| 		hex = get_ref_from_filename(ctx.repo->url, filename, f); | ||||
| 		hex = get_ref_from_filename(ctx.repo, filename, f); | ||||
| 		if (hex == NULL) { | ||||
| 			cgit_print_error_page(404, "Not found", "Not found"); | ||||
| 			return; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user