aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPJ Fanning <fanningpj@apache.org>2018-03-13 15:12:00 +0000
committerPJ Fanning <fanningpj@apache.org>2018-03-13 15:12:00 +0000
commit61bd8bf911801998ce97f132ecd38d819b52d6c6 (patch)
tree426d75b3f4498d4ff3cb868c25bd21fdb7043166
parent307ae092be458dbcd1dc3ed638926f713cd91a5a (diff)
downloadpoi-61bd8bf911801998ce97f132ecd38d819b52d6c6.tar.gz
poi-61bd8bf911801998ce97f132ecd38d819b52d6c6.zip
[bug-62176] synchronize temp dir creation
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1826655 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--gradle/wrapper/gradle-wrapper.jarbin54212 -> 54212 bytes
-rw-r--r--src/java/org/apache/poi/util/DefaultTempFileCreationStrategy.java5
2 files changed, 3 insertions, 2 deletions
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
index feef4e7578..4da30c3072 100644
--- a/gradle/wrapper/gradle-wrapper.jar
+++ b/gradle/wrapper/gradle-wrapper.jar
Binary files differ
diff --git a/src/java/org/apache/poi/util/DefaultTempFileCreationStrategy.java b/src/java/org/apache/poi/util/DefaultTempFileCreationStrategy.java
index 6f44752873..f14871daf8 100644
--- a/src/java/org/apache/poi/util/DefaultTempFileCreationStrategy.java
+++ b/src/java/org/apache/poi/util/DefaultTempFileCreationStrategy.java
@@ -85,11 +85,12 @@ public class DefaultTempFileCreationStrategy implements TempFileCreationStrategy
/**
* Attempt to create a directory, including any necessary parent directories.
* Does nothing if directory already exists.
+ * The method is synchronized to ensure that multiple threads don't try to create the directory at the same time.
*
* @param directory the directory to create
* @throws IOException if unable to create temporary directory or it is not a directory
*/
- private void createTempDirectory(File directory) throws IOException {
+ private synchronized void createTempDirectory(File directory) throws IOException {
// create directory if it doesn't exist
final boolean dirExists = (directory.exists() || directory.mkdirs());
@@ -138,4 +139,4 @@ public class DefaultTempFileCreationStrategy implements TempFileCreationStrategy
// All done
return newDirectory;
}
-} \ No newline at end of file
+}