aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenis Vlasenko <vda.linux@googlemail.com>2009-04-17 22:20:44 +0000
committerDenis Vlasenko <vda.linux@googlemail.com>2009-04-17 22:20:44 +0000
commit3be2308676607bdb0e901d439e288081c39011a4 (patch)
tree717299afe02e9f34ab6d8b15fa5f14df5877289f
parent66cb86e48962ed96184ef3d1957a8a18c668e47a (diff)
downloadbusybox-3be2308676607bdb0e901d439e288081c39011a4.tar.gz
fix move_to_unaligned32
-rw-r--r--include/platform.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/include/platform.h b/include/platform.h
index 47fd5f63d..317349fed 100644
--- a/include/platform.h
+++ b/include/platform.h
@@ -173,7 +173,10 @@
/* performs reasonably well (gcc usually inlines memcpy here) */
#define move_from_unaligned16(v, u16p) (memcpy(&(v), (u16p), 2))
#define move_from_unaligned32(v, u32p) (memcpy(&(v), (u32p), 4))
-#define move_to_unaligned32(u32p, v) (memcpy((u32p), &(v), 4))
+#define move_to_unaligned32(u32p, v) do { \
+ uint32_t __t = (v); \
+ memcpy((u32p), &__t, 4); \
+} while (0)
#endif
/* ---- Networking ------------------------------------------ */