diff options
author | Eng Zer Jun <engzerjun@gmail.com> | 2023-10-06 14:49:37 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-10-06 14:49:37 +0800 |
commit | 13d5d2e7110ca643d8ca1c7655e2a4ff89fe5b8d (patch) | |
tree | baba009364130ebb8d458669e97a592bb2804a43 /modules | |
parent | 6cdeb7798ba7dc1e9d7ea7e181d51f845951b905 (diff) | |
download | gitea-13d5d2e7110ca643d8ca1c7655e2a4ff89fe5b8d.tar.gz gitea-13d5d2e7110ca643d8ca1c7655e2a4ff89fe5b8d.zip |
Remove redundant `len` check around loop (#27464)
This pull request is a minor code cleanup.
From the Go specification (https://go.dev/ref/spec#For_range):
> "1. For a nil slice, the number of iterations is 0."
> "3. If the map is nil, the number of iterations is 0."
`len` returns 0 if the slice or map is nil
(https://pkg.go.dev/builtin#len). Therefore, checking `len(v) > 0`
before a loop is unnecessary.
---
At the time of writing this pull request, there wasn't a lint rule that
catches these issues. The closest I could find is
https://staticcheck.dev/docs/checks/#S103
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
Diffstat (limited to 'modules')
-rw-r--r-- | modules/git/repo_commit.go | 52 | ||||
-rw-r--r-- | modules/setting/config_provider.go | 8 |
2 files changed, 25 insertions, 35 deletions
diff --git a/modules/git/repo_commit.go b/modules/git/repo_commit.go index 6fc3063629..6b06fef656 100644 --- a/modules/git/repo_commit.go +++ b/modules/git/repo_commit.go @@ -116,17 +116,13 @@ func (repo *Repository) searchCommits(id SHA1, opts SearchCommitsOptions) ([]*Co c.AddArguments("-i") // add authors if present in search query - if len(opts.Authors) > 0 { - for _, v := range opts.Authors { - c.AddOptionFormat("--author=%s", v) - } + for _, v := range opts.Authors { + c.AddOptionFormat("--author=%s", v) } // add committers if present in search query - if len(opts.Committers) > 0 { - for _, v := range opts.Committers { - c.AddOptionFormat("--committer=%s", v) - } + for _, v := range opts.Committers { + c.AddOptionFormat("--committer=%s", v) } // add time constraints if present in search query @@ -150,10 +146,8 @@ func (repo *Repository) searchCommits(id SHA1, opts SearchCommitsOptions) ([]*Co // add remaining keywords from search string // note this is done only for command created above - if len(opts.Keywords) > 0 { - for _, v := range opts.Keywords { - cmd.AddOptionFormat("--grep=%s", v) - } + for _, v := range opts.Keywords { + cmd.AddOptionFormat("--grep=%s", v) } // search for commits matching given constraints and keywords in commit msg @@ -168,25 +162,23 @@ func (repo *Repository) searchCommits(id SHA1, opts SearchCommitsOptions) ([]*Co // if there are any keywords (ie not committer:, author:, time:) // then let's iterate over them - if len(opts.Keywords) > 0 { - for _, v := range opts.Keywords { - // ignore anything not matching a valid sha pattern - if IsValidSHAPattern(v) { - // create new git log command with 1 commit limit - hashCmd := NewCommand(repo.Ctx, "log", "-1", prettyLogFormat) - // add previous arguments except for --grep and --all - addCommonSearchArgs(hashCmd) - // add keyword as <commit> - hashCmd.AddDynamicArguments(v) - - // search with given constraints for commit matching sha hash of v - hashMatching, _, err := hashCmd.RunStdBytes(&RunOpts{Dir: repo.Path}) - if err != nil || bytes.Contains(stdout, hashMatching) { - continue - } - stdout = append(stdout, hashMatching...) - stdout = append(stdout, '\n') + for _, v := range opts.Keywords { + // ignore anything not matching a valid sha pattern + if IsValidSHAPattern(v) { + // create new git log command with 1 commit limit + hashCmd := NewCommand(repo.Ctx, "log", "-1", prettyLogFormat) + // add previous arguments except for --grep and --all + addCommonSearchArgs(hashCmd) + // add keyword as <commit> + hashCmd.AddDynamicArguments(v) + + // search with given constraints for commit matching sha hash of v + hashMatching, _, err := hashCmd.RunStdBytes(&RunOpts{Dir: repo.Path}) + if err != nil || bytes.Contains(stdout, hashMatching) { + continue } + stdout = append(stdout, hashMatching...) + stdout = append(stdout, '\n') } } diff --git a/modules/setting/config_provider.go b/modules/setting/config_provider.go index 8d64286288..132f4acea1 100644 --- a/modules/setting/config_provider.go +++ b/modules/setting/config_provider.go @@ -213,11 +213,9 @@ func NewConfigProviderFromFile(file string, extraConfigs ...string) (ConfigProvi } } - if len(extraConfigs) > 0 { - for _, s := range extraConfigs { - if err := cfg.Append([]byte(s)); err != nil { - return nil, fmt.Errorf("unable to append more config: %v", err) - } + for _, s := range extraConfigs { + if err := cfg.Append([]byte(s)); err != nil { + return nil, fmt.Errorf("unable to append more config: %v", err) } } |