From: Reid K. <rn...@go...> - 2011-10-14 18:46:27
|
The patch attached fixes it. Reid Index: libelftc/elftc_demangle.c =================================================================== --- libelftc/elftc_demangle.c (revision 2013) +++ libelftc/elftc_demangle.c (working copy) @@ -31,6 +31,7 @@ #include <errno.h> #include <libelf.h> #include <libelftc.h> +#include <stdlib.h> #include <string.h> #include "_libelftc.h" @@ -96,12 +97,14 @@ } if (buffer == NULL || bufsize < strlen(rlt) + 1) { + free(rlt); errno = ENAMETOOLONG; return (-1); } strncpy(buffer, rlt, bufsize); buffer[bufsize - 1] = '\0'; + free(rlt); return (0); } |