Skip to content

Commit

Permalink
Fix
Browse files Browse the repository at this point in the history
  • Loading branch information
hsyl20 committed Dec 11, 2023
1 parent b4b6e44 commit de18139
Showing 1 changed file with 8 additions and 8 deletions.
16 changes: 8 additions & 8 deletions Data/ByteString/Internal/Pure.hs
Original file line number Diff line number Diff line change
Expand Up @@ -208,11 +208,11 @@ isValidUtf8' idx !len' = go 0
| i+1 >= len = return 0
-- We use a signed comparison to avoid an extra comparison with
-- 0x80, since _signed_ 0x80 is -128.
| b1 <- indexWord8 i
, i1 <- indexInt8 i
, is_cont i1
| i1 <- indexInt8 i
, i2 <- indexInt8 (i+1)
, is_cont i1
, is_cont i2
, b1 <- indexWord8 i
, (b0 == 0xE0 && b1 >= 0xA0) -- E0, A0..BF, 80..BF
|| (b0 >= 0xE1 && b0 <= 0xEC) -- E1..EC, 80..BF, 80..BF
|| (b0 == 0xED && b1 <= 0x9F) -- ED, 80..9F, 80..BF
Expand All @@ -225,16 +225,16 @@ isValidUtf8' idx !len' = go 0
| i+2 >= len = return 0
-- We use a signed comparison to avoid an extra comparison with
-- 0x80, since _signed_ 0x80 is -128.
| b1 <- indexWord8 i
, i1 <- indexInt8 i
, is_cont i1
| i1 <- indexInt8 i
, i2 <- indexInt8 (i+1)
, is_cont i2
, i3 <- indexInt8 (i+2)
, is_cont i1
, is_cont i2
, is_cont i3
, b1 <- indexWord8 i
, (b0 == 0xF0 && b1 >= 0x90) -- F0, 90..BF, 80..BF, 80..BF
|| (b0 >= 0xF1 && b0 <= 0xF3) -- F1..F3, 80..BF, 80..BF, 80..BF
|| (b0 == 0xFA && b1 <= 0x8F) -- F4, 80..8F, 80..BF, 80..BF
|| (b0 == 0xF4 && b1 <= 0x8F) -- F4, 80..8F, 80..BF, 80..BF
= go (i+3)

| otherwise
Expand Down

0 comments on commit de18139

Please sign in to comment.