235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
|
extraFieldLength = [stream readLittleEndianInt16];
fileCommentLength = [stream readLittleEndianInt16];
_startDiskNumber = [stream readLittleEndianInt16];
_internalAttributes = [stream readLittleEndianInt16];
_versionSpecificAttributes = [stream readLittleEndianInt32];
_localFileHeaderOffset = [stream readLittleEndianInt32];
encoding = (_generalPurposeBitFlag & (1 << 11)
? OF_STRING_ENCODING_UTF_8
: OF_STRING_ENCODING_CODEPAGE_437);
_fileName = [[stream readStringWithLength: fileNameLength
encoding: encoding] copy];
if (extraFieldLength > 0)
extraField = [[[stream readDataWithCount:
|
|
|
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
|
extraFieldLength = [stream readLittleEndianInt16];
fileCommentLength = [stream readLittleEndianInt16];
_startDiskNumber = [stream readLittleEndianInt16];
_internalAttributes = [stream readLittleEndianInt16];
_versionSpecificAttributes = [stream readLittleEndianInt32];
_localFileHeaderOffset = [stream readLittleEndianInt32];
encoding = (_generalPurposeBitFlag & (1u << 11)
? OF_STRING_ENCODING_UTF_8
: OF_STRING_ENCODING_CODEPAGE_437);
_fileName = [[stream readStringWithLength: fileNameLength
encoding: encoding] copy];
if (extraFieldLength > 0)
extraField = [[[stream readDataWithCount:
|