Re-added all C decompressors

Some cleanup
Remove inode arena
Added deinit to Archive to destroy the File.MemoryMap
This commit is contained in:
Caleb Gardner
2026-05-23 06:37:34 -05:00
parent 1dae4d8bb7
commit 5f1089406e
17 changed files with 520 additions and 131 deletions
+3
View File
@@ -15,6 +15,7 @@ test "Basics" {
var fil = try Io.Dir.cwd().openFile(io, TestArchive, .{});
defer fil.close(io);
var sfs: Archive = try .init(io, fil, 0);
defer sfs.deinit(io);
try std.testing.expectEqualDeep(sfs.super, LinuxPATestCorrectSuperblock);
const root_file = try sfs.root(alloc, io);
defer root_file.deinit();
@@ -30,6 +31,7 @@ test "ExtractSingleFile" {
var fil = try Io.Dir.cwd().openFile(io, TestArchive, .{});
defer fil.close(io);
var sfs: Archive = try .init(io, fil, 0);
defer sfs.deinit(io);
var test_fil = try sfs.open(alloc, io, TestFile);
defer test_fil.deinit();
try test_fil.extract(alloc, io, TestFileExtractLocation, try .Default());
@@ -45,6 +47,7 @@ test "ExtractCompleteArchive" {
var fil = try Io.Dir.cwd().openFile(io, TestArchive, .{});
defer fil.close(io);
var sfs: Archive = try .init(io, fil, 0);
defer sfs.deinit(io);
try sfs.extract(alloc, io, TestFullExtractLocation, try .Default());
}