Re: [PATCH] commit: reject non-characters
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Aug 5, 2013, 16:54 UTC
- Message-ID
- <7vpptskrhd.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <alpine.DEB.2.00.1308051346530.3657@ds9.cixit.se>
Peter Krefting <peter@softwolves.pp.se> writes:
Show 11 quoted lines
> Peter Krefting: > >> - /* U+FFFE and U+FFFF are guaranteed non-characters. */ >> - if ((codepoint & 0x1ffffe) == 0xfffe) >> + /* U+xxFFFE and U+xxFFFF are guaranteed non-characters. */ >> + if ((codepoint & 0xffffe) == 0xfffe) >> + return bad_offset; > > Drats, there is an F too many in the bitmask, it should be: > > + if ((codepoint & 0xfffe) == 0xfffe)
Indeed.
-- >8 -- Subject: [PATCH] commit: typofix for xxFFF[EF] check
We wanted to catch all codepoints that ends with FFFE and FFFF, not with 0FFFE and 0FFFF.
Noticed and corrected by Peter Krefting.
Signed-off-by: Junio C Hamano <gitster@pobox.com> --- commit.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/commit.c b/commit.c index 7dcfeea..38d8979 100644 --- a/commit.c +++ b/commit.c @@ -1306,7 +1306,7 @@ static int find_invalid_utf8(const char *buf, int len) if ((codepoint & 0x1ff800) == 0xd800) return bad_offset; /* U+xxFFFE and U+xxFFFF are guaranteed non-characters. */ - if ((codepoint & 0xffffe) == 0xfffe) + if ((codepoint & 0xfffe) == 0xfffe) return bad_offset; /* So are anything in the range U+FDD0..U+FDEF. */ if (codepoint >= 0xfdd0 && codepoint <= 0xfdef)
-- 1.8.4-rc1-129-g1f3472b