]> git.ipfire.org Git - thirdparty/git.git/commitdiff
Merge branch 'zk/log-graph-showsig'
authorJunio C Hamano <gitster@pobox.com>
Wed, 16 Jul 2014 18:32:57 +0000 (11:32 -0700)
committerJunio C Hamano <gitster@pobox.com>
Wed, 16 Jul 2014 18:32:57 +0000 (11:32 -0700)
The "--show-signature" option did not pay much attention to
"--graph".

* zk/log-graph-showsig:
  log: fix indentation for --graph --show-signature

1  2 
log-tree.c

diff --combined log-tree.c
index c13184aafb603c5462d4c1a8befffc1ef61f3deb,d24cbacaa69b9cb2fbc6e69c0d4635492b819567..f87b7e891adc5dfb429bc0ae35227e19f335b90f
@@@ -98,9 -98,9 +98,9 @@@ static int add_ref_decoration(const cha
        struct object *obj;
        enum decoration_type type = DECORATION_NONE;
  
 -      if (!prefixcmp(refname, "refs/replace/")) {
 +      if (starts_with(refname, "refs/replace/")) {
                unsigned char original_sha1[20];
 -              if (!read_replace_refs)
 +              if (!check_replace_refs)
                        return 0;
                if (get_sha1_hex(refname + 13, original_sha1)) {
                        warning("invalid replace ref %s", refname);
        if (!obj)
                return 0;
  
 -      if (!prefixcmp(refname, "refs/heads/"))
 +      if (starts_with(refname, "refs/heads/"))
                type = DECORATION_REF_LOCAL;
 -      else if (!prefixcmp(refname, "refs/remotes/"))
 +      else if (starts_with(refname, "refs/remotes/"))
                type = DECORATION_REF_REMOTE;
 -      else if (!prefixcmp(refname, "refs/tags/"))
 +      else if (starts_with(refname, "refs/tags/"))
                type = DECORATION_REF_TAG;
        else if (!strcmp(refname, "refs/stash"))
                type = DECORATION_REF_STASH;
@@@ -365,6 -365,7 +365,7 @@@ static void show_sig_lines(struct rev_i
                eol = strchrnul(bol, '\n');
                printf("%s%.*s%s%s", color, (int)(eol - bol), bol, reset,
                       *eol ? "\n" : "");
+               graph_show_oneline(opt->graph);
                bol = (*eol) ? (eol + 1) : eol;
        }
  }
@@@ -376,7 -377,7 +377,7 @@@ static void show_signature(struct rev_i
        struct strbuf gpg_output = STRBUF_INIT;
        int status;
  
 -      if (parse_signed_commit(commit->object.sha1, &payload, &signature) <= 0)
 +      if (parse_signed_commit(commit, &payload, &signature) <= 0)
                goto out;
  
        status = verify_signed_buffer(payload.buf, payload.len,
@@@ -446,17 -447,16 +447,17 @@@ static void show_one_mergetag(struct re
  
        payload_size = parse_signature(extra->value, extra->len);
        status = -1;
 -      if (extra->len > payload_size)
 -              if (verify_signed_buffer(extra->value, payload_size,
 -                                       extra->value + payload_size,
 -                                       extra->len - payload_size,
 -                                       &verify_message, NULL)) {
 -                      if (verify_message.len <= gpg_message_offset)
 -                              strbuf_addstr(&verify_message, "No signature\n");
 -                      else
 -                              status = 0;
 -              }
 +      if (extra->len > payload_size) {
 +              /* could have a good signature */
 +              if (!verify_signed_buffer(extra->value, payload_size,
 +                                        extra->value + payload_size,
 +                                        extra->len - payload_size,
 +                                        &verify_message, NULL))
 +                      status = 0; /* good */
 +              else if (verify_message.len <= gpg_message_offset)
 +                      strbuf_addstr(&verify_message, "No signature\n");
 +              /* otherwise we couldn't verify, which is shown as bad */
 +      }
  
        show_sig_lines(opt, status, verify_message.buf);
        strbuf_release(&verify_message);
@@@ -589,7 -589,7 +590,7 @@@ void show_log(struct rev_info *opt
                show_mergetag(opt, commit);
        }
  
 -      if (!commit->buffer)
 +      if (!get_cached_commit_buffer(commit, NULL))
                return;
  
        if (opt->show_notes) {
@@@ -737,7 -737,7 +738,7 @@@ static int log_tree_diff(struct rev_inf
        if (!opt->diff && !DIFF_OPT_TST(&opt->diffopt, EXIT_WITH_STATUS))
                return 0;
  
 -      parse_commit(commit);
 +      parse_commit_or_die(commit);
        sha1 = commit->tree->object.sha1;
  
        /* Root commit? */
                         * parent, showing summary diff of the others
                         * we merged _in_.
                         */
 -                      parse_commit(parents->item);
 +                      parse_commit_or_die(parents->item);
                        diff_tree_sha1(parents->item->tree->object.sha1,
                                       sha1, "", &opt->diffopt);
                        log_tree_diff_flush(opt);
        for (;;) {
                struct commit *parent = parents->item;
  
 -              parse_commit(parent);
 +              parse_commit_or_die(parent);
                diff_tree_sha1(parent->tree->object.sha1,
                               sha1, "", &opt->diffopt);
                log_tree_diff_flush(opt);
@@@ -806,16 -806,12 +807,16 @@@ int log_tree_commit(struct rev_info *op
        if (opt->line_level_traverse)
                return line_log_print(opt, commit);
  
 +      if (opt->track_linear && !opt->linear && !opt->reverse_output_stage)
 +              printf("\n%s\n", opt->break_bar);
        shown = log_tree_diff(opt, commit, &log);
        if (!shown && opt->loginfo && opt->always_show_header) {
                log.parent = NULL;
                show_log(opt);
                shown = 1;
        }
 +      if (opt->track_linear && !opt->linear && opt->reverse_output_stage)
 +              printf("\n%s\n", opt->break_bar);
        opt->loginfo = NULL;
        maybe_flush_or_die(stdout, "stdout");
        return shown;