From: Johannes Schindelin <[EMAIL PROTECTED]>
On Windows, gpg outputs CR/LF signatures. But since the tag
messages are already stripped of the CR by stripspace(), it is
arguably nicer to do the same for the tag signature. Actually,
this patch does not look for CR/LF, but strips all CRs
from the signature.
[ spr: ported code to use strbuf ]
Signed-off-by: Johannes Schindelin <[EMAIL PROTECTED]>
Signed-off-by: Steffen Prohaska <[EMAIL PROTECTED]>
---
builtin-tag.c | 14 ++++++++++++++
1 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/builtin-tag.c b/builtin-tag.c
index e675206..77977ba 100644
--- a/builtin-tag.c
+++ b/builtin-tag.c
@@ -241,6 +241,20 @@ static int do_sign(struct strbuf *buffer)
if (finish_command(&gpg) || !len || len < 0)
return error("gpg failed to sign the tag");
+#ifdef __MINGW32__
+ /* strip CR from the line endings */
+ {
+ int i, j;
+ for (i = j = 0; i < buffer->len; i++)
+ if (buffer->buf[i] != '\r') {
+ if (i != j)
+ buffer->buf[j] = buffer->buf[i];
+ j++;
+ }
+ strbuf_setlen(buffer, j);
+ }
+#endif
+
return 0;
}
--
1.5.6.1.255.g32571