Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 17563f9f authored by Brian Carlstrom's avatar Brian Carlstrom
Browse files

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
parent 73aa9002
Loading
Loading
Loading
Loading
+8 −0
Original line number Original line Diff line number Diff line
@@ -30,7 +30,11 @@ ANDROID_SINGLETON_STATIC_INSTANCE(GraphicLog)


static inline
static inline
void writeInt32(uint8_t* base, size_t& pos, int32_t value) {
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);
    int32_t v = htole32(value);
#endif
    base[pos] = EVENT_TYPE_INT;
    base[pos] = EVENT_TYPE_INT;
    memcpy(&base[pos+1], &v, sizeof(int32_t));
    memcpy(&base[pos+1], &v, sizeof(int32_t));
    pos += 1+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
static inline
void writeInt64(uint8_t* base,  size_t& pos, int64_t value) {
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);
    int64_t v = htole64(value);
#endif
    base[pos] = EVENT_TYPE_LONG;
    base[pos] = EVENT_TYPE_LONG;
    memcpy(&base[pos+1], &v, sizeof(int64_t));
    memcpy(&base[pos+1], &v, sizeof(int64_t));
    pos += 1+sizeof(int64_t);
    pos += 1+sizeof(int64_t);