Overview
| Comment: | OFTarArchiveEntry: Fix prefix handling for ustar |
|---|---|
| Downloads: | Tarball | ZIP archive | SQL archive |
| Timelines: | family | ancestors | descendants | both | 0.90 |
| Files: | files | file ages | folders |
| SHA3-256: |
9136eac5e0b132ffaac229be4fe5d83c |
| User & Date: | js on 2017-08-05 15:51:13 |
| Other Links: | branch diff | manifest | tags |
Context
|
2017-08-05
| ||
| 17:14 | OFGZIPStream: Add missing documentation (check-in: 1dd4dd4630 user: js tags: 0.90) | |
| 15:51 | OFTarArchiveEntry: Fix prefix handling for ustar (check-in: 9136eac5e0 user: js tags: 0.90) | |
| 10:05 | Increase library minor number (check-in: f2640cbcf2 user: js tags: 0.90) | |
Changes
Modified src/OFTarArchiveEntry.m from [e3da7730a5] to [1b943dcfae].
| ︙ | ︙ | |||
84 85 86 87 88 89 90 |
_type = header[156];
_targetFileName = [stringFromBuffer(header + 157, 100) copy];
if (_type == '\0')
_type = OF_TAR_ARCHIVE_ENTRY_TYPE_FILE;
if (memcmp(header + 257, "ustar\0" "00", 8) == 0) {
| | > > > | | > | 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 |
_type = header[156];
_targetFileName = [stringFromBuffer(header + 157, 100) copy];
if (_type == '\0')
_type = OF_TAR_ARCHIVE_ENTRY_TYPE_FILE;
if (memcmp(header + 257, "ustar\0" "00", 8) == 0) {
OFString *prefix;
_owner = [stringFromBuffer(header + 265, 32) copy];
_group = [stringFromBuffer(header + 297, 32) copy];
_deviceMajor = (uint32_t)octalValueFromBuffer(
header + 329, 8, UINT32_MAX);
_deviceMinor = (uint32_t)octalValueFromBuffer(
header + 337, 8, UINT32_MAX);
prefix = stringFromBuffer(header + 345, 155);
if ([prefix length] > 0) {
OFString *fileName = [OFString
stringWithFormat: @"%@/%@",
prefix, _fileName];
[_fileName release];
_fileName = [fileName copy];
}
}
objc_autoreleasePoolPop(pool);
} @catch (id e) {
[self release];
@throw e;
}
|
| ︙ | ︙ |