Revision ca51699961664890fdaabd276af539e6b3514053 authored by Jeff King on 06 February 2012, 08:13:12 UTC, committed by Junio C Hamano on 06 February 2012, 18:00:42 UTC
When "git tag" is instructed to print lines from annotated tags via "-n", it first prints the tag name, then attempts to parse and print the lines of the tag object, and then finally adds a trailing newline. If an error occurs, we return early from the function and never print the newline, screwing up the output for the next tag. Let's factor the line-printing into its own function so we can manage the early returns better, and make sure that we always terminate the line. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
1 parent f174a25
test-sigchain.c
#include "sigchain.h"
#include "cache.h"
#define X(f) \
static void f(int sig) { \
puts(#f); \
fflush(stdout); \
sigchain_pop(sig); \
raise(sig); \
}
X(one)
X(two)
X(three)
#undef X
int main(int argc, char **argv) {
sigchain_push(SIGTERM, one);
sigchain_push(SIGTERM, two);
sigchain_push(SIGTERM, three);
raise(SIGTERM);
return 0;
}
Computing file changes ...