Fix double free regression and realloc memleak

This commit is contained in:
pancake 2017-04-26 17:06:30 +02:00
parent b282656bbb
commit 89620af34f
2 changed files with 4 additions and 3 deletions
libr
core
util

@ -2925,7 +2925,6 @@ R_API char *r_core_cmd_str_pipe(RCore *core, const char *cmd) {
if (s) {
r_file_rm (tmp);
r_sandbox_disable (0);
free (s);
free (tmp);
free (_cmd);
return s;

@ -933,10 +933,12 @@ R_API char *r_str_append(char *ptr, const char *string) {
}
plen = strlen (ptr);
slen = strlen (string);
ptr = realloc (ptr, slen + plen + 1);
if (!ptr) {
char *newptr = realloc (ptr, slen + plen + 1);
if (!newptr) {
free (ptr);
return NULL;
}
ptr = newptr;
memcpy (ptr + plen, string, slen + 1);
return ptr;
}