Author: onealj Date: Wed Sep 21 03:19:31 2016 New Revision: 1761667 URL: http://svn.apache.org/viewvc?rev=1761667&view=rev Log: bug 57200,59788: be more specific why a temporary directory could not be created
Modified: poi/trunk/src/java/org/apache/poi/util/DefaultTempFileCreationStrategy.java Modified: poi/trunk/src/java/org/apache/poi/util/DefaultTempFileCreationStrategy.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/util/DefaultTempFileCreationStrategy.java?rev=1761667&r1=1761666&r2=1761667&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/util/DefaultTempFileCreationStrategy.java (original) +++ poi/trunk/src/java/org/apache/poi/util/DefaultTempFileCreationStrategy.java Wed Sep 21 03:19:31 2016 @@ -83,15 +83,22 @@ public class DefaultTempFileCreationStra } /** - * Attempt to create a directory + * Attempt to create a directory, including any necessary parent directories. + * Does nothing if directory already exists. * - * @param directory - * @throws IOException + * @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 { - if (!(directory.exists() || directory.mkdirs()) || !directory.isDirectory()) { + // create directory if it doesn't exist + final boolean dirExists = (directory.exists() || directory.mkdirs()); + + if (!dirExists) { throw new IOException("Could not create temporary directory '" + directory + "'"); } + else if (!directory.isDirectory()) { + throw new IOException("Could not create temporary directory. '" + directory + "' exists but is not a directory."); + } } @Override --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org For additional commands, e-mail: commits-h...@poi.apache.org