summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrian Carlstrom <bdc@google.com>2010-09-16 16:28:13 -0700
committerBrian Carlstrom <bdc@google.com>2010-09-16 16:28:13 -0700
commit17563f9fb30dc5d2ad85878c436eabf7f1296a3e (patch)
treeb6c57acdf88bd123df664ad64dc76892828d11a8
parent73aa9002a9417581fd7fdd3815650f696e144963 (diff)
downloadframeworks_native-17563f9fb30dc5d2ad85878c436eabf7f1296a3e.zip
frameworks_native-17563f9fb30dc5d2ad85878c436eabf7f1296a3e.tar.gz
frameworks_native-17563f9fb30dc5d2ad85878c436eabf7f1296a3e.tar.bz2
Fix sim-eng build on Hardy
Older glibc version do not include BSD htole32 and htole64 which are present in bionic. This worksaround a sim-eng build issue by only using htole32/htole64 if the host is not little endian. Change-Id: Ia8d0d36285f3c34c51a331790458e52a21c2925f
-rw-r--r--libs/ui/GraphicLog.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/libs/ui/GraphicLog.cpp b/libs/ui/GraphicLog.cpp
index b55ce23..7ba2779 100644
--- a/libs/ui/GraphicLog.cpp
+++ b/libs/ui/GraphicLog.cpp
@@ -30,7 +30,11 @@ ANDROID_SINGLETON_STATIC_INSTANCE(GraphicLog)
static inline
void writeInt32(uint8_t* base, size_t& pos, int32_t value) {
+#ifdef HAVE_LITTLE_ENDIAN
+ int32_t v = value;
+#else
int32_t v = htole32(value);
+#endif
base[pos] = EVENT_TYPE_INT;
memcpy(&base[pos+1], &v, sizeof(int32_t));
pos += 1+sizeof(int32_t);
@@ -38,7 +42,11 @@ void writeInt32(uint8_t* base, size_t& pos, int32_t value) {
static inline
void writeInt64(uint8_t* base, size_t& pos, int64_t value) {
+#ifdef HAVE_LITTLE_ENDIAN
+ int64_t v = value;
+#else
int64_t v = htole64(value);
+#endif
base[pos] = EVENT_TYPE_LONG;
memcpy(&base[pos+1], &v, sizeof(int64_t));
pos += 1+sizeof(int64_t);