use QSIMPLEQ_FOREACH_SAFE when freeing list elements
authorPaolo Bonzini <pbonzini@redhat.com>
Tue, 6 Mar 2012 17:55:54 +0000 (18:55 +0100)
committerKevin Wolf <kwolf@redhat.com>
Mon, 12 Mar 2012 14:14:07 +0000 (15:14 +0100)
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
blockdev.c

index 0e8666a..3abc1da 100644 (file)
@@ -736,7 +736,7 @@ void qmp_blockdev_group_snapshot_sync(SnapshotDevList *dev_list,
     int ret = 0;
     SnapshotDevList *dev_entry = dev_list;
     SnapshotDev *dev_info = NULL;
-    BlkGroupSnapshotStates *states;
+    BlkGroupSnapshotStates *states, *next;
     BlockDriver *proto_drv;
     BlockDriver *drv;
     int flags;
@@ -842,7 +842,7 @@ delete_and_fail:
         }
     }
 exit:
-    QSIMPLEQ_FOREACH(states, &snap_bdrv_states, entry) {
+    QSIMPLEQ_FOREACH_SAFE(states, &snap_bdrv_states, entry, next) {
         g_free(states);
     }
     return;