Tweak the handling of remote url in jgit repo.

This kind of reverted 31148. URI.resolve actually can handle the absolute URL
well, the problem is only the missing "/".

Change-Id: Iee5866c005cbc1430dc20ee7db321b8b51afed30
Signed-off-by: Yuxuan 'fishy' Wang <fishywang@google.com>
This commit is contained in:
Yuxuan 'fishy' Wang 2014-08-13 10:36:56 -07:00
parent 63eb9042a4
commit 38a24bc799
1 changed files with 6 additions and 11 deletions

View File

@ -418,24 +418,19 @@ public void endDocument() throws SAXException {
else
throw new SAXException(RepoText.get().errorNoDefault);
}
final String remoteUrl;
String remoteUrl;
try {
URI uri = new URI(remotes.get(defaultRemote));
if (uri.getHost() != null) {
// This is not relative path, no need for baseUrl.
remoteUrl = uri.toString();
} else {
uri = new URI(baseUrl);
remoteUrl = uri.resolve(
remotes.get(defaultRemote)).toString();
}
URI uri = new URI(baseUrl);
remoteUrl = uri.resolve(remotes.get(defaultRemote)).toString();
if (!remoteUrl.endsWith("/"))
remoteUrl = remoteUrl + "/";
} catch (URISyntaxException e) {
throw new SAXException(e);
}
removeNotInGroup();
removeOverlaps();
for (Project proj : projects) {
command.addSubmodule(remoteUrl + "/" + proj.name,
command.addSubmodule(remoteUrl + proj.name,
proj.path,
proj.revision == null
? defaultRevision : proj.revision,