Commit 63fa151f1c

dweiller <4678790+dweiller@users.noreply.github.com>
2024-02-15 02:46:56
std.compress.zstandard: fix buffer sizes
This change corrects the size of various internal buffers used. The previous behavior did not cause validity problems but wasted space.
1 parent e204b2c
Changed files (2)
lib
std
compress
lib/std/compress/zstandard/types.zig
@@ -391,7 +391,7 @@ pub const compressed_block = struct {
     pub const table_size_max = struct {
         pub const literal = 1 << table_accuracy_log_max.literal;
         pub const match = 1 << table_accuracy_log_max.match;
-        pub const offset = 1 << table_accuracy_log_max.match;
+        pub const offset = 1 << table_accuracy_log_max.offset;
     };
 };
 
lib/std/compress/zstandard.zig
@@ -101,10 +101,10 @@ pub fn DecompressStream(
                     );
                     const buffer = try RingBuffer.init(self.allocator, frame_context.window_size);
 
-                    const literals_data = try self.allocator.alloc(u8, options.window_size_max);
+                    const literals_data = try self.allocator.alloc(u8, frame_context.block_size_max);
                     errdefer self.allocator.free(literals_data);
 
-                    const sequence_data = try self.allocator.alloc(u8, options.window_size_max);
+                    const sequence_data = try self.allocator.alloc(u8, frame_context.block_size_max);
                     errdefer self.allocator.free(sequence_data);
 
                     self.literal_fse_buffer = literal_fse_buffer;