mailinfo: fix passing wrong address to git_mailinfo_config

git_mailinfo_config() expects "struct mailinfo *". But in setup_mailinfo(), "mi" is already "struct mailinfo *". &mi would make it "struct mailinfo **" and git_mailinfo_config() would damage some other memory when it assigns some value to mi->use_scissors. This is caught by t4150.20. git_mailinfo_config() breaks mi->name.alloc and makes strbuf_release() in clear_mailinfo() attempt to free strbuf_slopbuf. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Nguyễn Thái Ngọc Duy committed Nov 1, 2015 at 15:30 UTC 85d9d9ddf38aba0c13a1be8f667af6b8cf021ca6
1 file changed +1 -1
mailinfo.c
+1 -1
@@ -1009,7 +1009,7 @@ void setup_mailinfo(struct mailinfo *mi)
1009 mi->header_stage = 1;
1010 mi->use_inbody_headers = 1;
1011 mi->content_top = mi->content;
1012 - git_config(git_mailinfo_config, &mi);
1012 + git_config(git_mailinfo_config, mi);
1013 }
1014
1015 void clear_mailinfo(struct mailinfo *mi)