Author: peter_firmstone
Date: Sun Jul 15 08:56:41 2012
New Revision: 1361661

URL: http://svn.apache.org/viewvc?rev=1361661&view=rev
Log:
Fixing URI / URL issues on windows.

Modified:
    
river/jtsk/trunk/src/com/sun/jini/start/SharedActivationPolicyPermission.java

Modified: 
river/jtsk/trunk/src/com/sun/jini/start/SharedActivationPolicyPermission.java
URL: 
http://svn.apache.org/viewvc/river/jtsk/trunk/src/com/sun/jini/start/SharedActivationPolicyPermission.java?rev=1361661&r1=1361660&r2=1361661&view=diff
==============================================================================
--- 
river/jtsk/trunk/src/com/sun/jini/start/SharedActivationPolicyPermission.java 
(original)
+++ 
river/jtsk/trunk/src/com/sun/jini/start/SharedActivationPolicyPermission.java 
Sun Jul 15 08:56:41 2012
@@ -149,17 +149,26 @@ public final class SharedActivationPolic
         String uncanonicalPath = null;
         try {
             URL url = new URL(policy);
-           uncanonicalPath = 
UriString.escapeIllegalCharacters(url.toExternalForm());
-            uncanonicalPath = new File(new URI(uncanonicalPath)).getPath();
+            uncanonicalPath = url.toExternalForm();
+            if (policy.startsWith("file:") || policy.startsWith("FILE:")){
+                String path = null;
+                try {
+                    path = UriString.escapeIllegalCharacters(uncanonicalPath);
+                    path = new File(new URI(path)).getPath();
+                } catch (URISyntaxException ex) {
+                    path = uncanonicalPath.replace('/', File.separatorChar);
+                }
+                uncanonicalPath = path;
+            } else {
+                uncanonicalPath = uncanonicalPath.replace('/', 
File.separatorChar);
+            }
            if (DEBUG) {
                System.out.println("SharedActivationPolicyPermission::init() - "
                + policy + " => " + uncanonicalPath);
            }
        } catch (MalformedURLException me) {
            uncanonicalPath = policy;
-       } catch (URISyntaxException ex){
-            uncanonicalPath = policy;
-        }
+       }
 
         return new FilePermission(uncanonicalPath, "read");
     }


Reply via email to