提交 7143c62c 编写于 作者: B bellard

vmdk 3 fixes


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1052 c046a42c-6fe2-441c-8c8c-71466251a162
上级 4e8b5da2
......@@ -101,8 +101,7 @@ static int vmdk_open(BlockDriverState *bs, const char *filename)
return -1;
if (read(fd, &magic, sizeof(magic)) != sizeof(magic))
goto fail;
magic = le32_to_cpu(magic);
magic = be32_to_cpu(magic);
if (magic == VMDK3_MAGIC) {
VMDK3Header header;
if (read(fd, &header, sizeof(header)) !=
......@@ -136,7 +135,9 @@ static int vmdk_open(BlockDriverState *bs, const char *filename)
s->l1_table = qemu_malloc(l1_size);
if (!s->l1_table)
goto fail;
if (read(s->fd, s->l1_table, l1_size) != l1_size)
if (lseek(fd, s->l1_table_offset, SEEK_SET) == -1)
goto fail;
if (read(fd, s->l1_table, l1_size) != l1_size)
goto fail;
for(i = 0; i < s->l1_size; i++) {
le32_to_cpus(&s->l1_table[i]);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册