diff options
author | 2020-11-13 00:05:40 +0000 | |
---|---|---|
committer | 2020-11-13 00:05:40 +0000 | |
commit | c234812e275368f47d798112e1de49a8aad99753 (patch) | |
tree | 2c029a88ba773fa77936dc89ccd4f6328e2ece07 /tools/split-select/Main.cpp | |
parent | 8f8eaec80190bc4a35851b9efbef412dd63efb70 (diff) | |
parent | 5602dc9374934a42964e0f57faa3c0aad43003e1 (diff) |
Merge changes from topic "libaw-hardening"
* changes:
Do not cache bag parent stack until requested
Cache resolved theme values
libandroidfw hardening for IncFs
Diffstat (limited to 'tools/split-select/Main.cpp')
-rw-r--r-- | tools/split-select/Main.cpp | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/tools/split-select/Main.cpp b/tools/split-select/Main.cpp index d3eb012a80e9..e6966db0aa00 100644 --- a/tools/split-select/Main.cpp +++ b/tools/split-select/Main.cpp @@ -182,14 +182,18 @@ static bool getAppInfo(const String8& path, AppInfo& outInfo) { if (type >= Res_value::TYPE_FIRST_INT && type <= Res_value::TYPE_LAST_INT) { outInfo.minSdkVersion = xml.getAttributeData(idx); } else if (type == Res_value::TYPE_STRING) { - String8 minSdk8(xml.getStrings().string8ObjectAt(idx)); - char* endPtr; - int minSdk = strtol(minSdk8.string(), &endPtr, 10); - if (endPtr != minSdk8.string() + minSdk8.size()) { - fprintf(stderr, "warning: failed to parse android:minSdkVersion '%s'\n", - minSdk8.string()); + auto minSdk8 = xml.getStrings().string8ObjectAt(idx); + if (!minSdk8.has_value()) { + fprintf(stderr, "warning: failed to retrieve android:minSdkVersion.\n"); } else { - outInfo.minSdkVersion = minSdk; + char *endPtr; + int minSdk = strtol(minSdk8->string(), &endPtr, 10); + if (endPtr != minSdk8->string() + minSdk8->size()) { + fprintf(stderr, "warning: failed to parse android:minSdkVersion '%s'\n", + minSdk8->string()); + } else { + outInfo.minSdkVersion = minSdk; + } } } else { fprintf(stderr, "warning: unrecognized value for android:minSdkVersion.\n"); |