summaryrefslogtreecommitdiff
path: root/Grow.c
diff options
context:
space:
mode:
authorJes Sorensen <Jes.Sorensen@redhat.com>2011-11-01 16:09:26 +0100
committerNeilBrown <neilb@suse.de>2011-11-02 10:48:53 +1100
commit8e61e0d7f9e968505e94766adf8a3407166767c4 (patch)
tree209a1e58a4ab5d9a0bd63988cf76bab781fd990a /Grow.c
parentd067351703f0c52d63fe96f22af57c4bbd5889d5 (diff)
Grow_reshape(): Fix another 'sra' leak
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com> Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'Grow.c')
-rw-r--r--Grow.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/Grow.c b/Grow.c
index 982c9f8e..e7fd7c42 100644
--- a/Grow.c
+++ b/Grow.c
@@ -1534,10 +1534,12 @@ int Grow_reshape(char *devname, int fd, int quiet, char *backup_file,
frozen = freeze(st);
if (frozen < -1) {
/* freeze() already spewed the reason */
+ sysfs_free(sra);
return 1;
} else if (frozen < 0) {
fprintf(stderr, Name ": %s is performing resync/recovery and cannot"
" be reshaped\n", devname);
+ sysfs_free(sra);
return 1;
}
@@ -1834,6 +1836,7 @@ int Grow_reshape(char *devname, int fd, int quiet, char *backup_file,
frozen = 0;
}
release:
+ sysfs_free(sra);
if (frozen > 0)
unfreeze(st);
return rv;