commit | 940be590825738cd3475d6946728014a160e9153 | [log] [tgz] |
---|---|---|
author | Han-Wen Nienhuys <hanwen@google.com> | Thu Mar 09 19:46:29 2017 +0100 |
committer | Han-Wen Nienhuys <hanwen@google.com> | Mon Mar 13 13:32:16 2017 +0000 |
tree | 9d25fd52f9d8b95a823a9ab0db5b63d720964cd4 | |
parent | f795c71bb806b6ae5d1f22df322bbdc45a0b8776 [diff] |
Always use shortened name as cache key. Not doing so causes resource leaks, because it may overwrite cache values which are then never properly closed. No test, as this error condition doesn't occur with the standard open-source Gerrit, and open-source Gerrit has no tracing of leaked resources. Change-Id: If5bd23c28a6190b29da7d46fac619802f93480fe
diff --git a/src/main/java/com/googlesource/gerrit/plugins/supermanifest/SuperManifestRefUpdatedListener.java b/src/main/java/com/googlesource/gerrit/plugins/supermanifest/SuperManifestRefUpdatedListener.java index bb8fde4..019cdb8 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/supermanifest/SuperManifestRefUpdatedListener.java +++ b/src/main/java/com/googlesource/gerrit/plugins/supermanifest/SuperManifestRefUpdatedListener.java
@@ -464,12 +464,11 @@ } private Repository openRepository(String name) throws IOException { + name = urlToRepoKey(canonicalWebUrl, name); if (repos.containsKey(name)) { return repos.get(name); } - name = urlToRepoKey(canonicalWebUrl, name); - Repository repo = repoManager.openRepository(new Project.NameKey(name)); repos.put(name, repo); return repo;