OSDN Git Service

Fix sim-eng build on Hardy
authorBrian Carlstrom <bdc@google.com>
Thu, 16 Sep 2010 23:28:13 +0000 (16:28 -0700)
committerBrian Carlstrom <bdc@google.com>
Thu, 16 Sep 2010 23:28:13 +0000 (16:28 -0700)
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

libs/ui/GraphicLog.cpp

index b55ce23..7ba2779 100644 (file)
@@ -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);