device: fix bug in getting friendly name

This commit is contained in:
Peter F. Patel-Schneider 2024-03-10 14:51:01 -04:00
parent 9c5ba6445e
commit 24223e77c7
1 changed files with 1 additions and 2 deletions

View File

@ -1469,8 +1469,7 @@ class Hidpp20:
while len(name) < name_length: while len(name) < name_length:
fragment = feature_request(device, FEATURE.DEVICE_FRIENDLY_NAME, 0x10, len(name)) fragment = feature_request(device, FEATURE.DEVICE_FRIENDLY_NAME, 0x10, len(name))
if fragment: if fragment:
initial_null = 0 if fragment[0] else 1 # initial null actually seen on a device name += fragment[1 : name_length - len(name) + 1]
name += fragment[initial_null : name_length + initial_null - len(name)]
else: else:
logger.error("failed to read whole name of %s (expected %d chars)", device, name_length) logger.error("failed to read whole name of %s (expected %d chars)", device, name_length)
return None return None