@@ -51,10 +51,10 @@ func decodeEnvSectionKey(encoded string) (ok bool, section, key string) {
5151 for _ , unescapeIdx := range escapeStringIndices {
5252 preceding := encoded [last :unescapeIdx [0 ]]
5353 if ! inKey {
54- if splitter := strings .Index (preceding , "__" ); splitter > - 1 {
55- section += preceding [: splitter ]
54+ if before , after , cutOk := strings .Cut (preceding , "__" ); cutOk {
55+ section += before
5656 inKey = true
57- key += preceding [ splitter + 2 :]
57+ key += after
5858 } else {
5959 section += preceding
6060 }
@@ -77,9 +77,9 @@ func decodeEnvSectionKey(encoded string) (ok bool, section, key string) {
7777 }
7878 remaining := encoded [last :]
7979 if ! inKey {
80- if splitter := strings .Index (remaining , "__" ); splitter > - 1 {
81- section += remaining [: splitter ]
82- key += remaining [ splitter + 2 :]
80+ if before , after , cutOk := strings .Cut (remaining , "__" ); cutOk {
81+ section += before
82+ key += after
8383 } else {
8484 section += remaining
8585 }
@@ -111,21 +111,21 @@ func decodeEnvironmentKey(prefixGitea, suffixFile, envKey string) (ok bool, sect
111111
112112func EnvironmentToConfig (cfg ConfigProvider , envs []string ) (changed bool ) {
113113 for _ , kv := range envs {
114- idx := strings .IndexByte (kv , '=' )
115- if idx < 0 {
114+ before , after , ok := strings .Cut (kv , "=" )
115+ if ! ok {
116116 continue
117117 }
118118
119119 // parse the environment variable to config section name and key name
120- envKey := kv [: idx ]
121- envValue := kv [ idx + 1 :]
120+ envKey := before
121+ envValue := after
122122 ok , sectionName , keyName , useFileValue := decodeEnvironmentKey (EnvConfigKeyPrefixGitea , EnvConfigKeySuffixFile , envKey )
123123 if ! ok {
124124 continue
125125 }
126126
127127 // use environment value as config value, or read the file content as value if the key indicates a file
128- keyValue := envValue
128+ keyValue := envValue //nolint:staticcheck // false positive
129129 if useFileValue {
130130 fileContent , err := os .ReadFile (envValue )
131131 if err != nil {
0 commit comments