diff options
author | Lauris BH <lauris@nix.lv> | 2020-06-19 12:10:03 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-06-19 12:10:03 +0200 |
commit | 3e8618a543cc942e5de4d4728b0f107b18b998ff (patch) | |
tree | c908c0c4190a9c543ffed26991658ccbafff1623 | |
parent | Fix scrollable header on dropdowns (#11893) (#11965) (diff) | |
download | forgejo-3e8618a543cc942e5de4d4728b0f107b18b998ff.tar.xz forgejo-3e8618a543cc942e5de4d4728b0f107b18b998ff.zip |
For language detection do not try to analyze big files by content (#11971) (#11975)
-rw-r--r-- | modules/git/repo_language_stats.go | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/modules/git/repo_language_stats.go b/modules/git/repo_language_stats.go index 06d7d6aba0..06ff704497 100644 --- a/modules/git/repo_language_stats.go +++ b/modules/git/repo_language_stats.go @@ -17,7 +17,8 @@ import ( "github.com/go-git/go-git/v5/plumbing/object" ) -const fileSizeLimit int64 = 16 * 1024 * 1024 +const fileSizeLimit int64 = 16 * 1024 // 16 KiB +const bigFileSize int64 = 1024 * 1024 // 1 MiB // specialLanguages defines list of languages that are excluded from the calculation // unless they are the only language present in repository. Only languages which under @@ -62,8 +63,11 @@ func (repo *Repository) GetLanguageStats(commitID string) (map[string]int64, err return nil } - // If content can not be read just do detection by filename - content, _ := readFile(f, fileSizeLimit) + // If content can not be read or file is too big just do detection by filename + var content []byte + if f.Size <= bigFileSize { + content, _ = readFile(f, fileSizeLimit) + } if enry.IsGenerated(f.Name, content) { return nil } |