Re: [PATCH v4] [GSOC] ref-filter: fix read invalid union member bug

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> Well, the thing is,
>
>     $ git checkout 49f38e2d ;# (The fifteenth batch, 2021-05-10)
>     $ git am -s mbox
>     $ git show --stat --oneline
>     39509d100a (HEAD) ref-filter: fix read invalid union member bug
>      ref-filter.c                   |  2 +-
>      t/t6302-for-each-ref-filter.sh | 18 ++++++++++++++++++
>      2 files changed, 19 insertions(+), 1 deletion(-)
>     $ git show ref-filter.c | git apply -R ;# revert only the fix
>     $ make -j32 && make -C t T=t6302-*.sh
>
> does not seem to break anything.  Perhaps there is something more
> than the "17th byte" thing (like structure padding that may vary
> depending on the compiler and architecture)?

Fine, I guess the reason for this mystery is I "push" this branch to github
and you haven't done it. That may not be due to the platform. Because I
can see no this bug happening when I use a new git repo without "git push",
and I test in archlinux or deepin, this bug will happen in these environments.

I take back what I said before, maybe this is really related to push.

Let's see what happens:

#!/bin/sh
mkdir test
cd test
git init
echo 1>1
git add .
git branch -M main
git commit -m "test"
git remote add origin nowhere
git config branch.main.remote origin
git config branch.main.merge refs/heads/main
git for-each-ref --format="%(color:#aa22ac)%(objectname)"

These two "git config" is for simulating a push environment.

I guess you also saw this bug:

BUG: ref-filter.c:1544: unhandled RR_* enum

I will use it for the test.

Thanks.
--
ZheNing Hu



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux