From a89de6fb979cfe27eb718e7fde91c3f9b7b29798 Mon Sep 17 00:00:00 2001 From: KN4CK3R Date: Tue, 4 Apr 2023 10:14:46 +0200 Subject: [PATCH] Use ghost user if package creator does not exist (#23822) Fixes #23818 --- models/packages/descriptor.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/models/packages/descriptor.go b/models/packages/descriptor.go index f4be21e74e208..e69b579f99b71 100644 --- a/models/packages/descriptor.go +++ b/models/packages/descriptor.go @@ -5,6 +5,7 @@ package packages import ( "context" + "errors" "fmt" "net/url" @@ -25,6 +26,7 @@ import ( "code.gitea.io/gitea/modules/packages/pypi" "code.gitea.io/gitea/modules/packages/rubygems" "code.gitea.io/gitea/modules/packages/vagrant" + "code.gitea.io/gitea/modules/util" "github.com/hashicorp/go-version" ) @@ -98,7 +100,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 {