From ec1b801732b030648c060d26ce5a3ed8cf2e822c Mon Sep 17 00:00:00 2001
From: Lunny Xiao <xiaolunwen@gmail.com>
Date: Sat, 29 Mar 2014 19:59:02 +0800
Subject: [PATCH] bug fixed

---
 models/action.go | 4 ++--
 update.go        | 6 +++++-
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/models/action.go b/models/action.go
index 894855784f..1e55df85e9 100644
--- a/models/action.go
+++ b/models/action.go
@@ -64,7 +64,7 @@ func (a Action) GetContent() string {
 }
 
 // CommitRepoAction adds new action for committing repository.
-func CommitRepoAction(userId int64, userName string,
+func CommitRepoAction(userId int64, userName, actEmail string,
 	repoId int64, repoName string, refName string, commit *base.PushCommits) error {
 	log.Trace("action.CommitRepoAction(start): %d/%s", userId, repoName)
 
@@ -74,7 +74,7 @@ func CommitRepoAction(userId int64, userName string,
 		return err
 	}
 
-	if err = NotifyWatchers(&Action{ActUserId: userId, ActUserName: userName, ActEmail: "",
+	if err = NotifyWatchers(&Action{ActUserId: userId, ActUserName: userName, ActEmail: actEmail,
 		OpType: OP_COMMIT_REPO, Content: string(bs), RepoId: repoId, RepoName: repoName, RefName: refName}); err != nil {
 		log.Error("action.CommitRepoAction(notify watchers): %d/%s", userId, repoName)
 		return err
diff --git a/update.go b/update.go
index 9743dcc480..246c5d8f9d 100644
--- a/update.go
+++ b/update.go
@@ -132,8 +132,12 @@ func runUpdate(c *cli.Context) {
 
 	commits := make([]*base.PushCommit, 0)
 	var maxCommits = 3
+	var actEmail string
 	for e := l.Front(); e != nil; e = e.Next() {
 		commit := e.Value.(*git.Commit)
+		if actEmail == "" {
+			actEmail = commit.Committer.Email
+		}
 		commits = append(commits,
 			&base.PushCommit{commit.Id().String(),
 				commit.Message(),
@@ -145,7 +149,7 @@ func runUpdate(c *cli.Context) {
 	}
 
 	//commits = append(commits, []string{lastCommit.Id().String(), lastCommit.Message()})
-	if err = models.CommitRepoAction(int64(sUserId), userName,
+	if err = models.CommitRepoAction(int64(sUserId), userName, actEmail,
 		repos.Id, repoName, git.BranchName(refName), &base.PushCommits{l.Len(), commits}); err != nil {
 		log.Error("runUpdate.models.CommitRepoAction: %v", err)
 	}