Skip to content

Commit eaa713b

Browse files
committed
Fix length encoding bug for debug strings with non-ASCII characters
1 parent 590feaa commit eaa713b

File tree

2 files changed

+4
-3
lines changed

2 files changed

+4
-3
lines changed

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ packages = ["src/genieutils"]
77

88
[project]
99
name = "genieutils-py"
10-
version = "0.1.0"
10+
version = "0.1.1"
1111
authors = [
1212
{ name = "SiegeEngineers", email = "genieutils@siegeengineers.org" },
1313
]

src/genieutils/common.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,10 @@ def to_bytes(self, version: Version) -> bytes:
3636
raise NotImplementedError
3737

3838
def write_debug_string(self, value: str) -> bytes:
39+
encoded = value.encode('utf-8')
3940
return (self.write_int_16(0x0A60, signed=False)
40-
+ self.write_int_16(len(value), signed=False)
41-
+ value.encode('utf-8'))
41+
+ self.write_int_16(len(encoded), signed=False)
42+
+ encoded)
4243

4344
def write_string(self, length: int, value: str) -> bytes:
4445
return String.to_bytes(value, length)

0 commit comments

Comments
 (0)