Description
Issue originally reported at http://java.net/jira/browse/TRUEZIP-219
- Download http://sourceforge.net/projects/boost/files/boost/1.48.0/boost_1_48_0.tar.gz?use_mirror=autoselect
- I invoke Files.newDirectoryStream() on a TPath pointing to the resulting .tar.gz file
- The following exception is thrown:
java.lang.IllegalArgumentException: Invalid byte -1 at offset 7 in '<some bytes>' len=8 at org.apache.commons.compress.archivers.tar.TarUtils.parseOctal(TarUtils.java:86) at org.apache.commons.compress.archivers.tar.TarArchiveEntry.parseTarHeader(TarArchiveEntry.java:790) at org.apache.commons.compress.archivers.tar.TarArchiveEntry.<init>(TarArchiveEntry.java:308) at org.apache.commons.compress.archivers.tar.TarArchiveInputStream.getNextTarEntry(TarArchiveInputStream.java:198) at org.apache.commons.compress.archivers.tar.TarArchiveInputStream.getNextEntry(TarArchiveInputStream.java:380) at de.schlichtherle.truezip.fs.archive.tar.TarInputShop.<init>(TarInputShop.java:91) at de.schlichtherle.truezip.fs.archive.tar.TarDriver.newTarInputShop(TarDriver.java:159) at de.schlichtherle.truezip.fs.archive.tar.TarGZipDriver.newTarInputShop(TarGZipDriver.java:82) at de.schlichtherle.truezip.fs.archive.tar.TarDriver.newInputShop(TarDriver.java:151) at de.schlichtherle.truezip.fs.archive.tar.TarDriver.newInputShop(TarDriver.java:47) at de.schlichtherle.truezip.fs.archive.FsDefaultArchiveController.mount(FsDefaultArchiveController.java:170) at de.schlichtherle.truezip.fs.archive.FsFileSystemArchiveController$ResetFileSystem.autoMount(FsFileSystemArchiveController.java:98) at de.schlichtherle.truezip.fs.archive.FsFileSystemArchiveController.autoMount(FsFileSystemArchiveController.java:47) at de.schlichtherle.truezip.fs.archive.FsArchiveController.autoMount(FsArchiveController.java:129) at de.schlichtherle.truezip.fs.archive.FsArchiveController.getEntry(FsArchiveController.java:160) at de.schlichtherle.truezip.fs.archive.FsContextController.getEntry(FsContextController.java:117) at de.schlichtherle.truezip.fs.FsDecoratingController.getEntry(FsDecoratingController.java:76) at de.schlichtherle.truezip.fs.FsDecoratingController.getEntry(FsDecoratingController.java:76) at de.schlichtherle.truezip.fs.FsConcurrentController.getEntry(FsConcurrentController.java:164) at de.schlichtherle.truezip.fs.FsSyncController.getEntry(FsSyncController.java:108) at de.schlichtherle.truezip.fs.FsFederatingController.getEntry(FsFederatingController.java:156) at de.schlichtherle.truezip.nio.file.TFileSystem.newDirectoryStream(TFileSystem.java:348) at de.schlichtherle.truezip.nio.file.TPath.newDirectoryStream(TPath.java:963) at de.schlichtherle.truezip.nio.file.TFileSystemProvider.newDirectoryStream(TFileSystemProvider.java:344) at java.nio.file.Files.newDirectoryStream(Files.java:400) at com.googlecode.boostmavenproject.GetSourcesMojo.convertToJar(GetSourcesMojo.java:248) at com.googlecode.boostmavenproject.GetSourcesMojo.download(GetSourcesMojo.java:221) at com.googlecode.boostmavenproject.GetSourcesMojo.execute(GetSourcesMojo.java:111) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) ... 20 more
Christian Schlichtherle (the TrueZip author) is expecting the Commons Compress to throw IOException instead of IllegalArgumentException. I am expecting no exception to be thrown because as far as I can tell the TAR file is valid (opens up in WinRar and Ubuntu's built-in Archiver).
Attachments
Issue Links
- duplicates
-
COMPRESS-175 GNU Tar sometimes uses binary encoding for UID and GID
- Resolved
- is related to
-
COMPRESS-16 unable to extract a TAR file that contains an entry which is 10 GB in size
- Resolved