diff --git a/models/fixtures/issue_watch.yml b/models/fixtures/issue_watch.yml
index 773e1cfb3d..bfaa409d82 100644
--- a/models/fixtures/issue_watch.yml
+++ b/models/fixtures/issue_watch.yml
@@ -17,7 +17,7 @@
 -
   id: 3
   user_id: 2
-  issue_id: 3
+  issue_id: 7
   is_watching: true
   created_unix: 946684800
   updated_unix: 946684800
@@ -25,7 +25,7 @@
 -
   id: 3
   user_id: 1
-  issue_id: 3
+  issue_id: 7
   is_watching: false
   created_unix: 946684800
   updated_unix: 946684800
diff --git a/models/issue_watch.go b/models/issue_watch.go
index b2e7fe5f4d..ad04a7cfb0 100644
--- a/models/issue_watch.go
+++ b/models/issue_watch.go
@@ -53,6 +53,7 @@ func getIssueWatch(e Engine, userID, issueID int64) (iw *IssueWatch, exists bool
 	exists, err = e.
 		Where("user_id = ?", userID).
 		And("issue_id = ?", issueID).
+		And("is_watching = ?", true).
 		Get(iw)
 	return
 }
@@ -66,7 +67,7 @@ func getIssueWatchers(e Engine, issueID int64) (watches []*IssueWatch, err error
 	// handle manual watchers
 	err = e.
 		Where("`issue_watch`.issue_id = ?", issueID).
-		And("`issue_watch`.is_watching > ?", 0).
+		And("`issue_watch`.is_watching = ?", true).
 		And("`user`.is_active = ?", true).
 		And("`user`.prohibit_login = ?", false).
 		Join("INNER", "`user`", "`user`.id = `issue_watch`.user_id").
diff --git a/models/issue_watch_test.go b/models/issue_watch_test.go
index 52e989ef39..2b270f49de 100644
--- a/models/issue_watch_test.go
+++ b/models/issue_watch_test.go
@@ -30,7 +30,7 @@ func TestGetIssueWatch(t *testing.T) {
 	assert.NoError(t, err)
 
 	_, exists, err = GetIssueWatch(2, 2)
-	assert.Equal(t, true, exists)
+	assert.Equal(t, false, exists)
 	assert.NoError(t, err)
 
 	_, exists, err = GetIssueWatch(3, 1)
@@ -51,12 +51,12 @@ func TestGetIssueWatchers(t *testing.T) {
 	// Watcher is not watching
 	assert.Equal(t, 0, len(iws))
 
-	iws, err = GetIssueWatchers(3)
-	assert.NoError(t, err)
-	// Watcher is not watching
-	assert.Equal(t, 1, len(iws))
-
 	iws, err = GetIssueWatchers(5)
 	assert.NoError(t, err)
 	assert.Equal(t, 0, len(iws))
+
+	iws, err = GetIssueWatchers(7)
+	assert.NoError(t, err)
+	// Watcher is not watching
+	assert.Equal(t, 1, len(iws))
 }