summaryrefslogtreecommitdiff
path: root/src/cmd/godoc/parser.go
diff options
context:
space:
mode:
authorRobert Griesemer <gri@golang.org>2011-08-24 09:52:16 -0700
committerRobert Griesemer <gri@golang.org>2011-08-24 09:52:16 -0700
commit4eb07f8de13546dbdccef79045fe5ae0d85bdf74 (patch)
tree7ad30b3f4758388177a93e45f53ec2fe6e6c78db /src/cmd/godoc/parser.go
parentec9c202ae8f3890ba434f0032f6527250a45fe17 (diff)
downloadgo-4eb07f8de13546dbdccef79045fe5ae0d85bdf74.tar.gz
godoc: use virtual file system when generating package synopses
Fix for godoc on app engine. R=dsymonds CC=golang-dev http://codereview.appspot.com/4922050
Diffstat (limited to 'src/cmd/godoc/parser.go')
-rw-r--r--src/cmd/godoc/parser.go18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/cmd/godoc/parser.go b/src/cmd/godoc/parser.go
index da4b3853c..cc1780a4b 100644
--- a/src/cmd/godoc/parser.go
+++ b/src/cmd/godoc/parser.go
@@ -17,18 +17,18 @@ import (
"path/filepath"
)
+func parseFile(fset *token.FileSet, filename string, mode uint) (*ast.File, os.Error) {
+ src, err := fs.ReadFile(filename)
+ if err != nil {
+ return nil, err
+ }
+ return parser.ParseFile(fset, filename, src, mode)
+}
+
func parseFiles(fset *token.FileSet, filenames []string) (pkgs map[string]*ast.Package, first os.Error) {
pkgs = make(map[string]*ast.Package)
for _, filename := range filenames {
- src, err := fs.ReadFile(filename)
- if err != nil {
- if first == nil {
- first = err
- }
- continue
- }
-
- file, err := parser.ParseFile(fset, filename, src, parser.ParseComments)
+ file, err := parseFile(fset, filename, parser.ParseComments)
if err != nil {
if first == nil {
first = err