diff options
author | Roberto Tyley <roberto.tyley@guardian.co.uk> | 2011-01-12 14:34:10 +0000 |
---|---|---|
committer | Roberto Tyley <roberto.tyley@guardian.co.uk> | 2011-01-12 14:34:10 +0000 |
commit | 944fcdae66bb4de712e2eadec73d8008d3a9bace (patch) | |
tree | b92a65c2e7d53aa90e849bac0879374fd8f113dc /org.eclipse.jgit | |
parent | be38185a033021da707f934caf96b68070050bd5 (diff) | |
download | jgit-944fcdae66bb4de712e2eadec73d8008d3a9bace.tar.gz jgit-944fcdae66bb4de712e2eadec73d8008d3a9bace.zip |
Fix API ListBranchCommand for listmode 'all'
If remote branches are present they can not be added
to the RefMap from the local branches - the two RefMaps
have a different value of 'prefix' and consequently an
IllegalArgumentException is thrown.
Diffstat (limited to 'org.eclipse.jgit')
-rw-r--r-- | org.eclipse.jgit/src/org/eclipse/jgit/api/ListBranchCommand.java | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/api/ListBranchCommand.java b/org.eclipse.jgit/src/org/eclipse/jgit/api/ListBranchCommand.java index 8329fca569..846c5385c5 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/api/ListBranchCommand.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/api/ListBranchCommand.java @@ -49,6 +49,7 @@ import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.Map; +import java.util.HashMap; import org.eclipse.jgit.api.errors.JGitInternalException; import org.eclipse.jgit.lib.Constants; @@ -100,7 +101,8 @@ public class ListBranchCommand extends GitCommand<List<Ref>> { } else if (listMode == ListMode.REMOTE) { refList = repo.getRefDatabase().getRefs(Constants.R_REMOTES); } else { - refList = repo.getRefDatabase().getRefs(Constants.R_HEADS); + refList = new HashMap<String,Ref>(repo.getRefDatabase().getRefs( + Constants.R_HEADS)); refList.putAll(repo.getRefDatabase().getRefs( Constants.R_REMOTES)); } |