[Mulgara-svn] r1437 - in trunk/src/jar: server/java/org/mulgara/server util/java/org/mulgara/util
ronald at mulgara.org
ronald at mulgara.org
Mon Jan 19 11:27:55 UTC 2009
Author: ronald
Date: 2009-01-19 03:27:54 -0800 (Mon, 19 Jan 2009)
New Revision: 1437
Modified:
trunk/src/jar/server/java/org/mulgara/server/EmbeddedMulgaraServer.java
trunk/src/jar/util/java/org/mulgara/util/TempDir.java
Log:
Avoid a deadlock (hang) during shutdown if the tempDir went away.
Modified: trunk/src/jar/server/java/org/mulgara/server/EmbeddedMulgaraServer.java
===================================================================
--- trunk/src/jar/server/java/org/mulgara/server/EmbeddedMulgaraServer.java 2009-01-19 11:27:48 UTC (rev 1436)
+++ trunk/src/jar/server/java/org/mulgara/server/EmbeddedMulgaraServer.java 2009-01-19 11:27:54 UTC (rev 1437)
@@ -800,7 +800,7 @@
*
*/
private static void cleanUpTemporaryFiles() {
- File tempDirectory = TempDir.getTempDir();
+ File tempDirectory = TempDir.getTempDir(false);
// Add a filter to ensure we only delete the correct files
File[] list = tempDirectory.listFiles(new TemporaryFileNameFilter());
Modified: trunk/src/jar/util/java/org/mulgara/util/TempDir.java
===================================================================
--- trunk/src/jar/util/java/org/mulgara/util/TempDir.java 2009-01-19 11:27:48 UTC (rev 1436)
+++ trunk/src/jar/util/java/org/mulgara/util/TempDir.java 2009-01-19 11:27:54 UTC (rev 1437)
@@ -54,8 +54,11 @@
private static File tempDir = null;
+ public static File getTempDir() {
+ return getTempDir(true);
+ }
- public static synchronized File getTempDir() {
+ public static synchronized File getTempDir(boolean failIfNotDir) {
if (tempDir == null) {
// Initialize tempDir.
File dir = new File(systemTempDir, "mulgara_" + System.getProperty("user.name"));
@@ -68,7 +71,7 @@
}
}
- if (!tempDir.isDirectory()) {
+ if (!tempDir.isDirectory() && failIfNotDir) {
// The temporary directory has gone away! This is a fatal error because,
// for security reasons, we don't want to just revert to using the system
// temporary directory.
More information about the Mulgara-svn
mailing list