diff --git a/ChangeLog b/ChangeLog
index 0bba729fcce3712196f0998d552b21371f64ddf7..831a328087223992dcc7f0f750601f258ecd3f45 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
 2014-04-11  Niels Möller  <nisse@lysator.liu.se>
 
+	* eax.c (block16_xor): Fixed bug effecting 32-bit platforms.
+
 	* Makefile.in (DISTFILES): Deleted memxor.c, already included via
 	nettle_SOURCES.
 	* tools/Makefile.in (SOURCES): Add nettle-pbkdf2.c.
diff --git a/eax.c b/eax.c
index dce7dd91339ca598e95a99ac8b95b9517d6d610a..44d54670f7263a8907e62bb63bd55026f0a4871b 100644
--- a/eax.c
+++ b/eax.c
@@ -49,8 +49,8 @@ block16_xor (union nettle_block16 *dst, const union nettle_block16 *src)
   dst->w[0] ^= src->w[0];
   dst->w[1] ^= src->w[1];
 #if SIZEOF_LONG == 4
-  dst->w[2] = src->w[2];
-  dst->w[3] = src->w[3];
+  dst->w[2] ^= src->w[2];
+  dst->w[3] ^= src->w[3];
 #endif
 }