aboutsummaryrefslogtreecommitdiffstats
path: root/netx/net/sourceforge/jnlp/util/FileUtils.java
diff options
context:
space:
mode:
authorJiri Vanek <jvanek@redhat.com>2013-04-12 13:31:49 +0200
committerJiri Vanek <jvanek@redhat.com>2013-04-12 13:31:49 +0200
commit2f1248e599ff30dc01d6d1d7361fc0f4331a1b68 (patch)
tree84e64629330eda098b217309ccc2af14b30a16db /netx/net/sourceforge/jnlp/util/FileUtils.java
parentd72aa240b794c81d4ec9aea24158564e696173a9 (diff)
Added dialogue to allow setting of custom JRE
Diffstat (limited to 'netx/net/sourceforge/jnlp/util/FileUtils.java')
-rw-r--r--netx/net/sourceforge/jnlp/util/FileUtils.java37
1 files changed, 36 insertions, 1 deletions
diff --git a/netx/net/sourceforge/jnlp/util/FileUtils.java b/netx/net/sourceforge/jnlp/util/FileUtils.java
index 80a303a..804983d 100644
--- a/netx/net/sourceforge/jnlp/util/FileUtils.java
+++ b/netx/net/sourceforge/jnlp/util/FileUtils.java
@@ -176,6 +176,39 @@ public final class FileUtils {
}
}
+ if (JNLPRuntime.isWindows()) {
+ // remove all permissions
+ if (!tempFile.setExecutable(false, false)) {
+ System.err.println(R("RRemoveXPermFailed", tempFile));
+ }
+ if (!tempFile.setReadable(false, false)) {
+ System.err.println(R("RRemoveRPermFailed", tempFile));
+ }
+ if (!tempFile.setWritable(false, false)) {
+ System.err.println(R("RRemoveWPermFailed", tempFile));
+ }
+
+ // allow owner to read
+ if (!tempFile.setReadable(true, true)) {
+ System.err.println(R("RGetRPermFailed", tempFile));
+ }
+
+ // allow owner to write
+ if (writableByOwner && !tempFile.setWritable(true, true)) {
+ System.err.println(R("RGetWPermFailed", tempFile));
+ }
+
+ // allow owner to enter directories
+ if (isDir && !tempFile.setExecutable(true, true)) {
+ System.err.println(R("RGetXPermFailed", tempFile));
+ }
+ // rename this file. Unless the file is moved/renamed, any program that
+ // opened the file right after it was created might still be able to
+ // read the data.
+ if (!tempFile.renameTo(file)) {
+ System.err.println(R("RCantRename", tempFile, file));
+ }
+ } else {
// remove all permissions
if (!tempFile.setExecutable(false, false)) {
throw new IOException(R("RRemoveXPermFailed", tempFile));
@@ -201,13 +234,15 @@ public final class FileUtils {
if (isDir && !tempFile.setExecutable(true, true)) {
throw new IOException(R("RGetXPermFailed", tempFile));
}
-
+
// rename this file. Unless the file is moved/renamed, any program that
// opened the file right after it was created might still be able to
// read the data.
if (!tempFile.renameTo(file)) {
throw new IOException(R("RCantRename", tempFile, file));
}
+ }
+
}