154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
|
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
|
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
|
@synthesize delegate = _delegate, archiveComment = _archiveComment;
static void
seekOrThrowInvalidFormat(OFZIPArchive *archive, const uint32_t *diskNumber,
OFStreamOffset offset, OFSeekWhence whence)
{
if (diskNumber != NULL && *diskNumber != archive->_diskNumber) {
OFStream *oldStream = archive->_stream;
OFSeekableStream *stream =
[archive->_delegate archive: archive
wantsPartNumbered: *diskNumber
totalNumberOfParts: archive->_numDisks];
OFStream *oldStream;
OFSeekableStream *stream;
if (archive->_mode != modeRead)
@throw [OFInvalidFormatException exception];
oldStream = archive->_stream;
stream = [archive->_delegate archive: archive
wantsPartNumbered: *diskNumber
totalNumberOfParts: archive->_numDisks];
if (stream == nil)
@throw [OFInvalidFormatException exception];
archive->_diskNumber = *diskNumber;
archive->_stream = [stream retain];
[oldStream release];
|