Fix env config parsing for "GITEA____APP_NAME" (#26001) (#26013)

Backport #26001 by @wxiaoguang

Regression of #24832

Fix the bug and add a test for it

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
(cherry picked from commit 4d5e3b937214965e7824f2b5a4fc59a1674ab11c)
This commit is contained in:
Giteabot 2023-07-20 05:56:36 -04:00 committed by Earl Warren
parent de7f99d339
commit d4fa6a846a
No known key found for this signature in database
GPG key ID: 0579CB2928A78A00
2 changed files with 7 additions and 1 deletions

View file

@ -86,7 +86,7 @@ func decodeEnvSectionKey(encoded string) (ok bool, section, key string) {
key += remaining key += remaining
} }
section = strings.ToLower(section) section = strings.ToLower(section)
ok = section != "" && key != "" ok = key != ""
if !ok { if !ok {
section = "" section = ""
key = "" key = ""

View file

@ -49,6 +49,12 @@ func TestDecodeEnvironmentKey(t *testing.T) {
assert.Equal(t, "", key) assert.Equal(t, "", key)
assert.False(t, file) assert.False(t, file)
ok, section, key, file = decodeEnvironmentKey(prefix, suffix, "GITEA____KEY")
assert.True(t, ok)
assert.Equal(t, "", section)
assert.Equal(t, "KEY", key)
assert.False(t, file)
ok, section, key, file = decodeEnvironmentKey(prefix, suffix, "GITEA__SEC__KEY") ok, section, key, file = decodeEnvironmentKey(prefix, suffix, "GITEA__SEC__KEY")
assert.True(t, ok) assert.True(t, ok)
assert.Equal(t, "sec", section) assert.Equal(t, "sec", section)