Do not attempt to allocate sn_tab when there are no snapshots
authormalc <av1474@comtv.ru>
Thu, 21 May 2009 01:40:23 +0000 (05:40 +0400)
committermalc <av1474@comtv.ru>
Thu, 21 May 2009 01:40:53 +0000 (05:40 +0400)
This was caught by a7d27b536ffc0773028a90f14580552c0c3ddb2a which
aborted on this attempt, thanks to Alex Ivanov for report.

Signed-off-by: malc <av1474@comtv.ru>

block/qcow2.c

index a6de9b6..33f3299 100644 (file)
@@ -2259,6 +2259,11 @@ static int qcow_snapshot_list(BlockDriverState *bs,
     QCowSnapshot *sn;
     int i;
 
+    if (!s->nb_snapshots) {
+        *psn_tab = NULL;
+        return s->nb_snapshots;
+    }
+
     sn_tab = qemu_mallocz(s->nb_snapshots * sizeof(QEMUSnapshotInfo));
     for(i = 0; i < s->nb_snapshots; i++) {
         sn_info = sn_tab + i;