diff options
author | Lucas De Marchi <lucas.demarchi@intel.com> | 2013-11-14 04:16:16 -0200 |
---|---|---|
committer | Lucas De Marchi <lucas.demarchi@intel.com> | 2013-11-18 05:22:33 -0200 |
commit | b93d800640ca4ebe433400abcf743d9521b3f58a (patch) | |
tree | 7ae947edc357153626e5b6b3bc7ffc5f62cf460d | |
parent | 342e9cea262578ca847678692b2cc73d659434fd (diff) | |
download | kmod-b93d800640ca4ebe433400abcf743d9521b3f58a.tar.gz |
util: use _cleanup_free_ on path_make_absolute_cwd()
-rw-r--r-- | libkmod/libkmod-util.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/libkmod/libkmod-util.c b/libkmod/libkmod-util.c index d686250..837f417 100644 --- a/libkmod/libkmod-util.c +++ b/libkmod/libkmod-util.c @@ -283,15 +283,15 @@ bool path_is_absolute(const char *p) char *path_make_absolute_cwd(const char *p) { - char *cwd, *r; - size_t plen; - size_t cwdlen; + _cleanup_free_ char *cwd = NULL; + size_t plen, cwdlen; + char *r; if (path_is_absolute(p)) return strdup(p); cwd = get_current_dir_name(); - if (cwd == NULL) + if (!cwd) return NULL; plen = strlen(p); @@ -299,11 +299,10 @@ char *path_make_absolute_cwd(const char *p) /* cwd + '/' + p + '\0' */ r = realloc(cwd, cwdlen + 1 + plen + 1); - if (r == NULL) { - free(cwd); + if (r == NULL) return NULL; - } + cwd = NULL; r[cwdlen] = '/'; memcpy(&r[cwdlen + 1], p, plen + 1); |