diff options
author | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-09-23 23:40:33 +0000 |
---|---|---|
committer | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-09-23 23:40:33 +0000 |
commit | f96e92d9c6feb507d051e500b21ee88275a027b3 (patch) | |
tree | 541e6d79f69901b6c7292109afe7bbf4731e4333 /fastjar | |
parent | 24e179d2815df23db744e4393308e9afb83bd932 (diff) | |
download | gcc-f96e92d9c6feb507d051e500b21ee88275a027b3.tar.gz |
* jartool.c (extract_jar): Unconditionally read extra data in the
entry header; don't read it after the file contents.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@87990 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'fastjar')
-rw-r--r-- | fastjar/ChangeLog | 5 | ||||
-rw-r--r-- | fastjar/jartool.c | 6 |
2 files changed, 8 insertions, 3 deletions
diff --git a/fastjar/ChangeLog b/fastjar/ChangeLog index 56538111880..609b3390573 100644 --- a/fastjar/ChangeLog +++ b/fastjar/ChangeLog @@ -1,3 +1,8 @@ +2004-09-23 Tom Tromey <tromey@redhat.com> + + * jartool.c (extract_jar): Unconditionally read extra data in the + entry header; don't read it after the file contents. + 2004-08-11 Kelley Cook <kcook@gcc.gnu.org> PR bootstrap/16164 diff --git a/fastjar/jartool.c b/fastjar/jartool.c index f43af14a62d..9431bb5e0a2 100644 --- a/fastjar/jartool.c +++ b/fastjar/jartool.c @@ -1805,8 +1805,10 @@ int extract_jar(int fd, char **files, int file_num){ exit(1); } + if (eflen > 0) + consume(&pbf, eflen); + if(method == 8 || flags & 0x0008){ - consume(&pbf, eflen); inflate_file(&pbf, f_fd, &ze); } else { @@ -1839,8 +1841,6 @@ int extract_jar(int fd, char **files, int file_num){ printf("%d bytes written\n", out_a); #endif } - - consume(&pbf, eflen); } /* if there is a data descriptor left, compare the CRC */ |