summaryrefslogtreecommitdiff
path: root/base/properties.cpp
diff options
context:
space:
mode:
authorSteven Laver <lavers@google.com>2019-12-12 15:29:36 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2019-12-12 15:29:36 +0000
commita239544c7b06814b70fd970de7eaac234682fa52 (patch)
treea4298d61f9b73642f350799b1157e49b65f4e1e8 /base/properties.cpp
parent63de1e1c8d7824c241f22de67edf54f4f1eaeea5 (diff)
parent5319412e5305a3b4bcecf251a2955c09a6e9837e (diff)
Merge "Merge RP1A.191203.001" into r-keystone-qcom-dev
Diffstat (limited to 'base/properties.cpp')
-rw-r--r--base/properties.cpp15
1 files changed, 9 insertions, 6 deletions
diff --git a/base/properties.cpp b/base/properties.cpp
index d5a5918ce..4731bf249 100644
--- a/base/properties.cpp
+++ b/base/properties.cpp
@@ -28,19 +28,22 @@
#include <map>
#include <string>
+#include <android-base/parsebool.h>
#include <android-base/parseint.h>
namespace android {
namespace base {
bool GetBoolProperty(const std::string& key, bool default_value) {
- std::string value = GetProperty(key, "");
- if (value == "1" || value == "y" || value == "yes" || value == "on" || value == "true") {
- return true;
- } else if (value == "0" || value == "n" || value == "no" || value == "off" || value == "false") {
- return false;
+ switch (ParseBool(GetProperty(key, ""))) {
+ case ParseBoolResult::kError:
+ return default_value;
+ case ParseBoolResult::kFalse:
+ return false;
+ case ParseBoolResult::kTrue:
+ return true;
}
- return default_value;
+ __builtin_unreachable();
}
template <typename T>