From a24c0b92e4ad847fbd774e604e80017368f25495 Mon Sep 17 00:00:00 2001 From: Lunny Xiao Date: Thu, 10 Apr 2014 23:02:08 +0800 Subject: [PATCH] bug fixed --- routers/repo/http.go | 22 ++++++++++------- update.go | 56 ++++++++++++++++++++++++-------------------- 2 files changed, 44 insertions(+), 34 deletions(-) diff --git a/routers/repo/http.go b/routers/repo/http.go index 993de51f9..5aa3139f8 100644 --- a/routers/repo/http.go +++ b/routers/repo/http.go @@ -82,7 +82,8 @@ func Http(ctx *middleware.Context, params martini.Params) { return } - newUser := &models.User{Passwd: passwd} + newUser := &models.User{Passwd: passwd, Salt: authUser.Salt} + newUser.EncodePasswd() if authUser.Passwd != newUser.Passwd { ctx.Handle(401, "no basic auth and digit auth", nil) @@ -112,7 +113,10 @@ func Http(ctx *middleware.Context, params martini.Params) { } } - config := Config{base.RepoRootPath, "git", true, true} + config := Config{base.RepoRootPath, "git", true, true, func(rpc string, input []byte) { + //fmt.Println("rpc:", rpc) + //fmt.Println("input:", string(input)) + }} handler := HttpBackend(&config) handler(ctx.ResponseWriter, ctx.Req) @@ -135,11 +139,11 @@ type route struct { } type Config struct { - ReposRoot string - GitBinPath string - UploadPack bool - ReceivePack bool - OnPushSucceed func() + ReposRoot string + GitBinPath string + UploadPack bool + ReceivePack bool + OnSucceed func(rpc string, input []byte) } type handler struct { @@ -243,7 +247,9 @@ func serviceRpc(rpc string, hr handler) { io.Copy(w, stdout) cmd.Wait() - hr.Config.OnPushSucceed() + if hr.Config.OnSucceed != nil { + hr.Config.OnSucceed(rpc, input) + } } func getInfoRefs(hr handler) { diff --git a/update.go b/update.go index c9cbb35b9..141d6fe86 100644 --- a/update.go +++ b/update.go @@ -42,32 +42,7 @@ func newUpdateLogger(execDir string) { qlog.Info("Start logging update...") } -// for command: ./gogs update -func runUpdate(c *cli.Context) { - execDir, _ := base.ExecDir() - newUpdateLogger(execDir) - - base.NewConfigContext() - models.LoadModelsConfig() - - if models.UseSQLite3 { - os.Chdir(execDir) - } - - models.SetEngine() - - args := c.Args() - if len(args) != 3 { - qlog.Fatal("received less 3 parameters") - } - - refName := args[0] - if refName == "" { - qlog.Fatal("refName is empty, shouldn't use") - } - oldCommitId := args[1] - newCommitId := args[2] - +func update(refName, oldCommitId, newCommitId string) { isNew := strings.HasPrefix(oldCommitId, "0000000") if isNew && strings.HasPrefix(newCommitId, "0000000") { @@ -158,3 +133,32 @@ func runUpdate(c *cli.Context) { qlog.Fatalf("runUpdate.models.CommitRepoAction: %v", err) } } + +// for command: ./gogs update +func runUpdate(c *cli.Context) { + execDir, _ := base.ExecDir() + newUpdateLogger(execDir) + + base.NewConfigContext() + models.LoadModelsConfig() + + if models.UseSQLite3 { + os.Chdir(execDir) + } + + models.SetEngine() + + args := c.Args() + if len(args) != 3 { + qlog.Fatal("received less 3 parameters") + } + + refName := args[0] + if refName == "" { + qlog.Fatal("refName is empty, shouldn't use") + } + oldCommitId := args[1] + newCommitId := args[2] + + update(refName, oldCommitId, newCommitId) +}