diff options
Diffstat (limited to 'modules/git/tree_entry.go')
-rw-r--r-- | modules/git/tree_entry.go | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/modules/git/tree_entry.go b/modules/git/tree_entry.go index e842f233..e403e93e 100644 --- a/modules/git/tree_entry.go +++ b/modules/git/tree_entry.go @@ -61,6 +61,10 @@ func (te *TreeEntry) Size() int64 { return te.size } +func (te *TreeEntry) IsSubModule() bool { + return te.mode == ModeCommit +} + func (te *TreeEntry) IsDir() bool { return te.mode == ModeTree } @@ -80,7 +84,7 @@ type Entries []*TreeEntry var sorter = []func(t1, t2 *TreeEntry) bool{ func(t1, t2 *TreeEntry) bool { - return t1.IsDir() && !t2.IsDir() + return (t1.IsDir() || t1.IsSubModule()) && !t2.IsDir() && !t2.IsSubModule() }, func(t1, t2 *TreeEntry) bool { return t1.name < t2.name |