[PATCH 9/9] module: use _cleanup_free and remove useless call to free()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



---
 libkmod/libkmod-module.c | 14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

diff --git a/libkmod/libkmod-module.c b/libkmod/libkmod-module.c
index 3adbb69..2f92e16 100644
--- a/libkmod/libkmod-module.c
+++ b/libkmod/libkmod-module.c
@@ -252,10 +252,8 @@ static int kmod_module_new(struct kmod_ctx *ctx, const char *key,
 		keylen = namelen + aliaslen + 1;
 
 	m = malloc(sizeof(*m) + (alias == NULL ? 1 : 2) * (keylen + 1));
-	if (m == NULL) {
-		free(m);
+	if (m == NULL)
 		return -ENOMEM;
-	}
 
 	memset(m, 0, sizeof(*m));
 
@@ -971,7 +969,8 @@ static int module_do_install_commands(struct kmod_module *mod,
 					struct probe_insert_cb *cb)
 {
 	const char *command = kmod_module_get_install_commands(mod);
-	char *p, *cmd;
+	char *p;
+	_cleanup_free_ char *cmd;
 	int err;
 	size_t cmdlen, options_len, varlen;
 
@@ -994,10 +993,9 @@ static int module_do_install_commands(struct kmod_module *mod,
 		size_t slen = cmdlen - varlen + options_len;
 		char *suffix = p + varlen;
 		char *s = malloc(slen + 1);
-		if (s == NULL) {
-			free(cmd);
+		if (!s)
 			return -ENOMEM;
-		}
+
 		memcpy(s, cmd, p - cmd);
 		memcpy(s + prefixlen, options, options_len);
 		memcpy(s + prefixlen + options_len, suffix, suffixlen);
@@ -1013,8 +1011,6 @@ static int module_do_install_commands(struct kmod_module *mod,
 	else
 		err = command_do(mod, "install", cmd);
 
-	free(cmd);
-
 	return err;
 }
 
-- 
1.8.4.2

--
To unsubscribe from this list: send the line "unsubscribe linux-modules" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux