diff options
| author | 2010-02-12 17:48:36 -0800 | |
|---|---|---|
| committer | 2010-02-12 17:48:36 -0800 | |
| commit | 2be56ccbcff9d5f7b9b3cc0fed3825d4f037ff6a (patch) | |
| tree | 15c7d8553e6cecaec9bdcd61b9a4cd667f46601b /tools/aapt/ResourceTable.cpp | |
| parent | 19bc31c32d75ebebacd85cac2cf4c31108329613 (diff) | |
| parent | b9d2dc2319d1ced5cabedabe0dfbf5add9753dbd (diff) | |
Merge "Add --auto-add-overlay option to aapt. DO NOT MERGE" into eclair
Diffstat (limited to 'tools/aapt/ResourceTable.cpp')
| -rw-r--r-- | tools/aapt/ResourceTable.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/tools/aapt/ResourceTable.cpp b/tools/aapt/ResourceTable.cpp index 19b9b01070a4..b3cf7ea0776d 100644 --- a/tools/aapt/ResourceTable.cpp +++ b/tools/aapt/ResourceTable.cpp @@ -1587,7 +1587,7 @@ status_t ResourceTable::startBag(const SourcePos& sourcePos, sourcePos.file.striing(), sourcePos.line, String8(type).string()); } #endif - if (overlay && !hasBagOrEntry(package, type, name)) { + if (overlay && !mBundle->getAutoAddOverlay() && !hasBagOrEntry(package, type, name)) { bool canAdd = false; sp<Package> p = mPackages.valueFor(package); if (p != NULL) { @@ -3275,12 +3275,13 @@ sp<ResourceTable::Entry> ResourceTable::Type::getEntry(const String16& entry, const SourcePos& sourcePos, const ResTable_config* config, bool doSetIndex, - bool overlay) + bool overlay, + bool autoAddOverlay) { int pos = -1; sp<ConfigList> c = mConfigs.valueFor(entry); if (c == NULL) { - if (overlay == true && mCanAddEntries.indexOf(entry) < 0) { + if (overlay && !autoAddOverlay && mCanAddEntries.indexOf(entry) < 0) { sourcePos.error("Resource at %s appears in overlay but not" " in the base package; use <add-resource> to add.\n", String8(entry).string()); @@ -3592,7 +3593,7 @@ sp<ResourceTable::Entry> ResourceTable::getEntry(const String16& package, if (t == NULL) { return NULL; } - return t->getEntry(name, sourcePos, config, doSetIndex, overlay); + return t->getEntry(name, sourcePos, config, doSetIndex, overlay, mBundle->getAutoAddOverlay()); } sp<const ResourceTable::Entry> ResourceTable::getEntry(uint32_t resID, |