Revision 7d4b4ba5 block.c
b/block.c | ||
---|---|---|
44 | 44 |
#include <windows.h> |
45 | 45 |
#endif |
46 | 46 |
|
47 |
static void bdrv_dev_change_media_cb(BlockDriverState *bs); |
|
47 |
static void bdrv_dev_change_media_cb(BlockDriverState *bs, bool load);
|
|
48 | 48 |
static BlockDriverAIOCB *bdrv_aio_readv_em(BlockDriverState *bs, |
49 | 49 |
int64_t sector_num, QEMUIOVector *qiov, int nb_sectors, |
50 | 50 |
BlockDriverCompletionFunc *cb, void *opaque); |
... | ... | |
688 | 688 |
} |
689 | 689 |
|
690 | 690 |
if (!bdrv_key_required(bs)) { |
691 |
bdrv_dev_change_media_cb(bs); |
|
691 |
bdrv_dev_change_media_cb(bs, true);
|
|
692 | 692 |
} |
693 | 693 |
|
694 | 694 |
return 0; |
... | ... | |
724 | 724 |
bdrv_close(bs->file); |
725 | 725 |
} |
726 | 726 |
|
727 |
bdrv_dev_change_media_cb(bs); |
|
727 |
bdrv_dev_change_media_cb(bs, false);
|
|
728 | 728 |
} |
729 | 729 |
} |
730 | 730 |
|
... | ... | |
807 | 807 |
} |
808 | 808 |
} |
809 | 809 |
|
810 |
static void bdrv_dev_change_media_cb(BlockDriverState *bs) |
|
810 |
static void bdrv_dev_change_media_cb(BlockDriverState *bs, bool load)
|
|
811 | 811 |
{ |
812 | 812 |
if (bs->dev_ops && bs->dev_ops->change_media_cb) { |
813 |
bs->dev_ops->change_media_cb(bs->dev_opaque); |
|
813 |
bs->dev_ops->change_media_cb(bs->dev_opaque, load);
|
|
814 | 814 |
} |
815 | 815 |
} |
816 | 816 |
|
... | ... | |
1674 | 1674 |
} else if (!bs->valid_key) { |
1675 | 1675 |
bs->valid_key = 1; |
1676 | 1676 |
/* call the change callback now, we skipped it on open */ |
1677 |
bdrv_dev_change_media_cb(bs); |
|
1677 |
bdrv_dev_change_media_cb(bs, true);
|
|
1678 | 1678 |
} |
1679 | 1679 |
return ret; |
1680 | 1680 |
} |
Also available in: Unified diff