summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMilton Miller <miltonm@bga.com>2007-09-22 09:03:52 +1000
committerPaul Mackerras <paulus@samba.org>2007-10-03 11:48:43 +1000
commit51a505d73bfed863135861fdc0496a09766b69d5 (patch)
tree4ee03e6d150f7553e77a4d8d67da06711a6f5ee9
parente47654d016c68a02f654ac16951577804f7789c7 (diff)
downloadlinux-stable-51a505d73bfed863135861fdc0496a09766b69d5.tar.gz
linux-stable-51a505d73bfed863135861fdc0496a09766b69d5.tar.bz2
linux-stable-51a505d73bfed863135861fdc0496a09766b69d5.zip
[POWERPC] boot: Simplify gunzip_finish
Call gunzip_partial to calculate the remaining length and copy the data to the user buffer. This makes it shorter and reduces duplication. Signed-off-by: Milton Miller <miltonm@bga.com> Acked-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
-rw-r--r--arch/powerpc/boot/gunzip_util.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/arch/powerpc/boot/gunzip_util.c b/arch/powerpc/boot/gunzip_util.c
index e1e215e16983..ef2aed0f63ca 100644
--- a/arch/powerpc/boot/gunzip_util.c
+++ b/arch/powerpc/boot/gunzip_util.c
@@ -194,13 +194,10 @@ int gunzip_finish(struct gunzip_state *state, void *dst, int dstlen)
{
int len;
+ len = gunzip_partial(state, dst, dstlen);
+
if (state->s.workspace) {
- len = gunzip_partial(state, dst, dstlen);
zlib_inflateEnd(&state->s);
- } else {
- /* uncompressed image */
- len = min(state->s.avail_in, (unsigned)dstlen);
- memcpy(dst, state->s.next_in, len);
}
return len;