summaryrefslogtreecommitdiffstats
path: root/logd/tests/logd_test.cpp
diff options
context:
space:
mode:
authorJaesung Chung <jaesung@google.com>2017-06-15 19:46:44 +0900
committerJaesung Chung <jaesung@google.com>2017-06-16 17:45:37 +0900
commit23f1d09b744f9c454eff0a42bcd8ad04ec12447f (patch)
tree77da68008e723257ffee12bbe72ede7dc139ec96 /logd/tests/logd_test.cpp
parent72ca50359e5b0ad4930fbc7e0762285e317e7f85 (diff)
downloadsystem_core-23f1d09b744f9c454eff0a42bcd8ad04ec12447f.tar.gz
system_core-23f1d09b744f9c454eff0a42bcd8ad04ec12447f.tar.bz2
system_core-23f1d09b744f9c454eff0a42bcd8ad04ec12447f.zip
logd-unit-tests: make sure use unsigned types when reading le
The get4LE method needs to use unsigned types since the sign char values can lead to producing wrong values. Bug: 62599757 Test: passes all test cases of logd-unit-tests. Change-Id: Ifaf83533d847ea4fbe0cd46a978f4dabbfa7df8d
Diffstat (limited to 'logd/tests/logd_test.cpp')
-rw-r--r--logd/tests/logd_test.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/logd/tests/logd_test.cpp b/logd/tests/logd_test.cpp
index cd802123e..4397b144c 100644
--- a/logd/tests/logd_test.cpp
+++ b/logd/tests/logd_test.cpp
@@ -933,8 +933,12 @@ TEST(logd, getEventTag_newentry) {
}
#ifdef __ANDROID__
-static inline int32_t get4LE(const char* src) {
- return src[0] | (src[1] << 8) | (src[2] << 16) | (src[3] << 24);
+static inline uint32_t get4LE(const uint8_t* src) {
+ return src[0] | (src[1] << 8) | (src[2] << 16) | (src[3] << 24);
+}
+
+static inline uint32_t get4LE(const char* src) {
+ return get4LE(reinterpret_cast<const uint8_t*>(src));
}
#endif