Merge "Search all packages for a given type string when looking up resources by name" into lmp-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
aeef612f20
@ -4175,12 +4175,15 @@ nope:
|
||||
continue;
|
||||
}
|
||||
|
||||
const ssize_t ti = group->findType16(type, typeLen);
|
||||
const size_t packageCount = group->packages.size();
|
||||
for (size_t pi = 0; pi < packageCount; pi++) {
|
||||
ssize_t ti = group->packages[pi]->typeStrings.indexOfString(type, typeLen);
|
||||
if (ti < 0) {
|
||||
TABLE_NOISY(printf("Type not found in package %s\n", String8(group->name).string()));
|
||||
continue;
|
||||
}
|
||||
|
||||
ti += group->packages[pi]->typeIdOffset;
|
||||
|
||||
const TypeList& typeList = group->types[ti];
|
||||
if (typeList.isEmpty()) {
|
||||
TABLE_NOISY(printf("Expected type structure not found in package %s for index %d\n",
|
||||
@ -4230,6 +4233,7 @@ nope:
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
return 0;
|
||||
|
@ -179,7 +179,7 @@ TEST(SplitFeatureTest, TestNewResourceIsAccessible) {
|
||||
EXPECT_EQ(Res_value::TYPE_STRING, val.dataType);
|
||||
}
|
||||
|
||||
TEST(SplitFeatureTest, TestNewResourceIsAccessibleByName) {
|
||||
TEST(SplitFeatureTest, TestNewResourceNameHasCorrectName) {
|
||||
ResTable table;
|
||||
ASSERT_EQ(NO_ERROR, table.add(basic_arsc, basic_arsc_len));
|
||||
|
||||
@ -200,4 +200,17 @@ TEST(SplitFeatureTest, TestNewResourceIsAccessibleByName) {
|
||||
String16(name.name, name.nameLen));
|
||||
}
|
||||
|
||||
TEST(SplitFeatureTest, TestNewResourceIsAccessibleByName) {
|
||||
ResTable table;
|
||||
ASSERT_EQ(NO_ERROR, table.add(basic_arsc, basic_arsc_len));
|
||||
ASSERT_EQ(NO_ERROR, table.add(feature_arsc, feature_arsc_len));
|
||||
|
||||
const String16 name("test3");
|
||||
const String16 type("string");
|
||||
const String16 package("com.android.test.basic");
|
||||
ASSERT_EQ(base::R::string::test3, table.identifierForName(name.string(), name.size(),
|
||||
type.string(), type.size(),
|
||||
package.string(), package.size()));
|
||||
}
|
||||
|
||||
} // namespace
|
||||
|
Reference in New Issue
Block a user