Differences From Artifact [1213ad1e65]:
- File
utils/ofarc/ZIPArchive.m
— part of check-in
[630ea6bc5a]
at
2023-07-23 23:35:08
on branch trunk
— OFZIPArchive: Initial support for split archives
This cannot yet extract a file from the archive if the file spans
multiple parts. However, for a multipart archive with multiple files,
all files that only span a single part can be extracted. (user: js, size: 14162) [annotate] [blame] [check-ins using]
To Artifact [5f0ed89edf]:
- File utils/ofarc/ZIPArchive.m — part of check-in [d6f5e2abc5] at 2023-07-25 21:21:02 on branch trunk — OFZIPArchive: Handle files spanning multiple parts (user: js, size: 14168) [annotate] [blame] [check-ins using] [more...]
︙ | ︙ | |||
120 121 122 123 124 125 126 | [_archive release]; [super dealloc]; } - (OFSeekableStream *)archive: (OFZIPArchive *)archive wantsPartNumbered: (unsigned int)partNumber | | | | 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 | [_archive release]; [super dealloc]; } - (OFSeekableStream *)archive: (OFZIPArchive *)archive wantsPartNumbered: (unsigned int)partNumber lastPartNumber: (unsigned int)lastPartNumber { OFString *path; if ([_path.pathExtension caseInsensitiveCompare: @"zip"] != OFOrderedSame) return nil; if (partNumber > 98) return nil; if (partNumber == lastPartNumber) path = _path; else path = [_path.stringByDeletingPathExtension stringByAppendingFormat: @".z%02u", partNumber + 1]; @try { return [OFFile fileWithPath: path mode: @"r"]; |
︙ | ︙ |