From 1fea4e6c4301b2b69d6e2fa72c3c62ffdc8cfb78 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Thu, 9 Mar 2006 20:21:58 +0000 Subject: re PR libgcj/24461 (array access in either GZIPInputStream, Inflater, natInflate.cc, or zlib) PR libgcj/24461: * java/util/zip/InflaterInputStream.java (fill): Throw exception if stream is truncated. From-SVN: r111870 --- libjava/java/util/zip/InflaterInputStream.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'libjava/java') diff --git a/libjava/java/util/zip/InflaterInputStream.java b/libjava/java/util/zip/InflaterInputStream.java index 69b3ecd..11b06d2 100644 --- a/libjava/java/util/zip/InflaterInputStream.java +++ b/libjava/java/util/zip/InflaterInputStream.java @@ -1,5 +1,5 @@ /* InflaterInputStream.java - Input stream filter for decompressing - Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 + Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -153,8 +153,10 @@ public class InflaterInputStream extends FilterInputStream len = in.read(buf, 0, buf.length); - if (len >= 0) - inf.setInput(buf, 0, len); + if (len < 0) + throw new ZipException("Deflated stream ends early."); + + inf.setInput(buf, 0, len); } /** -- cgit v1.1