[ARC] Implement support for compression method 11 (distill).

This commit is contained in:
2025-09-02 12:55:39 +01:00
parent 7877e0e962
commit b534b34054
3 changed files with 113 additions and 1 deletions

View File

@@ -150,7 +150,7 @@ public sealed partial class Arc
if((int)_entries[entryNumber].Method >= 20) return ErrorNumber.InvalidArgument;
if(_entries[entryNumber].Method > Method.Crush) return ErrorNumber.NotSupported;
if(_entries[entryNumber].Method > Method.Distill) return ErrorNumber.NotSupported;
Stream stream = new OffsetStream(new NonClosableStream(_stream),
_entries[entryNumber].DataOffset,
@@ -182,6 +182,9 @@ public sealed partial class Arc
if(_entries[entryNumber].Method == Method.Crush)
stream = new CrushStream(stream, _entries[entryNumber].Uncompressed);
if(_entries[entryNumber].Method == Method.Distill)
stream = new DistillStream(stream, _entries[entryNumber].Uncompressed);
filter = new ZZZNoFilter();
ErrorNumber errno = filter.Open(stream);