From 68eb3ccdec3712b9da01b812a3baa1f1e7f07ff3 Mon Sep 17 00:00:00 2001 From: Baokun Lee Date: Wed, 23 Jan 2019 00:22:53 +0800 Subject: cmd/api: fix no go files package panic Fixes #29837 Change-Id: I7d57c24d2133932c076df6f41dd6589f777b65dd Reviewed-on: https://go-review.googlesource.com/c/158877 Run-TryBot: Baokun Lee TryBot-Result: Gobot Gobot Reviewed-by: Brad Fitzpatrick --- src/cmd/api/goapi.go | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src/cmd/api/goapi.go') diff --git a/src/cmd/api/goapi.go b/src/cmd/api/goapi.go index 02dfa7c841..60359229de 100644 --- a/src/cmd/api/goapi.go +++ b/src/cmd/api/goapi.go @@ -169,7 +169,13 @@ func main() { // w.Import(name) will return nil continue } - pkg, _ := w.Import(name) + pkg, err := w.Import(name) + if _, nogo := err.(*build.NoGoError); nogo { + continue + } + if err != nil { + log.Fatalf("Import(%q): %v", name, err) + } w.export(pkg) } } @@ -470,7 +476,7 @@ func (w *Walker) Import(name string) (*types.Package, error) { info, err := context.ImportDir(dir, 0) if err != nil { if _, nogo := err.(*build.NoGoError); nogo { - return nil, nil + return nil, err } log.Fatalf("pkg %q, dir %q: ScanDir: %v", name, dir, err) } -- cgit v1.3-5-g9baa