diff options
| author | MÃ¥rten Kongstad <marten.kongstad@sonyericsson.com> | 2011-05-19 16:02:35 +0200 |
|---|---|---|
| committer | Alex Ray <aray@google.com> | 2013-07-30 13:56:56 -0700 |
| commit | b0ce850fac6b14a54990b98b3ac0b34bd2416653 (patch) | |
| tree | ac9d16e6802bbfe6cc8f40a4886b3140a4dc3aa4 /libs/utils | |
| parent | 1a20993c1000da3f008b34b7a5e6dbbd6fe291a6 (diff) | |
| download | system_core-b0ce850fac6b14a54990b98b3ac0b34bd2416653.zip system_core-b0ce850fac6b14a54990b98b3ac0b34bd2416653.tar.gz system_core-b0ce850fac6b14a54990b98b3ac0b34bd2416653.tar.bz2 | |
Continue idmap generation even if name lookup fails.
In resources.arsc files, a resource is represented by a specification
block and one or more value blocks. In rare cases, a resource name
is also given a new resource ID, a specification block and no values
blocks. This commit ensures idmap generation does not fail if such an
entry is encountered.
Change-Id: I32302a0b07a7a320b7eeb31886931be3bb7b7e9a
Diffstat (limited to 'libs/utils')
| -rw-r--r-- | libs/utils/ResourceTypes.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libs/utils/ResourceTypes.cpp b/libs/utils/ResourceTypes.cpp index 784c9d2..c001ec9 100644 --- a/libs/utils/ResourceTypes.cpp +++ b/libs/utils/ResourceTypes.cpp @@ -4314,7 +4314,8 @@ status_t ResTable::createIdmap(const ResTable& overlay, uint32_t originalCrc, ui | (0x0000ffff & (entryIndex)); resource_name resName; if (!this->getResourceName(resID, &resName)) { - return UNKNOWN_ERROR; + LOGW("idmap: resource 0x%08x has spec but lacks values, skipping\n", resID); + continue; } const String16 overlayType(resName.type, resName.typeLen); |
