summaryrefslogtreecommitdiffstats
path: root/lib/raid/raid.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/raid/raid.c')
-rw-r--r--lib/raid/raid.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/raid/raid.c b/lib/raid/raid.c
index 445146b0..3656dada 100644
--- a/lib/raid/raid.c
+++ b/lib/raid/raid.c
@@ -452,8 +452,10 @@ int init_multiple_segtypes(struct cmd_context *cmd, struct segtype_library *segl
do {
if ((segtype = raid_segtype_fn[i](cmd)) &&
- !lvm_register_segtype(seglib, segtype))
- return 0;
+ !lvm_register_segtype(seglib, segtype)) {
+ dm_free(segtype);
+ return_0;
+ }
} while (raid_segtype_fn[++i]);
return 1;