Merge branch 'master' into subtree
authorNiki Roo <niki@nikiroo.be>
Thu, 2 Apr 2020 10:03:23 +0000 (12:03 +0200)
committerNiki Roo <niki@nikiroo.be>
Thu, 2 Apr 2020 10:03:23 +0000 (12:03 +0200)
Main.java
supported/Text.java

index 0974392df9826a90b4a3dd3a6520ca52d5a1bd67..2ed276b1ea335dce6be6ed116b8e7973edd9f0ec 100644 (file)
--- a/Main.java
+++ b/Main.java
@@ -788,7 +788,7 @@ public class Main {
                try {
                        URL source = BasicReader.getUrl(urlString);
                        sourceName = source.toString();
-                       if (source.toString().startsWith("file://")) {
+                       if (sourceName.startsWith("file://")) {
                                sourceName = sourceName.substring("file://".length());
                        }
 
index daa108fc2c6a31fa322ae7b037b079a0206923a5..8af4a4084b2a2c91ca3bc0aea7f726c7781bc821 100644 (file)
@@ -288,6 +288,8 @@ class Text extends BasicSupport {
        /**
         * Check if we supports this {@link URL}, that is, if the info file can be
         * found OR not found.
+        * <p>
+        * It must also be a file, not another kind of URL.
         * 
         * @param url
         *            the {@link URL} to check
@@ -297,21 +299,23 @@ class Text extends BasicSupport {
         * @return TRUE if it is supported
         */
        protected boolean supports(URL url, boolean info) {
-               boolean infoPresent = false;
-               if ("file".equals(url.getProtocol())) {
-                       File file;
-                       try {
-                               file = new File(url.toURI());
-                               file = assureNoTxt(file);
-                               file = new File(file.getPath() + ".info");
-                       } catch (URISyntaxException e) {
-                               Instance.getTraceHandler().error(e);
-                               file = null;
-                       }
+               if (!"file".equals(url.getProtocol())) {
+                       return false;
+               }
 
-                       infoPresent = (file != null && file.exists());
+               boolean infoPresent = false;
+               File file;
+               try {
+                       file = new File(url.toURI());
+                       file = assureNoTxt(file);
+                       file = new File(file.getPath() + ".info");
+               } catch (URISyntaxException e) {
+                       Instance.getTraceHandler().error(e);
+                       file = null;
                }
 
+               infoPresent = (file != null && file.exists());
+
                return infoPresent == info;
        }