From dc7877462fe1891d5f0952a405122767cda26a87 Mon Sep 17 00:00:00 2001 From: Chris Manton Date: Sun, 6 Dec 2020 09:23:18 -0800 Subject: [PATCH] gd_shim: Skip legacy dumpsys if no registrants Test: dumpsys on live system Bug: 173755948 Tag: #refactor Change-Id: I658e091c7f4fcd3977baea7534b8bc6d33a736cb --- main/shim/dumpsys.cc | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/main/shim/dumpsys.cc b/main/shim/dumpsys.cc index 2cd859760..f01baf4eb 100644 --- a/main/shim/dumpsys.cc +++ b/main/shim/dumpsys.cc @@ -25,7 +25,7 @@ namespace { constexpr char kModuleName[] = "shim::legacy::dumpsys"; static std::unordered_map* - dumpsys_functions_; + dumpsys_functions_{nullptr}; } // namespace void bluetooth::shim::RegisterDumpsysFunction(const void* token, @@ -42,10 +42,14 @@ void bluetooth::shim::UnregisterDumpsysFunction(const void* token) { } void bluetooth::shim::Dump(int fd, const char** args) { - dprintf(fd, "%s Dumping shim legacy targets:%zd\n", kModuleName, - dumpsys_functions_->size()); - for (auto& dumpsys : *dumpsys_functions_) { - dumpsys.second(fd); + if (dumpsys_functions_ == nullptr) { + dprintf(fd, "%s No registered dumpsys shim legacy targets\n", kModuleName); + } else { + dprintf(fd, "%s Dumping shim legacy targets:%zd\n", kModuleName, + dumpsys_functions_->size()); + for (auto& dumpsys : *dumpsys_functions_) { + dumpsys.second(fd); + } } if (bluetooth::shim::is_gd_stack_started_up()) { bluetooth::shim::GetDumpsys()->Dump(fd, args); -- 2.11.0