Revision 7267c094 block/qcow2-snapshot.c

b/block/qcow2-snapshot.c
52 52
    int i;
53 53

  
54 54
    for(i = 0; i < s->nb_snapshots; i++) {
55
        qemu_free(s->snapshots[i].name);
56
        qemu_free(s->snapshots[i].id_str);
55
        g_free(s->snapshots[i].name);
56
        g_free(s->snapshots[i].id_str);
57 57
    }
58
    qemu_free(s->snapshots);
58
    g_free(s->snapshots);
59 59
    s->snapshots = NULL;
60 60
    s->nb_snapshots = 0;
61 61
}
......
76 76
    }
77 77

  
78 78
    offset = s->snapshots_offset;
79
    s->snapshots = qemu_mallocz(s->nb_snapshots * sizeof(QCowSnapshot));
79
    s->snapshots = g_malloc0(s->nb_snapshots * sizeof(QCowSnapshot));
80 80
    for(i = 0; i < s->nb_snapshots; i++) {
81 81
        offset = align_offset(offset, 8);
82 82
        if (bdrv_pread(bs->file, offset, &h, sizeof(h)) != sizeof(h))
......
96 96

  
97 97
        offset += extra_data_size;
98 98

  
99
        sn->id_str = qemu_malloc(id_str_size + 1);
99
        sn->id_str = g_malloc(id_str_size + 1);
100 100
        if (bdrv_pread(bs->file, offset, sn->id_str, id_str_size) != id_str_size)
101 101
            goto fail;
102 102
        offset += id_str_size;
103 103
        sn->id_str[id_str_size] = '\0';
104 104

  
105
        sn->name = qemu_malloc(name_size + 1);
105
        sn->name = g_malloc(name_size + 1);
106 106
        if (bdrv_pread(bs->file, offset, sn->name, name_size) != name_size)
107 107
            goto fail;
108 108
        offset += name_size;
......
252 252
    if (find_snapshot_by_id(bs, sn_info->id_str) >= 0)
253 253
        return -ENOENT;
254 254

  
255
    sn->id_str = qemu_strdup(sn_info->id_str);
255
    sn->id_str = g_strdup(sn_info->id_str);
256 256
    if (!sn->id_str)
257 257
        goto fail;
258
    sn->name = qemu_strdup(sn_info->name);
258
    sn->name = g_strdup(sn_info->name);
259 259
    if (!sn->name)
260 260
        goto fail;
261 261
    sn->vm_state_size = sn_info->vm_state_size;
......
278 278
    sn->l1_size = s->l1_size;
279 279

  
280 280
    if (s->l1_size != 0) {
281
        l1_table = qemu_malloc(s->l1_size * sizeof(uint64_t));
281
        l1_table = g_malloc(s->l1_size * sizeof(uint64_t));
282 282
    } else {
283 283
        l1_table = NULL;
284 284
    }
......
289 289
    if (bdrv_pwrite_sync(bs->file, sn->l1_table_offset,
290 290
                    l1_table, s->l1_size * sizeof(uint64_t)) < 0)
291 291
        goto fail;
292
    qemu_free(l1_table);
292
    g_free(l1_table);
293 293
    l1_table = NULL;
294 294

  
295
    snapshots1 = qemu_malloc((s->nb_snapshots + 1) * sizeof(QCowSnapshot));
295
    snapshots1 = g_malloc((s->nb_snapshots + 1) * sizeof(QCowSnapshot));
296 296
    if (s->snapshots) {
297 297
        memcpy(snapshots1, s->snapshots, s->nb_snapshots * sizeof(QCowSnapshot));
298
        qemu_free(s->snapshots);
298
        g_free(s->snapshots);
299 299
    }
300 300
    s->snapshots = snapshots1;
301 301
    s->snapshots[s->nb_snapshots++] = *sn;
......
307 307
#endif
308 308
    return 0;
309 309
 fail:
310
    qemu_free(sn->name);
311
    qemu_free(l1_table);
310
    g_free(sn->name);
311
    g_free(l1_table);
312 312
    return -1;
313 313
}
314 314

  
......
380 380
        return ret;
381 381
    qcow2_free_clusters(bs, sn->l1_table_offset, sn->l1_size * sizeof(uint64_t));
382 382

  
383
    qemu_free(sn->id_str);
384
    qemu_free(sn->name);
383
    g_free(sn->id_str);
384
    g_free(sn->name);
385 385
    memmove(sn, sn + 1, (s->nb_snapshots - snapshot_index - 1) * sizeof(*sn));
386 386
    s->nb_snapshots--;
387 387
    ret = qcow2_write_snapshots(bs);
......
407 407
        return s->nb_snapshots;
408 408
    }
409 409

  
410
    sn_tab = qemu_mallocz(s->nb_snapshots * sizeof(QEMUSnapshotInfo));
410
    sn_tab = g_malloc0(s->nb_snapshots * sizeof(QEMUSnapshotInfo));
411 411
    for(i = 0; i < s->nb_snapshots; i++) {
412 412
        sn_info = sn_tab + i;
413 413
        sn = s->snapshots + i;
......
439 439
    s->l1_size = sn->l1_size;
440 440
    l1_size2 = s->l1_size * sizeof(uint64_t);
441 441
    if (s->l1_table != NULL) {
442
        qemu_free(s->l1_table);
442
        g_free(s->l1_table);
443 443
    }
444 444

  
445 445
    s->l1_table_offset = sn->l1_table_offset;
446
    s->l1_table = qemu_mallocz(align_offset(l1_size2, 512));
446
    s->l1_table = g_malloc0(align_offset(l1_size2, 512));
447 447

  
448 448
    if (bdrv_pread(bs->file, sn->l1_table_offset,
449 449
                   s->l1_table, l1_size2) != l1_size2) {

Also available in: Unified diff