diff options
| author | Robert Griesemer <gri@golang.org> | 2013-03-28 08:46:17 -0700 |
|---|---|---|
| committer | Robert Griesemer <gri@golang.org> | 2013-03-28 08:46:17 -0700 |
| commit | 1a427a697e9fce8bd3a12ae233bc6f751a406b9d (patch) | |
| tree | 7f75fd8345b73409d4350ca3e878f6c7868db1b3 | |
| parent | ab962c8da2f970cfb62450bf63d6c9e48eaab201 (diff) | |
| download | go-1a427a697e9fce8bd3a12ae233bc6f751a406b9d.tar.xz | |
cmd/godoc: don't crash if there's no documentation
Fixes regression introduced by CL 7860049.
R=golang-dev, kamil.kisiel, dave
CC=golang-dev
https://golang.org/cl/8069044
| -rw-r--r-- | src/cmd/godoc/main.go | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/cmd/godoc/main.go b/src/cmd/godoc/main.go index ab792c8af0..81e739d20c 100644 --- a/src/cmd/godoc/main.go +++ b/src/cmd/godoc/main.go @@ -388,12 +388,12 @@ func main() { } // determine what to use - if info.IsEmpty() { - if !cinfo.IsEmpty() { + if info == nil || info.IsEmpty() { + if cinfo != nil && !cinfo.IsEmpty() { // only cinfo exists - switch to cinfo info = cinfo } - } else if !cinfo.IsEmpty() { + } else if cinfo != nil && !cinfo.IsEmpty() { // both info and cinfo exist - use cinfo if info // contains only subdirectory information if info.PAst == nil && info.PDoc == nil { @@ -403,9 +403,13 @@ func main() { } } + if info == nil { + log.Fatalf("%s: no such directory or package", flag.Arg(0)) + } if info.Err != nil { log.Fatalf("%v", info.Err) } + if info.PDoc != nil && info.PDoc.ImportPath == target { // Replace virtual /target with actual argument from command line. info.PDoc.ImportPath = flag.Arg(0) |
