[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] blktap: Fix compile warnings in block-qcow2.c
# HG changeset patch # User Keir Fraser <keir.fraser@xxxxxxxxxx> # Date 1236592125 0 # Node ID 12c19447f6eae9b05102ad5f34428c447fa5a9e4 # Parent 95e3cd67add21637b3580091bc016a16fa46fbf4 blktap: Fix compile warnings in block-qcow2.c Signed-off-by: Yosuke Iwamatsu <y-iwamatsu@xxxxxxxxxxxxx> --- tools/blktap/drivers/block-qcow2.c | 27 ++++++++++++++++++++------- 1 files changed, 20 insertions(+), 7 deletions(-) diff -r 95e3cd67add2 -r 12c19447f6ea tools/blktap/drivers/block-qcow2.c --- a/tools/blktap/drivers/block-qcow2.c Mon Mar 09 09:37:52 2009 +0000 +++ b/tools/blktap/drivers/block-qcow2.c Mon Mar 09 09:48:45 2009 +0000 @@ -1984,6 +1984,7 @@ int qcow2_create(const char *filename, u const char *backing_file, int flags) { int fd, header_size, backing_filename_len, l1_size, i, shift, l2_bits; + int ret = 0; QCowHeader header; uint64_t tmp, offset; QCowCreateState s1, *s = &s1; @@ -2042,25 +2043,37 @@ int qcow2_create(const char *filename, u create_refcount_update(s, s->refcount_block_offset, s->cluster_size); /* write all the data */ - write(fd, &header, sizeof(header)); + ret = write(fd, &header, sizeof(header)); + if (ret < 0) + goto out; if (backing_file) { - write(fd, backing_file, backing_filename_len); + ret = write(fd, backing_file, backing_filename_len); + if (ret < 0) + goto out; } lseek(fd, s->l1_table_offset, SEEK_SET); tmp = 0; for(i = 0;i < l1_size; i++) { - write(fd, &tmp, sizeof(tmp)); + ret = write(fd, &tmp, sizeof(tmp)); + if (ret < 0) + goto out; } lseek(fd, s->refcount_table_offset, SEEK_SET); - write(fd, s->refcount_table, s->cluster_size); + ret = write(fd, s->refcount_table, s->cluster_size); + if (ret < 0) + goto out; lseek(fd, s->refcount_block_offset, SEEK_SET); - write(fd, s->refcount_block, s->cluster_size); - + ret = write(fd, s->refcount_block, s->cluster_size); + if (ret < 0) + goto out; + ret = 0; + + out: qemu_free(s->refcount_table); qemu_free(s->refcount_block); close(fd); - return 0; + return ret; } _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |