changeset 578:0c3f951630fe

8015243: SchemaFactory does not catch enum. value that is not in the value space of the base type, anyURI Reviewed-by: lancea
author joehw
date Thu, 17 Oct 2013 11:22:39 -0700
parents 6f220761f643
children 951c1f7fdb10 31c82bc71ae3
files src/com/sun/org/apache/xerces/internal/util/URI.java
diffstat 1 files changed, 6 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/com/sun/org/apache/xerces/internal/util/URI.java	Tue Oct 15 14:16:49 2013 +0100
+++ b/src/com/sun/org/apache/xerces/internal/util/URI.java	Thu Oct 17 11:22:39 2013 -0700
@@ -689,9 +689,13 @@
         if (!initializeAuthority(uriSpec.substring(startPos, index))) {
           index = startPos - 2;
         }
-      }
-      else {
+      } else if (index < uriSpecLen) {
+        //Same as java.net.URI:
+        // DEVIATION: Allow empty authority prior to non-empty
+        // path, query component or fragment identifier
         m_host = "";
+      } else {
+        throw new MalformedURIException("Expected authority.");
       }
     }