diff --git a/manifest_xml.py b/manifest_xml.py index 3ac607ec..bc4d8c40 100644 --- a/manifest_xml.py +++ b/manifest_xml.py @@ -102,7 +102,10 @@ class _XmlRemote(object): remoteName = self.name if self.remoteAlias: remoteName = self.remoteAlias - return RemoteSpec(remoteName, url, self.reviewUrl) + return RemoteSpec(remoteName, + url=url, + review=self.reviewUrl, + orig_name=self.name) class XmlManifest(object): """manages the repo configuration file""" @@ -249,9 +252,9 @@ class XmlManifest(object): e.setAttribute('path', relpath) remoteName = None if d.remote: - remoteName = d.remote.remoteAlias or d.remote.name - if not d.remote or p.remote.name != remoteName: - remoteName = p.remote.name + remoteName = d.remote.name + if not d.remote or p.remote.orig_name != remoteName: + remoteName = p.remote.orig_name e.setAttribute('remote', remoteName) if peg_rev: if self.IsMirror: @@ -267,7 +270,7 @@ class XmlManifest(object): # isn't our value e.setAttribute('upstream', p.revisionExpr) else: - revision = self.remotes[remoteName].revision or d.revisionExpr + revision = self.remotes[p.remote.orig_name].revision or d.revisionExpr if not revision or revision != p.revisionExpr: e.setAttribute('revision', p.revisionExpr) if p.upstream and p.upstream != p.revisionExpr: diff --git a/project.py b/project.py index 1e1a10ae..3b8604e3 100644 --- a/project.py +++ b/project.py @@ -315,11 +315,13 @@ class RemoteSpec(object): name, url=None, review=None, - revision=None): + revision=None, + orig_name=None): self.name = name self.url = url self.review = review self.revision = revision + self.orig_name = orig_name class RepoHook(object):