Revision ad717139

b/hw/xen_disk.c
634 634
    if (!blkdev->dinfo) {
635 635
        /* setup via xenbus -> create new block driver instance */
636 636
        xen_be_printf(&blkdev->xendev, 2, "create new bdrv (xenbus setup)\n");
637
	blkdev->bs = bdrv_new(blkdev->dev);
638
	if (blkdev->bs) {
639
	    if (bdrv_open(blkdev->bs, blkdev->filename, qflags,
640
                           bdrv_find_whitelisted_format(blkdev->fileproto))
641
                != 0) {
642
		bdrv_delete(blkdev->bs);
643
		blkdev->bs = NULL;
644
	    }
645
	}
646
	if (!blkdev->bs)
647
	    return -1;
637
        blkdev->bs = bdrv_new(blkdev->dev);
638
        if (bdrv_open(blkdev->bs, blkdev->filename, qflags,
639
                      bdrv_find_whitelisted_format(blkdev->fileproto)) != 0) {
640
            bdrv_delete(blkdev->bs);
641
            return -1;
642
        }
648 643
    } else {
649 644
        /* setup via qemu cmdline -> already setup for us */
650 645
        xen_be_printf(&blkdev->xendev, 2, "get configured bdrv (cmdline setup)\n");
b/qemu-img.c
215 215
    char password[256];
216 216

  
217 217
    bs = bdrv_new("");
218
    if (!bs) {
219
        error_report("Not enough memory");
220
        goto fail;
221
    }
218

  
222 219
    if (fmt) {
223 220
        drv = bdrv_find_format(fmt);
224 221
        if (!drv) {
b/qemu-io.c
1509 1509
		}
1510 1510
	} else {
1511 1511
		bs = bdrv_new("hda");
1512
		if (!bs)
1513
			return 1;
1514 1512

  
1515 1513
		if (bdrv_open(bs, name, flags, NULL) < 0) {
1516 1514
			fprintf(stderr, "%s: can't open device %s\n", progname, name);
b/qemu-nbd.c
336 336
    bdrv_init();
337 337

  
338 338
    bs = bdrv_new("hda");
339
    if (bs == NULL)
340
        return 1;
341 339

  
342 340
    if ((ret = bdrv_open(bs, argv[optind], flags, NULL)) < 0) {
343 341
        errno = -ret;

Also available in: Unified diff