From dd806b8be4447f064e93ad9302bc8befde37f952 Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Tue, 9 Jan 2018 14:49:08 -0500 Subject: [PATCH] cmd/go: adjust import config debugging flag Change-Id: I3afaefc154f9ccfac353cedac7aefcfb70afe265 Reviewed-on: https://go-review.googlesource.com/86996 Run-TryBot: Russ Cox TryBot-Result: Gobot Gobot Reviewed-by: Ian Lance Taylor --- src/cmd/go/internal/load/icfg.go | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/src/cmd/go/internal/load/icfg.go b/src/cmd/go/internal/load/icfg.go index 0b346df077..d8dd66426b 100644 --- a/src/cmd/go/internal/load/icfg.go +++ b/src/cmd/go/internal/load/icfg.go @@ -19,7 +19,8 @@ var DebugDeprecatedImportcfg debugDeprecatedImportcfgFlag type debugDeprecatedImportcfgFlag struct { enabled bool - pkgs map[string]*debugDeprecatedImportcfgPkg + Import map[string]string + Pkg map[string]*debugDeprecatedImportcfgPkg } type debugDeprecatedImportcfgPkg struct { @@ -49,8 +50,9 @@ func (f *debugDeprecatedImportcfgFlag) Set(x string) error { } data = data[len(debugDeprecatedImportcfgMagic):] - f.pkgs = nil - if err := json.Unmarshal(data, &f.pkgs); err != nil { + f.Import = nil + f.Pkg = nil + if err := json.Unmarshal(data, &f); err != nil { return errImportcfgSyntax } f.enabled = true @@ -58,18 +60,19 @@ func (f *debugDeprecatedImportcfgFlag) Set(x string) error { } func (f *debugDeprecatedImportcfgFlag) lookup(parent *Package, path string) (dir, newPath string) { - if parent == nil { - if p1 := f.pkgs[path]; p1 != nil { - return p1.Dir, path - } - return "", "" + newPath = path + if p := f.Import[path]; p != "" { + newPath = p } - if p1 := f.pkgs[parent.ImportPath]; p1 != nil { - if newPath := p1.Import[path]; newPath != "" { - if p2 := f.pkgs[newPath]; p2 != nil { - return p2.Dir, newPath + if parent != nil { + if p1 := f.Pkg[parent.ImportPath]; p1 != nil { + if p := p1.Import[path]; p != "" { + newPath = p } } } + if p2 := f.Pkg[newPath]; p2 != nil { + return p2.Dir, newPath + } return "", "" } -- 2.48.1