You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Stefan Bodewig (JIRA)" <ji...@apache.org> on 2010/02/18 15:31:27 UTC
[jira] Issue Comment Edited: (COMPRESS-85) cpio archive final entry
corrupt
[ https://issues.apache.org/jira/browse/COMPRESS-85?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12835214#action_12835214 ]
Stefan Bodewig edited comment on COMPRESS-85 at 2/18/10 2:30 PM:
-----------------------------------------------------------------
both archives use the "new ascii" format, so it looks as if -c didn't work.
If I use my GNU cpio 2.9 and "cpio -cvt < archive?.cpio" I now get the "premature end of file".
The alternative to -c is "-H odc" - does that work to list/extract archive.cpio?
was (Author: bodewig):
both archives use the "new ascii" format, so it looks as if -c didn't work.
If I use my GNU cpio 2.9 and "cpio -cvt < archive?.cpio" I now get the "premature end of file".
The alternative to -c is "-H odt" - does that work to list/extract archive.cpio?
> cpio archive final entry corrupt
> --------------------------------
>
> Key: COMPRESS-85
> URL: https://issues.apache.org/jira/browse/COMPRESS-85
> Project: Commons Compress
> Issue Type: Bug
> Affects Versions: 1.0
> Environment: Java 1.4.2 run on AIX and Linux
> Reporter: Bill Maier
> Attachments: archive.cpio, archive2.cpio, archive3.cpio, archive4.cpio, cpio.tar, Creator.java
>
>
> The code below is called with an array of 4 file names. The cpio archive archive.cpio is created with no error messages, but when I then run the Unix command "cpio -ivct <archive.cpio" it reports the error "Can't read input" on the last file in the archive. If I run "cpio -ivcBmu <archive.cpio" the last file is incomplete, but the other files are extracted correctly. Same result in AIX and Linux.
> {{
> private void createArchive(String[] outFiles)
> throws FileNotFoundException, IOException, ArchiveException {
> short format = CpioArchiveOutputStream.FORMAT_OLD_ASCII;
> final OutputStream out = new FileOutputStream("archive.cpio");
> ArchiveOutputStream os = new CpioArchiveOutputStream(out, format);
> for (int j = 0; j < outFiles.length; j++) {
> System.out.println("Entry = " + outFiles[j]);
> File f = new File(outFiles[j]);
> CpioArchiveEntry entry = new CpioArchiveEntry(format);
> entry.setName(outFiles[j]);
> entry.setSize(f.length());
> os.putArchiveEntry(entry);
> IOUtils.copy(new FileInputStream(outFiles[j]), os);
> os.closeArchiveEntry();
> }
> os.finish();
> os.close();
> }
> }}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.