summaryrefslogtreecommitdiff
path: root/policy.c
diff options
context:
space:
mode:
authorThomas Jarosch <thomas.jarosch@intra2net.com>2011-10-02 21:45:41 +0200
committerNeilBrown <neilb@suse.de>2011-10-03 08:30:15 +1100
commite3da7890555d8cfe17fd9ee4f5f04ab64f855919 (patch)
tree147eb3d822d99d6ac9f6537c3b53134b64a98b02 /policy.c
parentb81221b74eba9fd7f670a8d3d4bfbda43ec91993 (diff)
Fix small memory leak
Credit goes to cppcheck. Signed-off-by: Thomas Jarosch <thomas.jarosch@intra2net.com> Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'policy.c')
-rw-r--r--policy.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/policy.c b/policy.c
index 2bbbac86..4a6ef823 100644
--- a/policy.c
+++ b/policy.c
@@ -757,8 +757,10 @@ int policy_check_path(struct mdinfo *disk, struct map_ent *array)
snprintf(path, PATH_MAX, FAILED_SLOTS_DIR "/%s", id_path);
f = fopen(path, "r");
- if (!f)
+ if (!f) {
+ free(id_path);
return 0;
+ }
rv = fscanf(f, " %s %x:%x:%x:%x\n",
array->metadata,
@@ -767,6 +769,7 @@ int policy_check_path(struct mdinfo *disk, struct map_ent *array)
array->uuid+2,
array->uuid+3);
fclose(f);
+ free(id_path);
return rv == 5;
}