mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-11-20 04:37:13 +00:00
Fix possible panic (#17694)
- The code will get the first and second character `link[{0,1]]`. However in a rare case the `link` could have 1 character and thus the `link[1]` will create a panic.
This commit is contained in:
parent
d1f5584039
commit
257b7171c3
|
@ -108,12 +108,11 @@ func (repo *Repository) AvatarLink() string {
|
||||||
// avatarLink returns user avatar absolute link.
|
// avatarLink returns user avatar absolute link.
|
||||||
func (repo *Repository) avatarLink(e db.Engine) string {
|
func (repo *Repository) avatarLink(e db.Engine) string {
|
||||||
link := repo.relAvatarLink(e)
|
link := repo.relAvatarLink(e)
|
||||||
// link may be empty!
|
// we only prepend our AppURL to our known (relative, internal) avatar link to get an absolute URL
|
||||||
if len(link) > 0 {
|
if strings.HasPrefix(link, "/") && !strings.HasPrefix(link, "//") {
|
||||||
if link[0] == '/' && link[1] != '/' {
|
|
||||||
return setting.AppURL + strings.TrimPrefix(link, setting.AppSubURL)[1:]
|
return setting.AppURL + strings.TrimPrefix(link, setting.AppSubURL)[1:]
|
||||||
}
|
}
|
||||||
}
|
// otherwise, return the link as it is
|
||||||
return link
|
return link
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue