diff --git a/models/mail.go b/models/mail.go
index b7d24a06a1..afcddb6d23 100644
--- a/models/mail.go
+++ b/models/mail.go
@@ -167,7 +167,7 @@ func composeIssueCommentMessage(issue *Issue, doer *User, comment *Comment, tplN
 		log.Error(3, "Template: %v", err)
 	}
 
-	msg := mailer.NewMessageFrom(tos, fmt.Sprintf(`"%s" <%s>`, doer.DisplayName(), setting.MailService.FromEmail), subject, content.String())
+	msg := mailer.NewMessageFrom(tos, doer.DisplayName(), setting.MailService.FromEmail, subject, content.String())
 	msg.Info = fmt.Sprintf("Subject: %s, %s", subject, info)
 	return msg
 }
diff --git a/modules/mailer/mailer.go b/modules/mailer/mailer.go
index 5b28f92c47..0bb78de92a 100644
--- a/modules/mailer/mailer.go
+++ b/modules/mailer/mailer.go
@@ -31,11 +31,11 @@ type Message struct {
 }
 
 // NewMessageFrom creates new mail message object with custom From header.
-func NewMessageFrom(to []string, from, subject, body string) *Message {
+func NewMessageFrom(to []string, fromDisplayName, fromAddress, subject, body string) *Message {
 	log.Trace("NewMessageFrom (body):\n%s", body)
 
 	msg := gomail.NewMessage()
-	msg.SetHeader("From", from)
+	msg.SetAddressHeader("From", fromAddress, fromDisplayName)
 	msg.SetHeader("To", to...)
 	msg.SetHeader("Subject", subject)
 	msg.SetDateHeader("Date", time.Now())
@@ -58,7 +58,7 @@ func NewMessageFrom(to []string, from, subject, body string) *Message {
 
 // NewMessage creates new mail message object with default From header.
 func NewMessage(to []string, subject, body string) *Message {
-	return NewMessageFrom(to, setting.MailService.From, subject, body)
+	return NewMessageFrom(to, setting.MailService.FromName, setting.MailService.FromEmail, subject, body)
 }
 
 type loginAuth struct {
diff --git a/modules/setting/setting.go b/modules/setting/setting.go
index 4932f51a68..f594125503 100644
--- a/modules/setting/setting.go
+++ b/modules/setting/setting.go
@@ -1287,6 +1287,7 @@ type Mailer struct {
 	QueueLength     int
 	Name            string
 	From            string
+	FromName        string
 	FromEmail       string
 	SendAsPlainText bool
 
@@ -1345,6 +1346,7 @@ func newMailService() {
 	if err != nil {
 		log.Fatal(4, "Invalid mailer.FROM (%s): %v", MailService.From, err)
 	}
+	MailService.FromName = parsed.Name
 	MailService.FromEmail = parsed.Address
 
 	log.Info("Mail Service Enabled")