fTOCSection
{ return fTOCSection; }
PackageFileSection fTOCSection;
SectionInfo fTOCSection;
error = InitSection(fTOCSection, fPackageAttributesSection.offset,
status_t error = PrepareSection(fTOCSection);
fTOCSection.currentOffset = fTOCSection.stringsLength;
SetCurrentSection(&fTOCSection);
if (fTOCSection.currentOffset < fTOCSection.uncompressedLength) {
fTOCSection.uncompressedLength - fTOCSection.currentOffset);
if (size > fTOCSection.uncompressedLength - fTOCSection.currentOffset) {
_buffer = fTOCSection.data + fTOCSection.currentOffset;
fTOCSection.currentOffset += size;
fTOCSection.compression = B_BENDIAN_TO_HOST_INT32(header.toc_compression);
fTOCSection.compressedLength
fTOCSection.uncompressedLength
if (const char* errorString = CheckCompression(fTOCSection)) {
fTOCSection.stringsLength
fTOCSection.stringsCount
if (fTOCSection.stringsLength > fTOCSection.uncompressedLength
|| fTOCSection.stringsCount > fTOCSection.stringsLength) {
|| fTOCSection.compressedLength
- fTOCSection.compressedLength) {
fTOCSection.offset = fPackageAttributesSection.offset
- fTOCSection.compressedLength;
fHeapSize = fTOCSection.offset - fHeapOffset;
if (fTOCSection.uncompressedLength > kMaxTOCSize) {
fTOCSection.uncompressedLength);
fTOCSection.data
= new(std::nothrow) uint8[fTOCSection.uncompressedLength];
if (fTOCSection.data == NULL) {
error = ReadCompressedBuffer(fTOCSection);
fTOCSection.currentOffset = 0;
SetCurrentSection(&fTOCSection);
fTOCSection.currentOffset = fTOCSection.stringsLength;
SetCurrentSection(&fTOCSection);
if (fTOCSection.currentOffset < fTOCSection.uncompressedLength) {
fTOCSection.uncompressedLength - fTOCSection.currentOffset);
if (size > fTOCSection.uncompressedLength - fTOCSection.currentOffset) {
_buffer = fTOCSection.data + fTOCSection.currentOffset;
fTOCSection.currentOffset += size;