@@ -155,11 +155,10 @@ func (node *TreeViewNode) sortLevel() int {
155155 return util .Iif (node .EntryMode == "tree" || node .EntryMode == "commit" , 0 , 1 )
156156}
157157
158- func newTreeViewNodeFromEntry (ctx context.Context , renderUtils * templates. RenderUtils , commit * git.Commit , parentDir string , entry * git.TreeEntry ) * TreeViewNode {
158+ func newTreeViewNodeFromEntry (ctx context.Context , commit * git.Commit , parentDir string , entry * git.TreeEntry ) * TreeViewNode {
159159 node := & TreeViewNode {
160160 EntryName : entry .Name (),
161161 EntryMode : entryModeString (entry .Mode ()),
162- FileIcon : renderUtils .RenderFileIcon (entry ),
163162 FullPath : path .Join (parentDir , entry .Name ()),
164163 }
165164
@@ -187,23 +186,23 @@ func sortTreeViewNodes(nodes []*TreeViewNode) {
187186 })
188187}
189188
190- func listTreeNodes (ctx context.Context , commit * git.Commit , tree * git.Tree , treePath , subPath string ) ([]* TreeViewNode , error ) {
189+ func listTreeNodes (ctx context.Context , renderUtils * templates. RenderUtils , commit * git.Commit , tree * git.Tree , treePath , subPath string ) ([]* TreeViewNode , error ) {
191190 entries , err := tree .ListEntries ()
192191 if err != nil {
193192 return nil , err
194193 }
195- renderUtils := templates .NewRenderUtils (reqctx .FromContext (ctx ))
196194 subPathDirName , subPathRemaining , _ := strings .Cut (subPath , "/" )
197195 nodes := make ([]* TreeViewNode , 0 , len (entries ))
198196 for _ , entry := range entries {
199- node := newTreeViewNodeFromEntry (ctx , renderUtils , commit , treePath , entry )
197+ node := newTreeViewNodeFromEntry (ctx , commit , treePath , entry )
198+ node .FileIcon = renderUtils .RenderFileIcon (entry )
200199 nodes = append (nodes , node )
201200 if entry .IsDir () && subPathDirName == entry .Name () {
202201 subTreePath := treePath + "/" + node .EntryName
203202 if subTreePath [0 ] == '/' {
204203 subTreePath = subTreePath [1 :]
205204 }
206- subNodes , err := listTreeNodes (ctx , commit , entry .Tree (), subTreePath , subPathRemaining )
205+ subNodes , err := listTreeNodes (ctx , renderUtils , commit , entry .Tree (), subTreePath , subPathRemaining )
207206 if err != nil {
208207 log .Error ("listTreeNodes: %v" , err )
209208 } else {
@@ -220,5 +219,6 @@ func GetTreeViewNodes(ctx context.Context, commit *git.Commit, treePath, subPath
220219 if err != nil {
221220 return nil , err
222221 }
223- return listTreeNodes (ctx , commit , entry .Tree (), treePath , subPath )
222+ renderUtils := templates .NewRenderUtils (reqctx .FromContext (ctx ))
223+ return listTreeNodes (ctx , renderUtils , commit , entry .Tree (), treePath , subPath )
224224}
0 commit comments