Bug 445149 - Check the authority section when converting a URI to a UNC
path

Change-Id: If0ee8b57bd938d6a7e8aa755668e3c742c2f8ab2
Signed-off-by: Greg Watson <g.watson@computer.org>
diff --git a/core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/UNCPathConverter.java b/core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/UNCPathConverter.java
index 783a82a..d638f8f 100644
--- a/core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/UNCPathConverter.java
+++ b/core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/UNCPathConverter.java
@@ -65,14 +65,19 @@
 	 */
 	public static IPath toPath(URI uri) {
 		IPath localPath = URIUtil.toPath(uri);
-		String host = uri.getHost();
-		// try local path first
-		// that'll give EFS a chance to resolve a custom protocol path.
-		if (host != null && localPath == null) { 
-			return new Path(host + uri.getPath()).makeUNC(true);
-		} else {
+		if (localPath != null) {
 			return localPath;
-		}	
+		}
+		// see if the uri has an authority part
+		String part = uri.getAuthority();
+		if (part == null) {
+			// see if the uri has a host part
+			part = uri.getHost();
+			if (part == null) {
+				return localPath;
+			}
+		}
+		return new Path(part).makeUNC(true).append(uri.getPath());
 	}
 
 	/**