diff --git a/twofish.c b/twofish.c
index 9945a2facca857ab15380819e96de3faf03104a2..3837c3f389f439f179d48108c03610dc2f91b998 100644
--- a/twofish.c
+++ b/twofish.c
@@ -411,9 +411,7 @@ twofish_setup(TWOFISH_context * context, size_t keysize, const UINT8 *key)
     keysize = 32;
   memcpy(key_copy, key, keysize);
 
-  /* FIXME: This truncates the key if it is not a multiple of 4 octets.
-   * Is this really indended? */
-  bytes_to_words(m, key_copy, keysize/4);
+  bytes_to_words(m, key_copy, (keysize + 3)/4);
 
   if (keysize <= 16)
     k = 2;