py/objstr: Don't treat bytes as unicode in str.count.
`b'\xaa \xaa'.count(b'\xaa')` now (correctly) returns 2 instead of 1. Fixes issue #9404. This work was funded through GitHub Sponsors. Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
This commit is contained in:
committed by
Damien George
parent
dd9dcb594c
commit
9d6f474ea4
@@ -48,6 +48,13 @@ print(b"aaaa".count(b'a', 1, 5))
|
||||
print(b"aaaa".count(b'a', -1, 5))
|
||||
print(b"abbabba".count(b"abba"))
|
||||
|
||||
print(b'\xaa \xaa'.count(b'\xaa'))
|
||||
print(b'\xaa \xaa \xaa \xaa'.count(b'\xaa'))
|
||||
print(b'\xaa \xaa \xaa \xaa'.count(b'\xaa'), 1)
|
||||
print(b'\xaa \xaa \xaa \xaa'.count(b'\xaa'), 2)
|
||||
print(b'\xaa \xaa \xaa \xaa'.count(b'\xaa'), 1, 3)
|
||||
print(b'\xaa \xaa \xaa \xaa'.count(b'\xaa'), 2, 3)
|
||||
|
||||
def t():
|
||||
return True
|
||||
|
||||
|
||||
Reference in New Issue
Block a user