Home | History | Annotate | Download | only in androidfw

Lines Matching refs:mHeader

311     : mError(NO_INIT), mOwnedData(NULL), mHeader(NULL), mCache(NULL)
316 : mError(NO_INIT), mOwnedData(NULL), mHeader(NULL), mCache(NULL)
345 mHeader = (const ResStringPool_header*)data;
348 ResStringPool_header* h = const_cast<ResStringPool_header*>(mHeader);
349 h->header.headerSize = dtohs(mHeader->header.headerSize);
350 h->header.type = dtohs(mHeader->header.type);
351 h->header.size = dtohl(mHeader->header.size);
352 h->stringCount = dtohl(mHeader->stringCount);
353 h->styleCount = dtohl(mHeader->styleCount);
354 h->flags = dtohl(mHeader->flags);
355 h->stringsStart = dtohl(mHeader->stringsStart);
356 h->stylesStart = dtohl(mHeader->stylesStart);
359 if (mHeader->header.headerSize > mHeader->header.size
360 || mHeader->header.size > size) {
362 (int)mHeader->header.headerSize, (int)mHeader->header.size, (int)size);
365 mSize = mHeader->header.size;
367 (((const uint8_t*)data)+mHeader->header.headerSize);
369 if (mHeader->stringCount > 0) {
370 if ((mHeader->stringCount*sizeof(uint32_t) < mHeader->stringCount) // uint32 overflow?
371 || (mHeader->header.headerSize+(mHeader->stringCount*sizeof(uint32_t)))
374 (int)(mHeader->header.headerSize+(mHeader->stringCount*sizeof(uint32_t))),
380 if (mHeader->flags&ResStringPool_header::UTF8_FLAG) {
382 mCache = (char16_t**)calloc(mHeader->stringCount, sizeof(char16_t**));
388 (((const uint8_t*)data)+mHeader->stringsStart);
389 if (mHeader->stringsStart >= (mHeader->header.size-sizeof(uint16_t))) {
391 (int)mHeader->stringsStart, (int)mHeader->header.size);
394 if (mHeader->styleCount == 0) {
396 (mHeader->header.size-mHeader->stringsStart)/charSize;
399 if (mHeader->stylesStart >= (mHeader->header.size-sizeof(uint16_t))) {
401 (int)mHeader->stylesStart, (int)mHeader->header.size);
405 if (mHeader->stylesStart <= mHeader->stringsStart) {
407 (int)mHeader->stylesStart, (int)mHeader->stringsStart);
411 (mHeader->stylesStart-mHeader->stringsStart)/charSize;
416 ALOGW("Bad string block: stringCount is %d but pool size is 0\n", (int)mHeader->stringCount);
423 for (i=0; i<mHeader->stringCount; i++) {
426 if (!(mHeader->flags&ResStringPool_header::UTF8_FLAG)) {
435 if ((mHeader->flags&ResStringPool_header::UTF8_FLAG &&
437 (!mHeader->flags&ResStringPool_header::UTF8_FLAG &&
447 if (mHeader->styleCount > 0) {
448 mEntryStyles = mEntries + mHeader->stringCount;
455 if (((const uint8_t*)mEntryStyles-(const uint8_t*)mHeader) > (int)size) {
457 (int)((const uint8_t*)mEntryStyles-(const uint8_t*)mHeader),
462 (((const uint8_t*)data)+mHeader->stylesStart);
463 if (mHeader->stylesStart >= mHeader->header.size) {
465 (int)mHeader->stylesStart, (int)mHeader->header.size);
469 (mHeader->header.size-mHeader->stylesStart)/sizeof(uint32_t);
474 for (i=0; i<mHeader->styleCount; i++) {
513 if (mHeader != NULL && mCache != NULL) {
514 for (size_t x = 0; x < mHeader->stringCount; x++) {
571 if (mError == NO_ERROR && idx < mHeader->stringCount) {
572 const bool isUTF8 = (mHeader->flags&ResStringPool_header::UTF8_FLAG) != 0;
636 if (mError == NO_ERROR && idx < mHeader->stringCount) {
637 const bool isUTF8 = (mHeader->flags&ResStringPool_header::UTF8_FLAG) != 0;
678 if (mError == NO_ERROR && idx < mHeader->styleCount) {
703 if (mHeader->flags&ResStringPool_header::SORTED_FLAG) {
706 ssize_t h = mHeader->stringCount-1;
730 for (int i=mHeader->stringCount-1; i>=0; i--) {
747 return (mError == NO_ERROR) ? mHeader->stringCount : 0;
752 return (mError == NO_ERROR) ? mHeader->styleCount : 0;
757 return (mError == NO_ERROR) ? mHeader->header.size : 0;
762 return (mHeader->flags&ResStringPool_header::SORTED_FLAG)!=0;
767 return (mHeader->flags&ResStringPool_header::UTF8_FLAG)!=0;
1147 (int)(((const uint8_t*)next)-((const uint8_t*)mTree.mHeader)));
1154 (int)(((const uint8_t*)next)-((const uint8_t*)mTree.mHeader)),
1221 mHeader = (const ResXMLTree_header*)data;
1222 mSize = dtohl(mHeader->header.size);
1223 if (dtohs(mHeader->header.headerSize) > mSize || mSize > size) {
1225 (int)dtohs(mHeader->header.headerSize),
1226 (int)dtohl(mHeader->header.size), (int)size);
1231 mDataEnd = ((const uint8_t*)mHeader) + mSize;
1241 (const ResChunk_header*)(((const uint8_t*)mHeader) + dtohs(mHeader->header.headerSize));
1253 (void*)(((uint32_t)chunk)-((uint32_t)mHeader)), type, size));
1373 (int)(((const uint8_t*)node)-((const uint8_t*)mHeader)), (int)mSize);
1377 (int)(((const uint8_t*)node)-((const uint8_t*)mHeader)),
1382 (int)(((const uint8_t*)node)-((const uint8_t*)mHeader)),