more robust: allow URLs;
authorwenzelm
Thu, 12 Oct 2017 11:39:54 +0200
changeset 66850 a91b6d80c911
parent 66849 42311fd08899
child 66851 c75769065548
more robust: allow URLs;
src/Pure/PIDE/resources.scala
--- a/src/Pure/PIDE/resources.scala	Thu Oct 12 11:39:06 2017 +0200
+++ b/src/Pure/PIDE/resources.scala	Thu Oct 12 11:39:54 2017 +0200
@@ -126,12 +126,16 @@
     val s1 =
       if (session_base.loaded_theory(name)) name.theory
       else {
-        session_base.known.get_file(name.path.file) match {
-          case Some(name1) if session_resources.theory_qualifier(name1) != qualifier =>
-            name1.theory
-          case Some(name1) if Thy_Header.is_base_name(s) =>
-            name1.theory_base_name
-          case _ => s
+        (try { Some(name.path) } catch { case ERROR(_) => None }) match {
+          case None => s
+          case Some(path) =>
+            session_base.known.get_file(path.file) match {
+              case Some(name1) if session_resources.theory_qualifier(name1) != qualifier =>
+                name1.theory
+              case Some(name1) if Thy_Header.is_base_name(s) =>
+                name1.theory_base_name
+              case _ => s
+            }
         }
       }
     val name2 = import_name(qualifier, dir, s1)