mailinfo: move use_scissors and use_inbody_headers to struct mailinfo
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Junio C Hamano committed
Oct 14, 2015 at 16:14 UTC
ad57ef9da9ba95c69507359abad6bd3f57837a12
1 file changed
+13
-10
builtin/mailinfo.c
+13
-10
@@ -20,6 +20,8 @@ struct mailinfo {
20
int keep_subject;
21
int keep_non_patch_brackets_in_subject;
22
int add_message_id;
23
+ int use_scissors;
24
+ int use_inbody_headers;
25
26
char *message_id;
27
int patch_lines;
@@ -33,8 +35,6 @@ static enum {
35
36
static struct strbuf charset = STRBUF_INIT;
37
static struct strbuf **p_hdr_data, **s_hdr_data;
36
-static int use_scissors;
37
-static int use_inbody_headers = 1;
38
39
#define MAX_BOUNDARIES 5
40
@@ -663,7 +663,7 @@ static int handle_commit_msg(struct mailinfo *mi, struct strbuf *line)
663
return 0;
664
}
665
666
- if (use_inbody_headers && mi->header_stage) {
666
+ if (mi->use_inbody_headers && mi->header_stage) {
667
mi->header_stage = check_header(mi, line, s_hdr_data, 0);
668
if (mi->header_stage)
669
return 0;
@@ -677,7 +677,7 @@ static int handle_commit_msg(struct mailinfo *mi, struct strbuf *line)
677
if (metainfo_charset)
678
convert_to_utf8(line, charset.buf);
679
680
- if (use_scissors && is_scissors_line(line)) {
680
+ if (mi->use_scissors && is_scissors_line(line)) {
681
int i;
682
if (fseek(cmitmsg, 0L, SEEK_SET))
683
die_errno("Could not rewind output message file");
@@ -1006,12 +1006,14 @@ static int mailinfo(struct mailinfo *mi, const char *msg, const char *patch)
1006
return 0;
1007
}
1008
1009
-static int git_mailinfo_config(const char *var, const char *value, void *unused)
1009
+static int git_mailinfo_config(const char *var, const char *value, void *mi_)
1010
{
1011
+ struct mailinfo *mi = mi_;
1012
+
1013
if (!starts_with(var, "mailinfo."))
1012
- return git_default_config(var, value, unused);
1014
+ return git_default_config(var, value, NULL);
1015
if (!strcmp(var, "mailinfo.scissors")) {
1014
- use_scissors = git_config_bool(var, value);
1016
+ mi->use_scissors = git_config_bool(var, value);
1017
return 0;
1018
}
1019
/* perhaps others here */
@@ -1024,6 +1026,7 @@ static void setup_mailinfo(struct mailinfo *mi)
1026
strbuf_init(&mi->name, 0);
1027
strbuf_init(&mi->email, 0);
1028
mi->header_stage = 1;
1029
+ mi->use_inbody_headers = 1;
1030
git_config(git_mailinfo_config, &mi);
1031
}
1032
@@ -1065,11 +1068,11 @@ int cmd_mailinfo(int argc, const char **argv, const char *prefix)
1068
else if (starts_with(argv[1], "--encoding="))
1069
metainfo_charset = argv[1] + 11;
1070
else if (!strcmp(argv[1], "--scissors"))
1068
- use_scissors = 1;
1071
+ mi.use_scissors = 1;
1072
else if (!strcmp(argv[1], "--no-scissors"))
1070
- use_scissors = 0;
1073
+ mi.use_scissors = 0;
1074
else if (!strcmp(argv[1], "--no-inbody-headers"))
1072
- use_inbody_headers = 0;
1075
+ mi.use_inbody_headers = 0;
1076
else
1077
usage(mailinfo_usage);
1078
argc--; argv++;