From 24ec69998db55478af24b471b9000bd56113abd6 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Carlos=20Mart=C3=ADn=20Nieto?= Date: Tue, 11 Jun 2013 10:48:00 +0200 Subject: [PATCH] signature: extend trimming to more whitespace There are all sorts of misconfiguration in the wild. We already rely on the signature constructor to trim SP. Extend the logic to use `isspace` to decide whether a character should be trimmed. --- src/signature.c | 4 ++-- tests-clar/commit/signature.c | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/signature.c b/src/signature.c index cd6167fb4..e338f0802 100644 --- a/src/signature.c +++ b/src/signature.c @@ -35,11 +35,11 @@ static bool contains_angle_brackets(const char *input) static char *extract_trimmed(const char *ptr, size_t len) { - while (len && ptr[0] == ' ') { + while (len && git__isspace(ptr[0])) { ptr++; len--; } - while (len && ptr[len - 1] == ' ') { + while (len && git__isspace(ptr[len - 1])) { len--; } diff --git a/tests-clar/commit/signature.c b/tests-clar/commit/signature.c index aef72a80d..e9dcfab41 100644 --- a/tests-clar/commit/signature.c +++ b/tests-clar/commit/signature.c @@ -31,6 +31,8 @@ static void assert_name_and_email( void test_commit_signature__leading_and_trailing_spaces_are_trimmed(void) { assert_name_and_email("nulltoken", "emeric.fermas@gmail.com", " nulltoken ", " emeric.fermas@gmail.com "); + assert_name_and_email("nulltoken", "emeric.fermas@gmail.com", " nulltoken ", " emeric.fermas@gmail.com \n"); + assert_name_and_email("nulltoken", "emeric.fermas@gmail.com", " \t nulltoken \n", " \n emeric.fermas@gmail.com \n"); } void test_commit_signature__angle_brackets_in_names_are_not_supported(void) -- 2.39.5