Revision e60059276b26db5760e36aa85cf1091f662430fb authored by Eric Sunshine on 09 February 2015, 21:28:07 UTC, committed by Junio C Hamano on 10 February 2015, 18:31:48 UTC
Since ea02ffa3 (mailmap: simplify map_user() interface, 2013-01-05),
find_alignment() has been invoking commit_info_destroy() on an
uninitialized auto 'struct commit_info' (when METAINFO_SHOWN is not
set). commit_info_destroy() calls strbuf_release() for each
'commit_info' strbuf member, which randomly invokes free() on
whatever random stack value happens to reside in strbuf.buf, thus
leading to periodic crashes.

Reported-by: Dilyan Palauzov <dilyan.palauzov@aegee.org>
Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
1 parent 3d8a54e
Raw File
annotate.c
/*
 * "git annotate" builtin alias
 *
 * Copyright (C) 2006 Ryan Anderson
 */
#include "git-compat-util.h"
#include "builtin.h"
#include "argv-array.h"

int cmd_annotate(int argc, const char **argv, const char *prefix)
{
	struct argv_array args = ARGV_ARRAY_INIT;
	int i;

	argv_array_pushl(&args, "annotate", "-c", NULL);

	for (i = 1; i < argc; i++) {
		argv_array_push(&args, argv[i]);
	}

	return cmd_blame(args.argc, args.argv, prefix);
}
back to top