Hi Eric, I think that this change: On Fri, 22 Jul 2016, Eric Wong wrote: > diff --git a/builtin/mailsplit.c b/builtin/mailsplit.c > index 3068168..bb8f9c9 100644 > --- a/builtin/mailsplit.c > +++ b/builtin/mailsplit.c > @@ -8,41 +8,11 @@ > #include "builtin.h" > #include "string-list.h" > #include "strbuf.h" > +#include "mailinfo.h" > > static const char git_mailsplit_usage[] = > "git mailsplit [-d<prec>] [-f<n>] [-b] [--keep-cr] -o<directory> [(<mbox>|<Maildir>)...]"; > > -static int is_from_line(const char *line, int len) > -{ > - const char *colon; > - > - if (len < 20 || memcmp("From ", line, 5)) > - return 0; > - > - colon = line + len - 2; > - line += 5; > - for (;;) { > - if (colon < line) > - return 0; > - if (*--colon == ':') > - break; > - } > - > - if (!isdigit(colon[-4]) || > - !isdigit(colon[-2]) || > - !isdigit(colon[-1]) || > - !isdigit(colon[ 1]) || > - !isdigit(colon[ 2])) > - return 0; > - > - /* year */ > - if (strtol(colon+3, NULL, 10) <= 90) > - return 0; > - > - /* Ok, close enough */ > - return 1; > -} > - > static struct strbuf buf = STRBUF_INIT; > static int keep_cr; > static int mboxrd; > diff --git a/mailinfo.c b/mailinfo.c > index 9f19ca1..0ebd953 100644 > --- a/mailinfo.c > +++ b/mailinfo.c > @@ -1035,3 +1035,34 @@ void clear_mailinfo(struct mailinfo *mi) > > strbuf_release(&mi->log_message); > } > + > +int is_from_line(const char *line, int len) > +{ > + const char *colon; > + > + if (len < 20 || memcmp("From ", line, 5)) > + return 0; > + > + colon = line + len - 2; > + line += 5; > + for (;;) { > + if (colon < line) > + return 0; > + if (*--colon == ':') > + break; > + } > + > + if (!isdigit(colon[-4]) || > + !isdigit(colon[-2]) || > + !isdigit(colon[-1]) || > + !isdigit(colon[ 1]) || > + !isdigit(colon[ 2])) > + return 0; > + > + /* year */ > + if (strtol(colon+3, NULL, 10) <= 90) > + return 0; > + > + /* Ok, close enough */ > + return 1; > +} > diff --git a/mailinfo.h b/mailinfo.h > index 93776a7..c1430a0 100644 > --- a/mailinfo.h > +++ b/mailinfo.h > @@ -37,5 +37,6 @@ struct mailinfo { > extern void setup_mailinfo(struct mailinfo *); > extern int mailinfo(struct mailinfo *, const char *msg, const char *patch); > extern void clear_mailinfo(struct mailinfo *); > +int is_from_line(const char *line, int len); > > #endif /* MAILINFO_H */ deserves to live in a separate patch... It would make the real change stick out better. Ciao, Dscho -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html