rebase -m: do not trigger pre-commit verification
[gitweb.git] / log-tree.c
index 1f3fcf16ad7a101eb9eab53da84bd2640f97ab00..dd94f393a06a0c8a7fc6420af0b9487df47ec4a4 100644 (file)
@@ -146,6 +146,7 @@ void show_log(struct rev_info *opt, const char *sep)
        int abbrev_commit = opt->abbrev_commit ? opt->abbrev : 40;
        const char *extra;
        const char *subject = NULL, *extra_headers = opt->extra_headers;
+       int need_8bit_cte = 0;
 
        opt->loginfo = NULL;
        if (!opt->verbose_header) {
@@ -214,6 +215,8 @@ void show_log(struct rev_info *opt, const char *sep)
                if (opt->mime_boundary) {
                        static char subject_buffer[1024];
                        static char buffer[1024];
+
+                       need_8bit_cte = -1; /* never */
                        snprintf(subject_buffer, sizeof(subject_buffer) - 1,
                                 "%s"
                                 "MIME-Version: 1.0\n"
@@ -282,9 +285,11 @@ void show_log(struct rev_info *opt, const char *sep)
         * And then the pretty-printed message itself
         */
        strbuf_init(&msgbuf, 0);
+       if (need_8bit_cte >= 0)
+               need_8bit_cte = has_non_ascii(opt->add_signoff);
        pretty_print_commit(opt->commit_format, commit, &msgbuf,
                            abbrev, subject, extra_headers, opt->date_mode,
-                           has_non_ascii(opt->add_signoff));
+                           need_8bit_cte);
 
        if (opt->add_signoff)
                append_signoff(&msgbuf, opt->add_signoff);