diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/transport/URIish.java b/org.eclipse.jgit/src/org/eclipse/jgit/transport/URIish.java index 8fe7b2aa5..8534724cb 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/transport/URIish.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/transport/URIish.java @@ -202,43 +202,42 @@ public class URIish implements Serializable { if (matcher.matches()) { scheme = matcher.group(1); path = cleanLeadingSlashes(matcher.group(2), scheme); - } else { - matcher = FULL_URI.matcher(s); - if (matcher.matches()) { - scheme = matcher.group(1); - user = matcher.group(2); - pass = matcher.group(3); - host = matcher.group(4); - if (matcher.group(5) != null) - port = Integer.parseInt(matcher.group(5)); - path = cleanLeadingSlashes( - n2e(matcher.group(6)) + n2e(matcher.group(7)), - scheme); - } else { - matcher = RELATIVE_SCP_URI.matcher(s); - if (matcher.matches()) { - user = matcher.group(1); - pass = matcher.group(2); - host = matcher.group(3); - path = matcher.group(4); - } else { - matcher = ABSOLUTE_SCP_URI.matcher(s); - if (matcher.matches()) { - user = matcher.group(1); - pass = matcher.group(2); - host = matcher.group(3); - path = matcher.group(4); - } else { - matcher = LOCAL_FILE.matcher(s); - if (matcher.matches()) { - path = matcher.group(1); - } else - throw new URISyntaxException(s, - JGitText.get().cannotParseGitURIish); - } - } - } + return; + } + matcher = FULL_URI.matcher(s); + if (matcher.matches()) { + scheme = matcher.group(1); + user = matcher.group(2); + pass = matcher.group(3); + host = matcher.group(4); + if (matcher.group(5) != null) + port = Integer.parseInt(matcher.group(5)); + path = cleanLeadingSlashes( + n2e(matcher.group(6)) + n2e(matcher.group(7)), scheme); + return; + } + matcher = RELATIVE_SCP_URI.matcher(s); + if (matcher.matches()) { + user = matcher.group(1); + pass = matcher.group(2); + host = matcher.group(3); + path = matcher.group(4); + return; + } + matcher = ABSOLUTE_SCP_URI.matcher(s); + if (matcher.matches()) { + user = matcher.group(1); + pass = matcher.group(2); + host = matcher.group(3); + path = matcher.group(4); + return; + } + matcher = LOCAL_FILE.matcher(s); + if (matcher.matches()) { + path = matcher.group(1); + return; } + throw new URISyntaxException(s, JGitText.get().cannotParseGitURIish); } private String n2e(String s) {