From 3792d24b665b36ebf89a4b63b86532e2ef20d05a Mon Sep 17 00:00:00 2001 From: Tulir Asokan <tulir@maunium.net> Date: Sat, 30 Sep 2017 17:06:29 +0300 Subject: [PATCH] Fix long commit message detector --- gitlab-webhook.go | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/gitlab-webhook.go b/gitlab-webhook.go index 4aa0cfa..f8393ca 100644 --- a/gitlab-webhook.go +++ b/gitlab-webhook.go @@ -101,9 +101,10 @@ func handlePushEvent(payload interface{}, header webhooks.Header) { fmt.Fprintln(&msg, "<ul>") for i := len(data.Commits) - 1; i >= 0; i-- { commit := data.Commits[i] - message := commit.Message - if strings.Contains(message, "\n") { - message = fmt.Sprintf("%s (...)", strings.Split(message, "\n")[0]) + lines := strings.Split(commit.Message, "\n") + message := lines[0] + if len(lines) > 1 && len(strings.Join(lines[1:], "")) > 0 { + message += " (...)" } fmt.Fprintf(&msg, "<li>%s (%s)</li>\n", message, commit.ID[:8]) } @@ -112,9 +113,10 @@ func handlePushEvent(payload interface{}, header webhooks.Header) { } else { for i := len(data.Commits) - 1; i >= 0; i-- { commit := data.Commits[i] - message := commit.Message - if strings.Contains(message, "\n") { - message = fmt.Sprintf("%s (...)", strings.Split(message, "\n")[0]) + lines := strings.Split(commit.Message, "\n") + message := lines[0] + if len(lines) > 1 && len(strings.Join(lines[1:], "")) > 0 { + message += " (...)" } room.SendfHTML("<ul><li>%s (%s)</li></ul>", message, commit.ID[:8]) } -- GitLab