Fixing 3-byte char inference

This commit is contained in:
Miroslav Štampar
2026-07-20 10:46:05 +02:00
parent 620f3a77a1
commit 09389aadeb
2 changed files with 4 additions and 3 deletions
+3 -2
View File
@@ -666,8 +666,9 @@ def bisection(payload, expression, length=None, charsetType=None, firstChar=None
if kb.disableShiftTable:
shiftTable = None
elif continuousOrder and shiftTable is None:
# Used for gradual expanding into unicode charspace
shiftTable = [2, 2, 3, 3, 3]
# Used for gradual expanding into unicode charspace (Note: leading value covers MySQL's
# 3-byte ORD() range up to 0xEFBFBF, restoring CJK/non-Latin extraction - see issue #5171)
shiftTable = [4, 2, 2, 3, 3, 3]
if "'%s'" % CHAR_INFERENCE_MARK in payload:
for char in ('\n', '\r'):