Also fix a possible race condition while installtags/v0.9.99
@@ -57,7 +57,7 @@ func (f *MigrateRepoForm) Validate(ctx *macaron.Context, errs binding.Errors) bi | |||
// It also checks if given user has permission when remote address | |||
// is actually a local path. | |||
func (f MigrateRepoForm) ParseRemoteAddr(user *models.User) (string, error) { | |||
remoteAddr := f.CloneAddr | |||
remoteAddr := strings.TrimSpace(f.CloneAddr) | |||
// Remote address can be HTTP/HTTPS/Git URL or local path. | |||
if strings.HasPrefix(remoteAddr, "http://") || |
@@ -197,7 +197,10 @@ func processMailQueue() { | |||
var mailQueue chan *Message | |||
func NewContext() { | |||
if setting.MailService == nil { | |||
// Need to check if mailQueue is nil because in during reinstall (user had installed | |||
// before but swithed install lock off), this function will be called again | |||
// while mail queue is already processing tasks, and produces a race condition. | |||
if setting.MailService == nil || mailQueue != nil { | |||
return | |||
} | |||