@@ -26,10 +26,22 @@ const maxRemotesForLookup = 5
2626func ResolveRemotesToRepos (remotes Remotes , client * api.Client , base string ) (ResolvedRemotes , error ) {
2727 sort .Stable (remotes )
2828
29- hasBaseOverride := base != ""
30- baseOverride , _ := ghrepo .FromFullName (base )
31- foundBaseOverride := false
29+ result := ResolvedRemotes {
30+ Remotes : remotes ,
31+ apiClient : client ,
32+ }
33+
34+ var baseOverride ghrepo.Interface
35+ if base != "" {
36+ var err error
37+ baseOverride , err = ghrepo .FromFullName (base )
38+ if err != nil {
39+ return result , err
40+ }
41+ result .BaseOverride = baseOverride
42+ }
3243
44+ foundBaseOverride := false
3345 var hostname string
3446 var repos []ghrepo.Interface
3547 for i , r := range remotes {
@@ -47,19 +59,12 @@ func ResolveRemotesToRepos(remotes Remotes, client *api.Client, base string) (Re
4759 break
4860 }
4961 }
50- if hasBaseOverride && ! foundBaseOverride {
62+ if baseOverride != nil && ! foundBaseOverride {
5163 // additionally, look up the explicitly specified base repo if it's not
5264 // already covered by git remotes
5365 repos = append (repos , baseOverride )
5466 }
5567
56- result := ResolvedRemotes {
57- Remotes : remotes ,
58- apiClient : client ,
59- }
60- if hasBaseOverride {
61- result .BaseOverride = baseOverride
62- }
6368 networkResult , err := api .RepoNetwork (client , repos )
6469 if err != nil {
6570 return result , err
0 commit comments