mrc0mmand / rpms / lvm2

Forked from rpms/lvm2 2 years ago
Clone

Blame SOURCES/lvm2-2_03_12-integrity-fix-segfault-on-error-path-when-replacing-.patch

31f061
 lib/metadata/integrity_manip.c | 10 +++++++---
31f061
 1 file changed, 7 insertions(+), 3 deletions(-)
31f061
31f061
diff --git a/lib/metadata/integrity_manip.c b/lib/metadata/integrity_manip.c
31f061
index 53ab1b3..abf90d8 100644
31f061
--- a/lib/metadata/integrity_manip.c
31f061
+++ b/lib/metadata/integrity_manip.c
31f061
@@ -773,9 +773,13 @@ int lv_add_integrity_to_raid(struct logical_volume *lv, struct integrity_setting
31f061
 bad:
31f061
 	log_error("Failed to add integrity.");
31f061
 
31f061
-	for (s = 0; s < revert_meta_lvs; s++) {
31f061
-		if (!lv_remove(imeta_lvs[s]))
31f061
-			log_error("New integrity metadata LV may require manual removal.");
31f061
+	if (revert_meta_lvs) {
31f061
+		for (s = 0; s < DEFAULT_RAID_MAX_IMAGES; s++) {
31f061
+			if (!imeta_lvs[s])
31f061
+				continue;
31f061
+			if (!lv_remove(imeta_lvs[s]))
31f061
+				log_error("New integrity metadata LV may require manual removal.");
31f061
+		}
31f061
 	}
31f061
 			       
31f061
 	if (!vg_write(vg) || !vg_commit(vg))