[
https://issues.apache.org/jira/browse/TIKA-2873?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Tim Allison resolved TIKA-2873.
-------------------------------
Resolution: Fixed
Assignee: Tim Allison
Fix Version/s: 1.21
> Some password protected xlsx files no longer open with password
> ---------------------------------------------------------------
>
> Key: TIKA-2873
> URL: https://issues.apache.org/jira/browse/TIKA-2873
> Project: Tika
> Issue Type: Task
> Reporter: Tim Allison
> Assignee: Tim Allison
> Priority: Blocker
> Fix For: 1.21
>
>
> A password protected .xlsx file can no longer be read because there's a bug
> in POI's ChunkedCipherInputStream:
> {noformat}
> @Override
> public int read() throws IOException {
> byte[] b = \{ 0 };
> // FIXME: compare against -1 or 1? (bug 59893)
> return (read(b) == 1) ? -1 : b[0];
> }
> {noformat}
> Reading with a byte[] works fine, but read() individual bytes returns -1 if
> the stream had something in it. Because of some recent changes...we now wrap
> the ChunkedCipherInputStream in a RereadableInputStream...whereas we didn't
> before...this wrapping is now calling {{read()}} at some point where the
> stream used to only be {{read(byte[])}}. We can fix this by wrapping the
> ChunkedCipherInputStream in a TikaInputStream...
> I think this is significant enough to do a respin of 1.21-rc1...what do you
> think?
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)