diff options
author | Alasdair Kergon <agk@redhat.com> | 2003-08-27 15:30:39 +0000 |
---|---|---|
committer | Alasdair Kergon <agk@redhat.com> | 2003-08-27 15:30:39 +0000 |
commit | 8fd3c219fd609928f2a8609f8eb89cf27ce7acaf (patch) | |
tree | 3249dc109e8b9d23c4248bd4cb92350304b7a2aa /lib/metadata/merge.c | |
parent | c2f387296e161489eb05afbccc81464367f7a5d3 (diff) | |
download | lvm2-8fd3c219fd609928f2a8609f8eb89cf27ce7acaf.tar.gz lvm2-8fd3c219fd609928f2a8609f8eb89cf27ce7acaf.tar.xz lvm2-8fd3c219fd609928f2a8609f8eb89cf27ce7acaf.zip |
Fix unsafe list iteration in segment merge code. [HM]
Diffstat (limited to 'lib/metadata/merge.c')
-rw-r--r-- | lib/metadata/merge.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/metadata/merge.c b/lib/metadata/merge.c index 23122f62..8b51a49f 100644 --- a/lib/metadata/merge.c +++ b/lib/metadata/merge.c @@ -46,10 +46,10 @@ static int _merge(struct lv_segment *first, struct lv_segment *second) int lv_merge_segments(struct logical_volume *lv) { - struct list *segh; + struct list *segh, *t; struct lv_segment *current, *prev = NULL; - list_iterate(segh, &lv->segments) { + list_iterate_safe(segh, t, &lv->segments) { current = list_item(segh, struct lv_segment); if (_merge(prev, current)) |