From: ZheNing Hu Date: Mon, 10 May 2021 12:51:10 GMT Subject: Re: [PATCH v3] [GSOC] ref-filter: fix read invalid union member bug Message-ID: In-Reply-To: > Just a final sanity check. Is this a recent breakage or was the > code introduced at cc72385f (for-each-ref: let upstream/push > optionally report the remote name, 2017-10-05) broken from the > beginning? > Well, The trigger condition is very special, but the bug was introduced at that time. Let's see the "bug" example below. > I am wondering if it is easy to add a test to cover the codepath > that is affected by this change. > > Thanks. > Well, because this bug must require that the seventeenth bit of `used_atom.u` is not 0, it took me a long time to find this bug. in `used_atom.u`, only the member "color" and "contents" which size is bigger than 17 bytes, but "%(contents:trailer:only)" only fill the 16th byte of `used_atom.u`. "Fortunately", I found it. git for-each-ref --format='%(color:#aa22ac)' I will add test for it! Thanks! -- ZheNing Hu