[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 2/2] libxc: always set a error return code on lz4 decompression failures
While at it, rename the exit_2 label to exit_1; there is no exit_1 currently. Signed-off-by: Matthew Daley <mattjd@xxxxxxxxx> --- tools/libxc/xc_dom_decompress_lz4.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/tools/libxc/xc_dom_decompress_lz4.c b/tools/libxc/xc_dom_decompress_lz4.c index 4787535..b980186 100644 --- a/tools/libxc/xc_dom_decompress_lz4.c +++ b/tools/libxc/xc_dom_decompress_lz4.c @@ -69,13 +69,14 @@ int xc_try_lz4_decode( size -= 4; } else { msg = "invalid header"; - goto exit_2; + goto exit_1; } for (;;) { if (size < 4) { msg = "missing data"; - goto exit_2; + ret = -1; + goto exit_1; } chunksize = get_unaligned_le32(inp); if (chunksize == ARCHIVE_MAGICNUMBER) { @@ -87,7 +88,8 @@ int xc_try_lz4_decode( size -= 4; if (chunksize > size) { msg = "insufficient input data"; - goto exit_2; + ret = -1; + goto exit_1; } dest_len = out_len - (outp - output); @@ -95,7 +97,7 @@ int xc_try_lz4_decode( &dest_len); if (ret < 0) { msg = "decoding failed"; - goto exit_2; + goto exit_1; } outp += dest_len; @@ -110,13 +112,14 @@ int xc_try_lz4_decode( if (size < 0) { msg = "data corrupted"; - goto exit_2; + ret = -1; + goto exit_1; } inp += chunksize; } -exit_2: +exit_1: free(output); exit_0: DOMPRINTF("LZ4 decompression error: %s\n", msg); -- 1.7.10.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |