[
https://issues.apache.org/jira/browse/COMPRESS-366?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Stefan Bodewig resolved COMPRESS-366.
-------------------------------------
Resolution: Fixed
fixed with git commit f010260
> TarArchiveEntry: getDirectoryEntries not working
> ------------------------------------------------
>
> Key: COMPRESS-366
> URL: https://issues.apache.org/jira/browse/COMPRESS-366
> Project: Commons Compress
> Issue Type: Bug
> Components: Archivers
> Affects Versions: 1.12
> Environment: Eclipse 4.6, Linux 64 Bit
> Reporter: Casi Colada
> Priority: Minor
> Fix For: 1.13
>
> Original Estimate: 4h
> Remaining Estimate: 4h
>
> TarArchiveEntry.getDirectoryEntries() always returns an empty array. This is
> because entry.getFile() returns null for a directory entry.
> Let folder.tar be a Tar Archive which contains a folder, and that folder
> contains a file. Consider the following snippet:
> ----
> import java.io.FileInputStream;
> import org.apache.commons.compress.archivers.tar.*;
> public class GetDirectoryEntriesBug {
> public static void main(String[] args) throws Exception {
> TarArchiveInputStream tais = new TarArchiveInputStream(new
> FileInputStream("folder.tar"));
> for(TarArchiveEntry entry; (entry = tais.getNextTarEntry()) !=
> null; ) {
> System.out.println("Name: " + entry.getName() + ",
> isDirectory: " + entry.isDirectory() + ", getDirectoryEntries().length: " +
> entry.getDirectoryEntries().length);
> }
> tais.close();
> }
> }
> ----
> Output:
> Name: folder/file, isDirectory: false, getDirectoryEntries().length: 0
> Name: folder/, isDirectory: true, getDirectoryEntries().length: 0
> I expected that, for "folder/", getDirectoryEntries() will not return an
> empty array.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)