From: Russ Cox Date: Mon, 5 Mar 2012 18:29:13 +0000 (-0500) Subject: godoc: quiet log spam X-Git-Tag: weekly.2012-03-13~234 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=8e5b34e5801e1ace1ba6c012a5d07ce9e568eb53;p=gostls13.git godoc: quiet log spam Fixes #3191. Sorry. R=golang-dev, bradfitz CC=golang-dev https://golang.org/cl/5726059 --- diff --git a/src/cmd/godoc/dirtrees.go b/src/cmd/godoc/dirtrees.go index b5726367ce..b9b529f87a 100644 --- a/src/cmd/godoc/dirtrees.go +++ b/src/cmd/godoc/dirtrees.go @@ -69,13 +69,7 @@ func (b *treeBuilder) newDirTree(fset *token.FileSet, path, name string, depth i } } - list, err := fs.ReadDir(path) - if err != nil { - // newDirTree is called with a path that should be a package - // directory; errors here should not happen, but if they do, - // we want to know about them - log.Printf("ReadDir(%s): %s", path, err) - } + list, _ := fs.ReadDir(path) // determine number of subdirectories and if there are package files ndirs := 0 diff --git a/src/cmd/godoc/filesystem.go b/src/cmd/godoc/filesystem.go index 0f1c6632c8..b1913cdd99 100644 --- a/src/cmd/godoc/filesystem.go +++ b/src/cmd/godoc/filesystem.go @@ -400,6 +400,7 @@ func (ns nameSpace) ReadDir(path string) ([]os.FileInfo, error) { haveName = map[string]bool{} all []os.FileInfo err error + first []os.FileInfo ) for _, m := range ns.resolve(path) { @@ -411,6 +412,14 @@ func (ns nameSpace) ReadDir(path string) ([]os.FileInfo, error) { continue } + if dir == nil { + dir = []os.FileInfo{} + } + + if first == nil { + first = dir + } + // If we don't yet have Go files in 'all' and this directory // has some, add all the files from this directory. // Otherwise, only add subdirectories. @@ -434,6 +443,15 @@ func (ns nameSpace) ReadDir(path string) ([]os.FileInfo, error) { } } + // We didn't find any directories containing Go files. + // If some directory returned successfully, use that. + if len(all) == 0 && first != nil { + for _, d := range first { + haveName[d.Name()] = true + all = append(all, d) + } + } + // Built union. Add any missing directories needed to reach mount points. for old := range ns { if hasPathPrefix(old, path) && old != path { diff --git a/src/cmd/godoc/godoc.go b/src/cmd/godoc/godoc.go index 486b3863e3..b290e31a89 100644 --- a/src/cmd/godoc/godoc.go +++ b/src/cmd/godoc/godoc.go @@ -658,7 +658,6 @@ func serveDirectory(w http.ResponseWriter, r *http.Request, abspath, relpath str list, err := fs.ReadDir(abspath) if err != nil { - log.Printf("ReadDir: %s", err) serveError(w, r, relpath, err) return }