aboutsummaryrefslogtreecommitdiff
path: root/lib/std
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2025-07-27 16:38:43 -0700
committerAndrew Kelley <andrew@ziglang.org>2025-07-27 22:08:52 -0700
commitbb29846732ce94d4492e824bd5252279b5220593 (patch)
tree50740440452dd9f105b94c4c90e5b76ef936386d /lib/std
parent89cd42ee806cff64a21cd4eef6c87f0f7337f413 (diff)
downloadzig-bb29846732ce94d4492e824bd5252279b5220593.tar.gz
zig-bb29846732ce94d4492e824bd5252279b5220593.zip
std.compress.xz: eliminate dependency on std.Io.bitReader
Diffstat (limited to 'lib/std')
-rw-r--r--lib/std/compress/xz.zig16
1 files changed, 5 insertions, 11 deletions
diff --git a/lib/std/compress/xz.zig b/lib/std/compress/xz.zig
index c8bc964543..6c99e9f427 100644
--- a/lib/std/compress/xz.zig
+++ b/lib/std/compress/xz.zig
@@ -12,17 +12,11 @@ pub const Check = enum(u4) {
};
fn readStreamFlags(reader: anytype, check: *Check) !void {
- var bit_reader = std.io.bitReader(.little, reader);
-
- const reserved1 = try bit_reader.readBitsNoEof(u8, 8);
- if (reserved1 != 0)
- return error.CorruptInput;
-
- check.* = @as(Check, @enumFromInt(try bit_reader.readBitsNoEof(u4, 4)));
-
- const reserved2 = try bit_reader.readBitsNoEof(u4, 4);
- if (reserved2 != 0)
- return error.CorruptInput;
+ const reserved1 = try reader.readByte();
+ if (reserved1 != 0) return error.CorruptInput;
+ const byte = try reader.readByte();
+ if ((byte >> 4) != 0) return error.CorruptInput;
+ check.* = @enumFromInt(@as(u4, @truncate(byte)));
}
pub fn decompress(allocator: Allocator, reader: anytype) !Decompress(@TypeOf(reader)) {