This is an automated email from the ASF dual-hosted git repository. tilman pushed a commit to branch branch_2x in repository https://gitbox.apache.org/repos/asf/tika.git
commit 8c0b807b89dc5e642f16363dc4595125ded3ca3b Author: Tilman Hausherr <[email protected]> AuthorDate: Tue Feb 20 15:23:17 2024 +0100 TIKA-4199: increase mark buffer size because of commons-compress 1.26.0; replace deprecated --- .../org/apache/tika/parser/iwork/IWorkPackageParser.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/tika-parsers/tika-parsers-standard/tika-parsers-standard-modules/tika-parser-apple-module/src/main/java/org/apache/tika/parser/iwork/IWorkPackageParser.java b/tika-parsers/tika-parsers-standard/tika-parsers-standard-modules/tika-parser-apple-module/src/main/java/org/apache/tika/parser/iwork/IWorkPackageParser.java index 4c120f30e..637348db5 100644 --- a/tika-parsers/tika-parsers-standard/tika-parsers-standard-modules/tika-parser-apple-module/src/main/java/org/apache/tika/parser/iwork/IWorkPackageParser.java +++ b/tika-parsers/tika-parsers-standard/tika-parsers-standard-modules/tika-parser-apple-module/src/main/java/org/apache/tika/parser/iwork/IWorkPackageParser.java @@ -76,23 +76,25 @@ public class IWorkPackageParser extends AbstractParser { IWORKDocumentType.KEYNOTE.getType(), IWORKDocumentType.NUMBERS.getType(), IWORKDocumentType.PAGES.getType()))); + @Override public Set<MediaType> getSupportedTypes(ParseContext context) { return supportedTypes; } + @Override public void parse(InputStream stream, ContentHandler handler, Metadata metadata, ParseContext context) throws IOException, SAXException, TikaException { ZipArchiveInputStream zip = new ZipArchiveInputStream(stream); - ZipArchiveEntry entry = zip.getNextZipEntry(); + ZipArchiveEntry entry = zip.getNextEntry(); while (entry != null) { if (!IWORK_CONTENT_ENTRIES.contains(entry.getName())) { - entry = zip.getNextZipEntry(); + entry = zip.getNextEntry(); continue; } - InputStream entryStream = new BufferedInputStream(zip, 4096); - entryStream.mark(4096); + InputStream entryStream = new BufferedInputStream(zip, 9216); + entryStream.mark(9216); IWORKDocumentType type = IWORKDocumentType.detectType(entryStream); entryStream.reset(); @@ -121,13 +123,13 @@ public class IWorkPackageParser extends AbstractParser { metadata.add(Metadata.CONTENT_TYPE, type.getType().toString()); xhtml.startDocument(); if (contentHandler != null) { - XMLReaderUtils.parseSAX(new CloseShieldInputStream(entryStream), + XMLReaderUtils.parseSAX(CloseShieldInputStream.wrap(entryStream), contentHandler, context); } xhtml.endDocument(); } - entry = zip.getNextZipEntry(); + entry = zip.getNextEntry(); } // Don't close the zip InputStream (TIKA-1117). }
