Am 28.04.2011 04:06, schrieb Brad Campbell: > On 27/04/11 22:02, Brad Campbell wrote: >> On 27/04/11 21:56, Kevin Wolf wrote: >> >>> When you don't have a backing file, leaving an cluster unallocated means >>> that it's zero. When you have a backing file, it could be anything. So >>> if qemu-img convert wanted to save this space, it would have to read >>> from the backing file and leave the cluster unallocated if it reads as >>> zero. >>> >>> This is something that qemu-img doesn't do today. >> > > This passes cursory testing, but I'm just wondering if this is along the > right lines?
I haven't checked all details, but it looks like what I would have done. (Though something is wrong with your indentations, I suspect that the patch wouldn't apply) > @@ -939,9 +957,16 @@ out: > free_option_parameters(create_options); > free_option_parameters(param); > qemu_free(buf); > + if (buf3) { > + qemu_free(buf3); > + } qemu_free (and the libc free, too) work just fine with NULL, so the check isn't needed. Kevin