On Mon, Sep 23, 2019 at 03:04:19AM -0700, Alexandr Miloslavskiy via GitGitGadget wrote: > From: Alexandr Miloslavskiy <alexandr.miloslavskiy@xxxxxxxxxxx> > > According to its name, the test is designed for UTF-16-LE-BOM. > However, possibly due to copy&paste oversight, it was using UTF-32 file. > > While the test succeeds (probably interprets extra \x00\x00 as embedded We can probably drop the "probably" ? > zero), I myself had an unrelated problem which caused the test to fail. Out of curiosity: What made the test fail, and does it pass noe ? > When analyzing the failure I was quite puzzled by the fact that the > test is obviously bugged. And it seems that I'm not alone: > https://public-inbox.org/git/CAH8yC8kSakS807d4jc_BtcUJOrcVT4No37AXSz=jePxhw-o9Dg@xxxxxxxxxxxxxx/T/#u > > This fix changes the test to follow its original intention. Thanks for debugging and cleaning up my mess. The patch is correct, and I have one or two small improvements in the wording. How about the following: According to its name, the test is designed for UTF-16-LE-BOM. However, possibly due to copy&paste oversight, it was using UTF-32. While the test succeeds (extra \000\000 are interpreted as NUL), I myself had an unrelated problem which caused the test to fail. When analyzing the failure I was quite puzzled by the fact that the test is obviously bugged. And it seems that I'm not alone: https://public-inbox.org/git/CAH8yC8kSakS807d4jc_BtcUJOrcVT4No37AXSz=jePxhw-o9Dg@xxxxxxxxxxxxxx/T/#u Fix the test to follow its original intention. > > Signed-off-by: Alexandr Miloslavskiy <alexandr.miloslavskiy@xxxxxxxxxxx> > --- > t/t0028-working-tree-encoding.sh | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/t/t0028-working-tree-encoding.sh b/t/t0028-working-tree-encoding.sh > index 1090e650ed..5493cf3ca9 100755 > --- a/t/t0028-working-tree-encoding.sh > +++ b/t/t0028-working-tree-encoding.sh > @@ -40,7 +40,7 @@ test_expect_success 'setup test files' ' > printf "$text" | write_utf16 >test.utf16.raw && > printf "$text" | write_utf32 >test.utf32.raw && > printf "\377\376" >test.utf16lebom.raw && > - printf "$text" | iconv -f UTF-8 -t UTF-32LE >>test.utf16lebom.raw && > + printf "$text" | iconv -f UTF-8 -t UTF-16LE >>test.utf16lebom.raw && > > # Line ending tests > printf "one\ntwo\nthree\n" >lf.utf8.raw && > -- > gitgitgadget > >