All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dennis Kaarsemaker <dennis@kaarsemaker.net>
To: Junio C Hamano <gitster@pobox.com>
Cc: "git@vger.kernel.org" <git@vger.kernel.org>,
	"j6t@kdbg.org" <j6t@kdbg.org>, "peff@peff.net" <peff@peff.net>,
	"stefanbeller@gmail.com" <stefanbeller@gmail.com>
Subject: Re: [PATCH] rev-list: restore the NUL commit separator in --header mode
Date: Thu, 20 Oct 2016 20:02:22 +0200	[thread overview]
Message-ID: <1476986542.28685.3.camel@kaarsemaker.net> (raw)
In-Reply-To: <xmqq8ttkj740.fsf@gitster.mtv.corp.google.com>

On Wed, 2016-10-19 at 15:39 -0700, Junio C Hamano wrote:
> Jacob Keller <jacob.keller@gmail.com> writes:
> 
> > Hi,
> > 
> > On Wed, Oct 19, 2016 at 2:04 PM, Dennis Kaarsemaker
> > <dennis@kaarsemaker.net> wrote:
> > > Commit 660e113 (graph: add support for --line-prefix on all graph-aware
> > > output) changed the way commits were shown. Unfortunately this dropped
> > > the NUL between commits in --header mode. Restore the NUL and add a test
> > > for this feature.
> > > 
> > 
> > 
> > Oops! Thanks for the bug fix.
> > 
> > > Signed-off-by: Dennis Kaarsemaker <dennis@kaarsemaker.net>
> > > ---
> > >  builtin/rev-list.c       | 4 ++++
> > >  t/t6000-rev-list-misc.sh | 7 +++++++
> > >  2 files changed, 11 insertions(+)
> > > 
> > > diff --git a/builtin/rev-list.c b/builtin/rev-list.c
> > > index 8479f6e..cfa6a7d 100644
> > > --- a/builtin/rev-list.c
> > > +++ b/builtin/rev-list.c
> > > @@ -157,6 +157,10 @@ static void show_commit(struct commit *commit, void *data)
> > >                         if (revs->commit_format == CMIT_FMT_ONELINE)
> > >                                 putchar('\n');
> > >                 }
> > > +               if (revs->commit_format == CMIT_FMT_RAW) {
> > > +                       putchar(info->hdr_termination);
> > > +               }
> > > +
> > 
> > 
> > This seems right to me. My one concern is that we make sure we restore
> > it for every case (in case it needs to be there for other formats?)
> > I'm not entirely sure about whether other non-raw modes need this or
> > not?
> 
> 
> Right.  The original didn't do anything special for CMIT_FMT_RAW,
> and 660e113 did not remove anything special for CMIT_FMT_RAW, so it
> isn't immediately obvious why this patch is sufficient.  
> 
> Dennis, care to elaborate?

The original logic was (best seen with git show -w 660e113):

if(showing graphs) {
     do pretty things
}
else {
     just print the buffer and the header terminator
}

660e113 changed that to

do pretty things

Given that the 'do pretty things part' works for other uses of git rev-
list, it made sense that the \0 should only be added back in
CMIT_FMT_RAW mode. Changing the first putchar('\n') as Jacob proposes
(that mail arrived while I'm typing this) might work too, I haven't
tested it.

D.

  parent reply	other threads:[~2016-10-20 18:02 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-31 23:27 [PATCH v12 0/8] submodule inline diff format Jacob Keller
2016-08-31 23:27 ` [PATCH v12 1/8] cache: add empty_tree_oid object and helper function Jacob Keller
2016-08-31 23:27 ` [PATCH v12 2/8] diff.c: remove output_prefix_length field Jacob Keller
2016-08-31 23:27 ` [PATCH v12 3/8] graph: add support for --line-prefix on all graph-aware output Jacob Keller
2016-10-19 20:24   ` Dennis Kaarsemaker
2016-10-19 21:04     ` [PATCH] rev-list: restore the NUL commit separator in --header mode Dennis Kaarsemaker
2016-10-19 22:15       ` Jacob Keller
2016-10-19 22:39         ` Junio C Hamano
2016-10-20 16:07           ` Keller, Jacob E
2016-10-20 18:02           ` Dennis Kaarsemaker [this message]
2016-10-19 22:41       ` Junio C Hamano
2016-10-20 18:04         ` Dennis Kaarsemaker
2016-10-20 18:12           ` Jacob Keller
2016-10-20 18:46             ` Junio C Hamano
2016-10-20  6:51       ` Torsten Bögershausen
2016-10-19 22:13     ` [PATCH v12 3/8] graph: add support for --line-prefix on all graph-aware output Jacob Keller
2016-08-31 23:27 ` [PATCH v12 4/8] diff: prepare for additional submodule formats Jacob Keller
2016-08-31 23:27 ` [PATCH v12 5/8] allow do_submodule_path to work even if submodule isn't checked out Jacob Keller
2016-08-31 23:27 ` [PATCH v12 6/8] submodule: convert show_submodule_summary to use struct object_id * Jacob Keller
2016-08-31 23:27 ` [PATCH v12 7/8] submodule: refactor show_submodule_summary with helper function Jacob Keller
2016-08-31 23:27 ` [PATCH v12 8/8] diff: teach diff to display submodule difference with an inline diff Jacob Keller
2016-08-31 23:47 ` [PATCH v12 0/8] submodule inline diff format Stefan Beller
2016-09-01  1:08 ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1476986542.28685.3.camel@kaarsemaker.net \
    --to=dennis@kaarsemaker.net \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=j6t@kdbg.org \
    --cc=peff@peff.net \
    --cc=stefanbeller@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.