git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v12 3/8] graph: add support for --line-prefix on all graph-aware output

From
Dennis Kaarsemaker <dennis@kaarsemaker.net>
Date
Oct 19, 2016, 20:24 UTC
Message-ID
<1476908699.26043.9.camel@kaarsemaker.net>
In-Reply-To
<20160831232725.28205-4-jacob.e.keller@intel.com>
On Wed, 2016-08-31 at 16:27 -0700, Jacob Keller wrote:
Show 5 quoted lines
> From: Jacob Keller <jacob.keller@gmail.com>
> 
> Add an extension to git-diff and git-log (and any other graph-aware
> displayable output) such that "--line-prefix=<string>" will print the
> additional line-prefix on every line of output.
This patch breaks git rev-list --header, also breaking gitweb.

The NUL between commits has gone missing, causing gitweb to interpret the output of git rev-list as one commit.

Sorry for not catching this earlier, I actually encountered this early september but thought it was caused by us running an ancient gitweb with a modern git. Finally managed to upgrade gitweb today, and the bug didn't go away. git bisect says 660e113ce is the culprit. Checking out 'next' and reverting this single patch makes the problem disappear.

Haven't yet tried to fix the bug, but this hunk looks suspicious:

-                       if (revs->commit_format != CMIT_FMT_USERFORMAT || -                           buf.len) { -                               fwrite(buf.buf, 1, buf.len, stdout); -                               putchar(info->hdr_termination); -                       } +                       /* +                        * If the message buffer is empty, just show +                        * the rest of the graph output for this +                        * commit. +                        */ +                       if (graph_show_remainder(revs->graph)) +                               putchar('\n'); +                       if (revs->commit_format == CMIT_FMT_ONELINE) +                          

D.
Previous: Jacob KellerNext: Dennis Kaarsemaker
Message 9 of 23 in “submodule inline diff format”
  1. 0/8 submodule inline diff formatJacob Keller, Aug 31, 2016
  2. 1/8 cache: add empty_tree_oid object and helper functionJacob Keller, Aug 31, 2016
  3. 8/8 diff: teach diff to display submodule difference with an inline diffJacob Keller, Aug 31, 2016
  4. 7/8 submodule: refactor show_submodule_summary with helper functionJacob Keller, Aug 31, 2016
  5. 6/8 submodule: convert show_submodule_summary to use struct object_id *Jacob Keller, Aug 31, 2016
  6. 5/8 allow do_submodule_path to work even if submodule isn't checked outJacob Keller, Aug 31, 2016
  7. 4/8 diff: prepare for additional submodule formatsJacob Keller, Aug 31, 2016
  8. 3/8 graph: add support for --line-prefix on all graph-aware outputJacob Keller, Aug 31, 2016
  9. Dennis KaarsemakerOct 19, 2016
  10. rev-list: restore the NUL commit separator in --header modeDennis Kaarsemaker, Oct 19, 2016
  11. Jacob KellerOct 19, 2016
  12. Junio C HamanoOct 19, 2016
  13. Keller, Jacob EOct 20, 2016
  14. Dennis KaarsemakerOct 20, 2016
  15. Junio C HamanoOct 19, 2016
  16. Dennis KaarsemakerOct 20, 2016
  17. Jacob KellerOct 20, 2016
  18. Junio C HamanoOct 20, 2016
  19. Torsten BögershausenOct 20, 2016
  20. Jacob KellerOct 19, 2016
  21. 2/8 diff.c: remove output_prefix_length fieldJacob Keller, Aug 31, 2016
  22. Stefan BellerAug 31, 2016
  23. Junio C HamanoSep 1, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.