Author: tallison
Date: Thu Jan 22 18:29:19 2015
New Revision: 1653994
URL: http://svn.apache.org/r1653994
Log:
TIKA-1526: initial fix for jvm bug that can affect users with a default Locale
of tr running on MACOSX or BSD. We still need to confirm that this fixes the
problem and/or add a unit test.
Modified:
tika/trunk/tika-core/src/main/java/org/apache/tika/parser/external/ExternalParser.java
Modified:
tika/trunk/tika-core/src/main/java/org/apache/tika/parser/external/ExternalParser.java
URL:
http://svn.apache.org/viewvc/tika/trunk/tika-core/src/main/java/org/apache/tika/parser/external/ExternalParser.java?rev=1653994&r1=1653993&r2=1653994&view=diff
==============================================================================
---
tika/trunk/tika-core/src/main/java/org/apache/tika/parser/external/ExternalParser.java
(original)
+++
tika/trunk/tika-core/src/main/java/org/apache/tika/parser/external/ExternalParser.java
Thu Jan 22 18:29:19 2015
@@ -335,6 +335,7 @@ public class ExternalParser extends Abst
public static boolean check(String checkCmd, int... errorValue) {
return check(new String[] {checkCmd}, errorValue);
}
+
public static boolean check(String[] checkCmd, int... errorValue) {
if(errorValue.length == 0) {
errorValue = new int[] { 127 };
@@ -354,6 +355,16 @@ public class ExternalParser extends Abst
} catch (InterruptedException ie) {
// Some problem, command is there or is broken
return false;
- }
+ } catch (Error err) {
+ if (err.getMessage() != null &&
+ (err.getMessage().contains("posix_spawn") ||
+ err.getMessage().contains("UNIXProcess"))) {
+ //"Error forking command due to JVM locale bug
+ //(see TIKA-1526 and SOLR-6387)"
+ return false;
+ }
+ //throw if a different kind of error
+ throw err;
+ }
}
}