summaryrefslogtreecommitdiff
path: root/libs/androidfw/tests/AssetManager2_bench.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libs/androidfw/tests/AssetManager2_bench.cpp')
-rw-r--r--libs/androidfw/tests/AssetManager2_bench.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/libs/androidfw/tests/AssetManager2_bench.cpp b/libs/androidfw/tests/AssetManager2_bench.cpp
index 437e14772964..c7ae618991b9 100644
--- a/libs/androidfw/tests/AssetManager2_bench.cpp
+++ b/libs/androidfw/tests/AssetManager2_bench.cpp
@@ -139,9 +139,13 @@ static void BM_AssetManagerGetBag(benchmark::State& state) {
assets.SetApkAssets({apk.get()});
while (state.KeepRunning()) {
- const ResolvedBag* bag = assets.GetBag(app::R::style::StyleTwo);
- const auto bag_end = end(bag);
- for (auto iter = begin(bag); iter != bag_end; ++iter) {
+ auto bag = assets.GetBag(app::R::style::StyleTwo);
+ if (!bag.has_value()) {
+ state.SkipWithError("Failed to load get bag");
+ return;
+ }
+ const auto bag_end = end(*bag);
+ for (auto iter = begin(*bag); iter != bag_end; ++iter) {
uint32_t key = iter->key;
Res_value value = iter->value;
benchmark::DoNotOptimize(key);