You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tika.apache.org by dm...@apache.org on 2018/11/09 19:23:31 UTC

[tika] 01/03: Revert: Merge pull request #247 from diffblue-assistant/finallyclosetotrywithresources

This is an automated email from the ASF dual-hosted git repository.

dmeikle pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tika.git

commit 10d380ae6c2805b2c4889ce7fe3034a5a8f9fa1a
Author: David Meikle <da...@lingo24.com>
AuthorDate: Fri Nov 9 19:22:36 2018 +0000

    Revert: Merge pull request #247 from diffblue-assistant/finallyclosetotrywithresources
---
 .../src/main/java/org/apache/tika/parser/crypto/Pkcs7Parser.java   | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/tika-parsers/src/main/java/org/apache/tika/parser/crypto/Pkcs7Parser.java b/tika-parsers/src/main/java/org/apache/tika/parser/crypto/Pkcs7Parser.java
index 9897e4b..e84023c 100644
--- a/tika-parsers/src/main/java/org/apache/tika/parser/crypto/Pkcs7Parser.java
+++ b/tika-parsers/src/main/java/org/apache/tika/parser/crypto/Pkcs7Parser.java
@@ -62,8 +62,9 @@ public class Pkcs7Parser extends AbstractParser {
         try {
             DigestCalculatorProvider digestCalculatorProvider =
                     new JcaDigestCalculatorProviderBuilder().setProvider("BC").build();
-            try (CMSSignedDataParser parser = new CMSSignedDataParser(digestCalculatorProvider,
-                    new CloseShieldInputStream(stream))) {
+            CMSSignedDataParser parser =
+                    new CMSSignedDataParser(digestCalculatorProvider, new CloseShieldInputStream(stream));
+            try {
                 CMSTypedStream content = parser.getSignedContent();
                 if (content == null) {
                     throw new TikaException("cannot parse detached pkcs7 signature (no signed data to parse)");
@@ -73,6 +74,8 @@ public class Pkcs7Parser extends AbstractParser {
                             context.get(Parser.class, EmptyParser.INSTANCE);
                     delegate.parse(input, handler, metadata, context);
                 }
+            } finally {
+                parser.close();
             }
         } catch (OperatorCreationException e) {
             throw new TikaException("Unable to create DigestCalculatorProvider", e);