Fix dodgy memory management
							parent
							
								
									9d0d371efc
								
							
						
					
					
						commit
						62bbb0597e
					
				|  | @ -21,7 +21,8 @@ const char *default_image_path(void) | ||||||
| 	if(!path) | 	if(!path) | ||||||
| 		return "factor.image"; | 		return "factor.image"; | ||||||
| 
 | 
 | ||||||
| 	char *new_path = safe_realloc(path,PATH_MAX + strlen(SUFFIX) + 1); | 	char *new_path = safe_malloc(PATH_MAX + strlen(SUFFIX) + 1); | ||||||
|  | 	memcpy(new_path,path,strlen(path) + 1); | ||||||
| 	strcat(new_path,SUFFIX);  | 	strcat(new_path,SUFFIX);  | ||||||
| 	return new_path; | 	return new_path; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -8,13 +8,6 @@ void *safe_malloc(size_t size) | ||||||
| 	return ptr; | 	return ptr; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void *safe_realloc(const void *ptr, size_t size) |  | ||||||
| { |  | ||||||
| 	void *new_ptr = realloc((void *)ptr,size); |  | ||||||
| 	if(!new_ptr) fatal_error("Out of memory in safe_realloc", 0); |  | ||||||
| 	return new_ptr; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| F_CHAR *safe_strdup(const F_CHAR *str) | F_CHAR *safe_strdup(const F_CHAR *str) | ||||||
| { | { | ||||||
| 	F_CHAR *ptr = STRDUP(str); | 	F_CHAR *ptr = STRDUP(str); | ||||||
|  |  | ||||||
|  | @ -1,3 +1,2 @@ | ||||||
| void *safe_malloc(size_t size); | void *safe_malloc(size_t size); | ||||||
| void *safe_realloc(const void *ptr, size_t size); |  | ||||||
| F_CHAR *safe_strdup(const F_CHAR *str); | F_CHAR *safe_strdup(const F_CHAR *str); | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue