Overview
Comment: | OF{LHA,Tar}Archive: Fix skipping over entries |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
83333738674100ce92c826bb0f33feb6 |
User & Date: | js on 2018-07-08 18:00:24 |
Other Links: | manifest | tags |
Context
2018-07-08
| ||
19:42 | OFDNSResolver: Paths for hosts file on more OSes check-in: 418965bae3 user: js tags: trunk | |
18:00 | OF{LHA,Tar}Archive: Fix skipping over entries check-in: 8333373867 user: js tags: trunk | |
12:07 | Initial code for OFDNSResolver check-in: dd375b6d4e user: js tags: trunk | |
Changes
Modified src/OFLHAArchive.m from [6e9b4cb571] to [164823b060].
︙ | |||
41 42 43 44 45 46 47 | 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | - + | @interface OFLHAArchive_FileReadStream: OFStream <OFReadyForReadingObserving> { OF_KINDOF(OFStream *) _stream; OF_KINDOF(OFStream *) _decompressedStream; OFLHAArchiveEntry *_entry; uint32_t _toRead, _bytesConsumed; uint16_t _CRC16; |
︙ | |||
367 368 369 370 371 372 373 | 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 | - + | } - (void)of_skip { OF_KINDOF(OFStream *) stream; uint32_t toRead; |
︙ | |||
405 406 407 408 409 410 411 412 413 414 415 416 417 418 | 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 | + | toRead -= [stream readIntoBuffer: buffer length: min]; } } _toRead = 0; _skipped = true; } - (void)close { [self of_skip]; [_stream release]; |
︙ |
Modified src/OFTarArchive.m from [9cb41be19d] to [641014739a].
︙ | |||
35 36 37 38 39 40 41 | 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | - + | #import "OFWriteFailedException.h" @interface OFTarArchive_FileReadStream: OFStream <OFReadyForReadingObserving> { OFTarArchiveEntry *_entry; OF_KINDOF(OFStream *) _stream; uint64_t _toRead; |
︙ | |||
357 358 359 360 361 362 363 | 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 | - + | _stream = nil; [super close]; } - (void)of_skip { |
︙ | |||
396 397 398 399 400 401 402 403 404 405 406 407 408 409 | 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 | + + | size = [_entry size]; if (size % 512 != 0) [_stream readIntoBuffer: buffer exactLength: (size_t)(512 - (size % 512))]; } _skipped = true; } @end @implementation OFTarArchive_FileWriteStream - (instancetype)of_initWithStream: (OF_KINDOF(OFStream *))stream entry: (OFTarArchiveEntry *)entry { |
︙ |
Modified src/OFTarArchiveEntry.m from [df56ebf01c] to [eeb02938ee].
︙ | |||
265 266 267 268 269 270 271 | 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 | - - + + | - (OFString *)description { void *pool = objc_autoreleasePoolPush(); OFString *ret = [OFString stringWithFormat: @"<%@:\n" @"\tFile name = %@\n" @"\tMode = %06o\n" |
︙ |