Do not create cache files for cache files
This commit is contained in:
		
							parent
							
								
									92709b2b2f
								
							
						
					
					
						commit
						7d40faeba6
					
				
							
								
								
									
										17
									
								
								thumbs.c
									
									
									
									
									
								
							
							
						
						
									
										17
									
								
								thumbs.c
									
									
									
									
									
								
							| @ -327,7 +327,8 @@ int tns_cache_enabled() { | ||||
| 
 | ||||
| char* tns_cache_filename(const char *filename) { | ||||
| 	size_t len; | ||||
| 	char *cfile, *abspath; | ||||
| 	char *cfile = NULL; | ||||
| 	const char *abspath; | ||||
| 
 | ||||
| 	if (!cache_dir || !filename) | ||||
| 		return NULL; | ||||
| @ -336,15 +337,17 @@ char* tns_cache_filename(const char *filename) { | ||||
| 		if (!(abspath = absolute_path(filename))) | ||||
| 			return NULL; | ||||
| 	} else { | ||||
| 		abspath = (char*) s_malloc(strlen(filename) + 1); | ||||
| 		strcpy(abspath, filename); | ||||
| 		abspath = filename; | ||||
| 	} | ||||
| 
 | ||||
| 	len = strlen(cache_dir) + strlen(abspath) + 6; | ||||
| 	cfile = (char*) s_malloc(len); | ||||
| 	snprintf(cfile, len, "%s/%s.png", cache_dir, abspath + 1); | ||||
| 	if (strncmp(abspath, cache_dir, strlen(cache_dir))) { | ||||
| 		len = strlen(cache_dir) + strlen(abspath) + 6; | ||||
| 		cfile = (char*) s_malloc(len); | ||||
| 		snprintf(cfile, len, "%s/%s.png", cache_dir, abspath + 1); | ||||
| 	} | ||||
| 	 | ||||
| 	free(abspath); | ||||
| 	if (abspath != filename) | ||||
| 		free((void*) abspath); | ||||
| 
 | ||||
| 	return cfile; | ||||
| } | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Bert
						Bert