]> source.dussan.org Git - gitea.git/commitdiff
Use ghost user if package creator does not exist (#23822)
authorKN4CK3R <admin@oldschoolhack.me>
Tue, 4 Apr 2023 08:14:46 +0000 (10:14 +0200)
committerGitHub <noreply@github.com>
Tue, 4 Apr 2023 08:14:46 +0000 (16:14 +0800)
Fixes #23818

models/packages/descriptor.go

index 06699b5d572b2d6383e9831bb880b5d777ba277d..974c5b2c362a687c367c9ea715f11aa0dcf9b703 100644 (file)
@@ -5,6 +5,7 @@ package packages
 
 import (
        "context"
+       "errors"
        "fmt"
        "net/url"
 
@@ -26,6 +27,7 @@ import (
        "code.gitea.io/gitea/modules/packages/rubygems"
        "code.gitea.io/gitea/modules/packages/swift"
        "code.gitea.io/gitea/modules/packages/vagrant"
+       "code.gitea.io/gitea/modules/util"
 
        "github.com/hashicorp/go-version"
 )
@@ -99,7 +101,11 @@ func GetPackageDescriptor(ctx context.Context, pv *PackageVersion) (*PackageDesc
        }
        creator, err := user_model.GetUserByID(ctx, pv.CreatorID)
        if err != nil {
-               return nil, err
+               if errors.Is(err, util.ErrNotExist) {
+                       creator = user_model.NewGhostUser()
+               } else {
+                       return nil, err
+               }
        }
        var semVer *version.Version
        if p.SemverCompatible {