Index: src/OFTarArchive.m ================================================================== --- src/OFTarArchive.m +++ src/OFTarArchive.m @@ -35,11 +35,11 @@ OF_DIRECT_MEMBERS @interface OFTarArchiveFileReadStream: OFStream { OFTarArchiveEntry *_entry; OFStream *_stream; - uint64_t _toRead; + unsigned long long _toRead; bool _atEndOfStream, _skipped; } - (instancetype)of_initWithStream: (OFStream *)stream entry: (OFTarArchiveEntry *)entry; @@ -49,11 +49,11 @@ OF_DIRECT_MEMBERS @interface OFTarArchiveFileWriteStream: OFStream { OFTarArchiveEntry *_entry; OFStream *_stream; - uint64_t _toWrite; + unsigned long long _toWrite; } - (instancetype)of_initWithStream: (OFStream *)stream entry: (OFTarArchiveEntry *)entry; @end @@ -302,16 +302,16 @@ @throw [OFNotOpenException exceptionWithObject: self]; if (_atEndOfStream) return 0; -#if SIZE_MAX >= UINT64_MAX - if (length > UINT64_MAX) +#if SIZE_MAX >= ULLONG_MAX + if (length > ULLONG_MAX) @throw [OFOutOfRangeException exception]; #endif - if ((uint64_t)length > _toRead) + if ((unsigned long long)length > _toRead) length = (size_t)_toRead; ret = [_stream readIntoBuffer: buffer length: length]; if (ret == 0) _atEndOfStream = true; @@ -357,13 +357,13 @@ { if (_stream == nil || _skipped) return; if ([_stream isKindOfClass: [OFSeekableStream class]] && - _toRead <= INT64_MAX && - (OFStreamOffset)_toRead == (int64_t)_toRead) { - uint64_t size; + _toRead <= LLONG_MAX && + (OFStreamOffset)_toRead == (long long)_toRead) { + unsigned long long size; [(OFSeekableStream *)_stream seekToOffset: (OFStreamOffset)_toRead whence: SEEK_CUR]; @@ -375,11 +375,11 @@ [(OFSeekableStream *)_stream seekToOffset: 512 - (size % 512) whence: SEEK_CUR]; } else { char buffer[512]; - uint64_t size; + unsigned long long size; while (_toRead >= 512) { [_stream readIntoBuffer: buffer exactLength: 512]; _toRead -= 512; } @@ -432,11 +432,11 @@ - (size_t)lowlevelWriteBuffer: (const void *)buffer length: (size_t)length { if (_stream == nil) @throw [OFNotOpenException exceptionWithObject: self]; - if ((uint64_t)length > _toWrite) + if (length > _toWrite) @throw [OFOutOfRangeException exception]; @try { [_stream writeBuffer: buffer length: length]; } @catch (OFWriteFailedException *e) { @@ -469,11 +469,11 @@ .fileDescriptorForWriting; } - (void)close { - uint64_t remainder; + unsigned long long remainder; if (_stream == nil) @throw [OFNotOpenException exceptionWithObject: self]; if (_toWrite > 0)