Skip to content

Commit ed9c52f

Browse files
committed
Double read_timestamp speed for small gains
1 parent 74e77d9 commit ed9c52f

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

sc2reader/utils.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -162,9 +162,16 @@ def read_timestamp(self):
162162
"""
163163
first = self.read_byte()
164164
time,count = first >> 2, first & 0x03
165-
for i in range(count):
166-
time = (time << 8) | self.read_byte()
167-
return time
165+
if count == 0:
166+
return time
167+
elif count == 1:
168+
return time << 8 | self.read_byte()
169+
elif count == 2:
170+
return time << 16 | self.read_short()
171+
elif count == 3:
172+
return time << 24 | self.read_short() << 8 | self.read_byte()
173+
else:
174+
raise ValueError()
168175

169176
def read_data_struct(self):
170177
"""

0 commit comments

Comments
 (0)