From b49a195839ae388184c5111464d8ea3dbe03772b Mon Sep 17 00:00:00 2001 From: Lars Lehtonen Date: Mon, 13 Jul 2020 01:58:55 -0700 Subject: [PATCH] models: fix xorm variable clobber (#12231) NewTestEngine() takes a *xorm.Engine as its argument, and then immediately overwrites it. This fixes the model package to not take an unneeded variable, and changes the routers package to not create a nil *xorm.Engine that is immediately discarded by model. --- models/models.go | 2 +- routers/install.go | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/models/models.go b/models/models.go index 7f12d6260ad..79a549b74bd 100644 --- a/models/models.go +++ b/models/models.go @@ -151,7 +151,7 @@ func getEngine() (*xorm.Engine, error) { } // NewTestEngine sets a new test xorm.Engine -func NewTestEngine(x *xorm.Engine) (err error) { +func NewTestEngine() (err error) { x, err = getEngine() if err != nil { return fmt.Errorf("Connect to database: %v", err) diff --git a/routers/install.go b/routers/install.go index d4f270c9c32..9eda18f941b 100644 --- a/routers/install.go +++ b/routers/install.go @@ -23,7 +23,6 @@ import ( "github.com/unknwon/com" "gopkg.in/ini.v1" - "xorm.io/xorm" ) const ( @@ -161,8 +160,7 @@ func InstallPost(ctx *context.Context, form auth.InstallForm) { } // Set test engine. - var x *xorm.Engine - if err = models.NewTestEngine(x); err != nil { + if err = models.NewTestEngine(); err != nil { if strings.Contains(err.Error(), `Unknown database type: sqlite3`) { ctx.Data["Err_DbType"] = true ctx.RenderWithErr(ctx.Tr("install.sqlite3_not_available", "https://docs.gitea.io/en-us/install-from-binary/"), tplInstall, &form)