diff --git a/README.md b/README.md
index 26b515d78..d2476577b 100644
--- a/README.md
+++ b/README.md
@@ -3,7 +3,7 @@ Gogs - Go Git Service [![Build Status](https://travis-ci.org/gogits/gogs.svg?bra
 
 ![](https://github.com/gogits/gogs/blob/master/public/img/gogs-large-resize.png?raw=true)
 
-##### Current tip version: 0.9.46 (see [Releases](https://github.com/gogits/gogs/releases) for binary versions)
+##### Current tip version: 0.9.47 (see [Releases](https://github.com/gogits/gogs/releases) for binary versions)
 
 | Web | UI  | Preview  |
 |:-------------:|:-------:|:-------:|
diff --git a/gogs.go b/gogs.go
index efb9c915e..a6748371e 100644
--- a/gogs.go
+++ b/gogs.go
@@ -17,7 +17,7 @@ import (
 	"github.com/gogits/gogs/modules/setting"
 )
 
-const APP_VER = "0.9.46.0717"
+const APP_VER = "0.9.47.0721"
 
 func init() {
 	runtime.GOMAXPROCS(runtime.NumCPU())
diff --git a/models/login.go b/models/login.go
index 84f17d18e..dd90c5d86 100644
--- a/models/login.go
+++ b/models/login.go
@@ -296,7 +296,7 @@ func LoginUserLDAPSource(u *User, loginName, passwd string, source *LoginSource,
 		username = loginName
 	}
 	// Validate username make sure it satisfies requirement.
-	if !binding.AlphaDashDotPattern.MatchString(username) {
+	if binding.AlphaDashDotPattern.MatchString(username) {
 		return nil, fmt.Errorf("Invalid pattern for attribute 'username' [%s]: must be valid alpha or numeric or dash(-_) or dot characters", username)
 	}
 
diff --git a/templates/.VERSION b/templates/.VERSION
index c0497e65c..f10070335 100644
--- a/templates/.VERSION
+++ b/templates/.VERSION
@@ -1 +1 @@
-0.9.46.0717
\ No newline at end of file
+0.9.47.0721
\ No newline at end of file