@@ -58,7 +58,7 @@ const (
5858// entries == ctx.Repo.Commit.SubTree(ctx.Repo.TreePath).ListEntries()
5959//
6060// FIXME: There has to be a more efficient way of doing this
61- func findReadmeFileInEntries (ctx * context.Context , entries []* git.TreeEntry ) (string , * git.TreeEntry , error ) {
61+ func findReadmeFileInEntries (ctx * context.Context , entries []* git.TreeEntry , recurse bool ) (string , * git.TreeEntry , error ) {
6262 // Create a list of extensions in priority order
6363 // 1. Markdown files - with and without localisation - e.g. README.en-us.md or README.md
6464 // 2. Txt files - e.g. README.txt
@@ -115,7 +115,7 @@ func findReadmeFileInEntries(ctx *context.Context, entries []*git.TreeEntry) (st
115115 }
116116 }
117117
118- if ctx .Repo .TreePath == "" && readmeFile == nil {
118+ if ctx .Repo .TreePath == "" && recurse && readmeFile == nil {
119119 for _ , subTreeEntry := range docsEntries {
120120 if subTreeEntry == nil {
121121 continue
@@ -131,7 +131,7 @@ func findReadmeFileInEntries(ctx *context.Context, entries []*git.TreeEntry) (st
131131 return "" , nil , err
132132 }
133133
134- subfolder , readmeFile , err := findReadmeFileInEntries (ctx , childEntries )
134+ subfolder , readmeFile , err := findReadmeFileInEntries (ctx , childEntries , false )
135135 if err != nil && ! git .IsErrNotExist (err ) {
136136 return "" , nil , err
137137 }
@@ -165,7 +165,7 @@ func renderDirectory(ctx *context.Context, treeLink string) {
165165 return
166166 }
167167
168- subfolder , readmeFile , err := findReadmeFileInEntries (ctx , entries )
168+ subfolder , readmeFile , err := findReadmeFileInEntries (ctx , entries , true )
169169 if err != nil {
170170 ctx .ServerError ("findReadmeFileInEntries" , err )
171171 return
0 commit comments