Merge branch 'rs/mailinfo-lib' into maint
authorJunio C Hamano <gitster@pobox.com>
Fri, 9 Sep 2016 04:36:01 +0000 (21:36 -0700)
committerJunio C Hamano <gitster@pobox.com>
Fri, 9 Sep 2016 04:36:01 +0000 (21:36 -0700)
Small code clean-up.

* rs/mailinfo-lib:
mailinfo: recycle strbuf in check_header()

1  2 
mailinfo.c
diff --combined mailinfo.c
index 9f19ca10805a5f54a49b3a8fa2093f583bcea8c3,44ea8638f3e63e734b05b5c6b4f94bde0e601f6e..e19abe3cb93e24aed8848cadec8ddf8a8767f303
@@@ -179,12 -179,6 +179,6 @@@ static void handle_content_type(struct 
        }
  }
  
- static void handle_message_id(struct mailinfo *mi, const struct strbuf *line)
- {
-       if (mi->add_message_id)
-               mi->message_id = strdup(line->buf);
- }
  static void handle_content_transfer_encoding(struct mailinfo *mi,
                                             const struct strbuf *line)
  {
@@@ -495,7 -489,8 +489,8 @@@ static int check_header(struct mailinf
                len = strlen("Message-Id: ");
                strbuf_add(&sb, line->buf + len, line->len - len);
                decode_header(mi, &sb);
-               handle_message_id(mi, &sb);
+               if (mi->add_message_id)
+                       mi->message_id = strbuf_detach(&sb, NULL);
                ret = 1;
                goto check_header_out;
        }
@@@ -732,7 -727,7 +727,7 @@@ static int read_one_header_line(struct 
        struct strbuf continuation = STRBUF_INIT;
  
        /* Get the first part of the line. */
 -      if (strbuf_getline(line, in, '\n'))
 +      if (strbuf_getline_lf(line, in))
                return 0;
  
        /*
                peek = fgetc(in); ungetc(peek, in);
                if (peek != ' ' && peek != '\t')
                        break;
 -              if (strbuf_getline(&continuation, in, '\n'))
 +              if (strbuf_getline_lf(&continuation, in))
                        break;
                continuation.buf[0] = ' ';
                strbuf_rtrim(&continuation);
  
  static int find_boundary(struct mailinfo *mi, struct strbuf *line)
  {
 -      while (!strbuf_getline(line, mi->input, '\n')) {
 +      while (!strbuf_getline_lf(line, mi->input)) {
                if (*(mi->content_top) && is_multipart_boundary(mi, line))
                        return 1;
        }
@@@ -820,7 -815,7 +815,7 @@@ again
  
        strbuf_release(&newline);
        /* replenish line */
 -      if (strbuf_getline(line, mi->input, '\n'))
 +      if (strbuf_getline_lf(line, mi->input))
                return 0;
        strbuf_addch(line, '\n');
        return 1;
@@@ -1009,7 -1004,7 +1004,7 @@@ void setup_mailinfo(struct mailinfo *mi
        mi->header_stage = 1;
        mi->use_inbody_headers = 1;
        mi->content_top = mi->content;
 -      git_config(git_mailinfo_config, &mi);
 +      git_config(git_mailinfo_config, mi);
  }
  
  void clear_mailinfo(struct mailinfo *mi)