On Mon, Jan 18, 2010 at 01:11:36PM +0100, Kevin Wolf wrote: > @@ -55,6 +55,9 @@ int qcow2_grow_l1_table(BlockDriverState *bs, int min_size) > > /* write new table (align to cluster) */ > new_l1_table_offset = qcow2_alloc_clusters(bs, new_l1_size2); > + if (new_l1_table_offset < 0) { > + return new_l1_table_offset; > + }
I think the error return needs to free new_l1_table first.