diff options
Diffstat (limited to 'manifest_xml.py')
| -rw-r--r-- | manifest_xml.py | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/manifest_xml.py b/manifest_xml.py index ab4be2f5..be74bf49 100644 --- a/manifest_xml.py +++ b/manifest_xml.py | |||
| @@ -918,19 +918,19 @@ https://gerrit.googlesource.com/git-repo/+/HEAD/docs/manifest-format.md | |||
| 918 | if node.nodeName == 'remove-project': | 918 | if node.nodeName == 'remove-project': |
| 919 | name = self._reqatt(node, 'name') | 919 | name = self._reqatt(node, 'name') |
| 920 | 920 | ||
| 921 | if name not in self._projects: | 921 | if name in self._projects: |
| 922 | for p in self._projects[name]: | ||
| 923 | del self._paths[p.relpath] | ||
| 924 | del self._projects[name] | ||
| 925 | |||
| 926 | # If the manifest removes the hooks project, treat it as if it deleted | ||
| 927 | # the repo-hooks element too. | ||
| 928 | if self._repo_hooks_project and (self._repo_hooks_project.name == name): | ||
| 929 | self._repo_hooks_project = None | ||
| 930 | elif not XmlBool(node, 'optional', False): | ||
| 922 | raise ManifestParseError('remove-project element specifies non-existent ' | 931 | raise ManifestParseError('remove-project element specifies non-existent ' |
| 923 | 'project: %s' % name) | 932 | 'project: %s' % name) |
| 924 | 933 | ||
| 925 | for p in self._projects[name]: | ||
| 926 | del self._paths[p.relpath] | ||
| 927 | del self._projects[name] | ||
| 928 | |||
| 929 | # If the manifest removes the hooks project, treat it as if it deleted | ||
| 930 | # the repo-hooks element too. | ||
| 931 | if self._repo_hooks_project and (self._repo_hooks_project.name == name): | ||
| 932 | self._repo_hooks_project = None | ||
| 933 | |||
| 934 | def _AddMetaProjectMirror(self, m): | 934 | def _AddMetaProjectMirror(self, m): |
| 935 | name = None | 935 | name = None |
| 936 | m_url = m.GetRemote(m.remote.name).url | 936 | m_url = m.GetRemote(m.remote.name).url |
