This is an automated email from the ASF dual-hosted git repository.
lfcnassif pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tika.git
The following commit(s) were added to refs/heads/master by this push:
new 377e40b TIKA-2892: fix deadlock with ForkParser
377e40b is described below
commit 377e40b03a5ea762c0f898611e64c70779ba3f16
Author: Nassif <[email protected]>
AuthorDate: Tue Nov 19 01:53:34 2019 -0200
TIKA-2892: fix deadlock with ForkParser
---
CHANGES.txt | 2 ++
.../src/main/java/org/apache/tika/fork/InputStreamResource.java | 5 ++++-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/CHANGES.txt b/CHANGES.txt
index 17b401c..77991ef 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -20,6 +20,8 @@ Release 1.23
HEIF / HEIC images (TIKA-2942).
* Add an XLZ Parser (TIKA-2976).
+
+ * Fix deadlock with ForkParser when InputStream throws IOException
(TIKA-2892).
Release 1.22 - 07/29/2019
diff --git
a/tika-core/src/main/java/org/apache/tika/fork/InputStreamResource.java
b/tika-core/src/main/java/org/apache/tika/fork/InputStreamResource.java
index acdf3b0..147b41e 100644
--- a/tika-core/src/main/java/org/apache/tika/fork/InputStreamResource.java
+++ b/tika-core/src/main/java/org/apache/tika/fork/InputStreamResource.java
@@ -37,7 +37,10 @@ class InputStreamResource implements ForkResource {
try {
m = stream.read(buffer);
} catch (IOException e) {
- return e;
+ // returning exception causes deadlock
+ // return e;
+ e.printStackTrace();
+ m = -1;
}
output.writeInt(m);
if (m > 0) {