You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tika.apache.org by ta...@apache.org on 2021/02/11 15:54:37 UTC
[tika] branch main updated: TIKA-3299 strings parser should not
leave behind temp file.
This is an automated email from the ASF dual-hosted git repository.
tallison pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tika.git
The following commit(s) were added to refs/heads/main by this push:
new 1f91329 TIKA-3299 strings parser should not leave behind temp file.
1f91329 is described below
commit 1f91329dad9546f5d13fa8c4c32bc5fb18e7376a
Author: tballison <ta...@apache.org>
AuthorDate: Thu Feb 11 10:54:27 2021 -0500
TIKA-3299 strings parser should not leave behind temp file.
---
.../apache/tika/parser/strings/StringsParser.java | 34 +++++++++++++---------
1 file changed, 20 insertions(+), 14 deletions(-)
diff --git a/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-text-module/src/main/java/org/apache/tika/parser/strings/StringsParser.java b/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-text-module/src/main/java/org/apache/tika/parser/strings/StringsParser.java
index cea6b7c..c0eaf09 100644
--- a/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-text-module/src/main/java/org/apache/tika/parser/strings/StringsParser.java
+++ b/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-text-module/src/main/java/org/apache/tika/parser/strings/StringsParser.java
@@ -30,6 +30,7 @@ import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
import org.apache.tika.exception.TikaException;
+import org.apache.tika.io.TemporaryResources;
import org.apache.tika.io.TikaInputStream;
import org.apache.tika.metadata.Metadata;
import org.apache.tika.mime.MediaType;
@@ -87,27 +88,32 @@ public class StringsParser extends AbstractParser {
return;
}
- TikaInputStream tis = TikaInputStream.get(stream);
- File input = tis.getFile();
+ TemporaryResources tmp = new TemporaryResources();
+ TikaInputStream tis = TikaInputStream.get(stream, tmp);
+ try {
+ File input = tis.getFile();
- // Metadata
- metadata.set("strings:min-len", "" + stringsConfig.getMinLength());
- metadata.set("strings:encoding", stringsConfig.toString());
- metadata.set("strings:file_output", doFile(input, fileConfig));
+ // Metadata
+ metadata.set("strings:min-len", "" + stringsConfig.getMinLength());
+ metadata.set("strings:encoding", stringsConfig.toString());
+ metadata.set("strings:file_output", doFile(input, fileConfig));
- int totalBytes = 0;
+ int totalBytes = 0;
- // Content
- XHTMLContentHandler xhtml = new XHTMLContentHandler(handler, metadata);
+ // Content
+ XHTMLContentHandler xhtml = new XHTMLContentHandler(handler, metadata);
- xhtml.startDocument();
+ xhtml.startDocument();
- totalBytes = doStrings(input, stringsConfig, xhtml);
+ totalBytes = doStrings(input, stringsConfig, xhtml);
- xhtml.endDocument();
+ xhtml.endDocument();
- // Metadata
- metadata.set("strings:length", "" + totalBytes);
+ // Metadata
+ metadata.set("strings:length", "" + totalBytes);
+ } finally {
+ tmp.close();
+ }
}
/**