summaryrefslogtreecommitdiffstats
path: root/libs/androidfw
diff options
context:
space:
mode:
authorAdam Lesinski <adamlesinski@google.com>2014-10-01 17:11:10 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-10-01 17:11:10 +0000
commit7923da5f5d05f256179e0d926b3b55bbf1d29a8e (patch)
treefe4ac6fad31daf5deb739cbfc742d50c1172d6a6 /libs/androidfw
parente5ee1dec2cb25a47b6193e752d4fc4c36022e3f0 (diff)
parent06f380e9efa4698c223077cacaa2df80a704ef96 (diff)
downloadframeworks_base-7923da5f5d05f256179e0d926b3b55bbf1d29a8e.zip
frameworks_base-7923da5f5d05f256179e0d926b3b55bbf1d29a8e.tar.gz
frameworks_base-7923da5f5d05f256179e0d926b3b55bbf1d29a8e.tar.bz2
am 06f380e9: am 95731abe: am bb7b5197: am cd8e7381: Merge "Fix issue with using locally defined attrs in a shared lib" into lmp-dev
* commit '06f380e9efa4698c223077cacaa2df80a704ef96': Fix issue with using locally defined attrs in a shared lib
Diffstat (limited to 'libs/androidfw')
-rw-r--r--libs/androidfw/ResourceTypes.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/libs/androidfw/ResourceTypes.cpp b/libs/androidfw/ResourceTypes.cpp
index f72532f..38dfe03 100644
--- a/libs/androidfw/ResourceTypes.cpp
+++ b/libs/androidfw/ResourceTypes.cpp
@@ -1185,7 +1185,11 @@ uint32_t ResXMLParser::getAttributeNameResID(size_t idx) const
{
int32_t id = getAttributeNameID(idx);
if (id >= 0 && (size_t)id < mTree.mNumResIds) {
- return dtohl(mTree.mResIds[id]);
+ uint32_t resId = dtohl(mTree.mResIds[id]);
+ if (mTree.mDynamicRefTable == NULL ||
+ mTree.mDynamicRefTable->lookupResourceId(&resId) == NO_ERROR) {
+ return resId;
+ }
}
return 0;
}