aboutsummaryrefslogtreecommitdiffstats
path: root/modules
diff options
context:
space:
mode:
authorUnknwon <u@gogs.io>2016-02-20 17:32:34 -0500
committerUnknwon <u@gogs.io>2016-02-20 17:32:34 -0500
commit926e75d72126be97f9974976abfb46449a53f3c6 (patch)
tree58aeea38dd9d4979e4d6646aa0fff4dd10dc178a /modules
parentd5a3021a7d86a6dbf42df97c5c25e22b0b3f9505 (diff)
downloadgitea-926e75d72126be97f9974976abfb46449a53f3c6.tar.gz
gitea-926e75d72126be97f9974976abfb46449a53f3c6.zip
#2334 strip whitespace for migrate URL
Also fix a possible race condition while install
Diffstat (limited to 'modules')
-rw-r--r--modules/auth/repo_form.go2
-rw-r--r--modules/mailer/mailer.go5
2 files changed, 5 insertions, 2 deletions
diff --git a/modules/auth/repo_form.go b/modules/auth/repo_form.go
index bd68feafcf..333f468a1c 100644
--- a/modules/auth/repo_form.go
+++ b/modules/auth/repo_form.go
@@ -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://") ||
diff --git a/modules/mailer/mailer.go b/modules/mailer/mailer.go
index eafe04680a..e1c453a22e 100644
--- a/modules/mailer/mailer.go
+++ b/modules/mailer/mailer.go
@@ -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
}