fix(zlib): zbit_writer 位写入 |= 右值显式窄化为 BYTE(修 augmented assignment 右值过宽报错)
This commit is contained in:
1 parent
7f82bec5d1
commit
4aa8d399ff
1 file changed
+4
-2
+4
-2
@@ -131,7 +131,8 @@ class zbit_writer:
|
||||
self.ensure((nbits + 7) / 8 + 1)
|
||||
for i in range(int(nbits)):
|
||||
if value & (UINT(1) << i):
|
||||
self.buf[self.byte_pos] |= (UINT(1) << self.bit_pos)
|
||||
# BYTE(...) 显式窄化:|= 的目标 buf 元素是 8 位(BYTE/uchar),右值是 i32 位图掩码
|
||||
self.buf[self.byte_pos] |= BYTE(UINT(1) << self.bit_pos)
|
||||
self.bit_pos += 1
|
||||
if self.bit_pos == 8:
|
||||
self.bit_pos = 0
|
||||
@@ -141,7 +142,8 @@ class zbit_writer:
|
||||
self.ensure((nbits + 7) / 8 + 1)
|
||||
for i in range(int(nbits - 1), -1, -1):
|
||||
if code & (UINT(1) << i):
|
||||
self.buf[self.byte_pos] |= (UINT(1) << self.bit_pos)
|
||||
# BYTE(...) 显式窄化:|= 的目标 buf 元素是 8 位(BYTE/uchar),右值是 i32 位图掩码
|
||||
self.buf[self.byte_pos] |= BYTE(UINT(1) << self.bit_pos)
|
||||
self.bit_pos += 1
|
||||
if self.bit_pos == 8:
|
||||
self.bit_pos = 0
|
||||
|
||||
Reference in new issue
Block a user