Fixed unfreed memory and files handling errors
This commit is contained in:
@ -17,16 +17,18 @@ void err_msg(char *msg)
|
||||
* @param str2
|
||||
* @return char*
|
||||
*/
|
||||
char *concat_to_front(char **str1, char *str2)
|
||||
char *prepend(char *dest, const char *prefix)
|
||||
{
|
||||
char *tmp = strdup(*str1);
|
||||
size_t orig_len = strlen(dest);
|
||||
size_t prefix_len = strlen(prefix);
|
||||
|
||||
strcpy(*str1, str2);
|
||||
strcat(*str1, tmp);
|
||||
dest = realloc(dest, orig_len + prefix_len + 1);
|
||||
|
||||
memmove(dest + prefix_len, dest, orig_len + 1);
|
||||
|
||||
free(tmp);
|
||||
memcpy(dest, prefix, prefix_len);
|
||||
|
||||
return *str1;
|
||||
return dest;
|
||||
}
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user