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

Re: BUG: attempt to trim too many characters

From
Linus Torvalds <torvalds@linux-foundation.org>
Date
Sep 13, 2017, 04:29 UTC
Message-ID
<CA+55aFyyHAjEPx6V3X4i7LV-0VGwu2n288ysnpftP1Bx53EX5g@mail.gmail.com>
In-Reply-To
<20170905220300.isxbt5y5fd2scd6b@sigill.intra.peff.net>

Just reminding people that this issue would seem to still exist in current master..

It's trivial to show:
   [torvalds@i7 git]$ git bisect start
   [torvalds@i7 git]$ git bisect bad master
   [torvalds@i7 git]$ git bisect good master~5
   Bisecting: 23 revisions left to test after this (roughly 5 steps)
   [f35a1d75b5ecefaef7b1a8ec55543c82883df82f] Merge branch
'rs/t3700-clean-leftover' into maint
   [torvalds@i7 git]$ git rev-parse --bisect
   fatal: BUG: attempt to trim too many characters

(Note: I use "git rev-parse --bisect" to show it as an error on the command line, but normal people would obviously do "gitk --bisect" that then does that "git rev-parse" internally and shows a UI error box instead).

              Linus
On Tue, Sep 5, 2017 at 3:03 PM, Jeff King <peff@peff.net> wrote:
Show 32 quoted lines
> On Tue, Sep 05, 2017 at 02:55:08PM -0700, Linus Torvalds wrote:
>
>> On Tue, Sep 5, 2017 at 2:50 PM, Jeff King <peff@peff.net> wrote:
>> >
>> > What version of git are you running? This should be fixed by 03df567fbf
>> > (for_each_bisect_ref(): don't trim refnames, 2017-06-18) which is in
>> > v2.14.
>>
>> I'm way more recent than 2.14.
>>
>> I'm at commit 238e487ea ("The fifth batch post 2.14")
>
> Ugh. Bitten again by the fact that rev-parse and revision.c implement
> the same things in subtly different ways.
>
> This probably fixes it:
>
> diff --git a/builtin/rev-parse.c b/builtin/rev-parse.c
> index 2bd28d3c08..9f24004c0a 100644
> --- a/builtin/rev-parse.c
> +++ b/builtin/rev-parse.c
> @@ -757,8 +757,8 @@ int cmd_rev_parse(int argc, const char **argv, const char *prefix)
>                                 continue;
>                         }
>                         if (!strcmp(arg, "--bisect")) {
> -                               for_each_ref_in("refs/bisect/bad", show_reference, NULL);
> -                               for_each_ref_in("refs/bisect/good", anti_reference, NULL);
> +                               for_each_fullref_in("refs/bisect/bad", show_reference, NULL, 0);
> +                               for_each_fullref_in("refs/bisect/good", anti_reference, NULL, 0);
>                                 continue;
>                         }
>                         if (opt_with_value(arg, "--branches", &arg)) {
Previous: Michael HaggertyNext: Jeff King
Message 8 of 9 in “BUG: attempt to trim too many characters”
  1. Linus TorvaldsSep 5, 2017
  2. Jeff KingSep 5, 2017
  3. Linus TorvaldsSep 5, 2017
  4. Jeff KingSep 5, 2017
  5. Linus TorvaldsSep 5, 2017
  6. rev-parse: don't trim bisect refnamesJeff King, Sep 6, 2017
  7. Michael HaggertySep 6, 2017
  8. Linus TorvaldsSep 13, 2017
  9. Jeff KingSep 13, 2017

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.