diff --git a/ChangeLog b/ChangeLog
index 36ed25daad59542108682f6b812393265b71fe64..b34dd6479da50bde2b983955840f22baa8b78fab 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
 2004-01-08  Niels M�ller  <niels@s3.kth.se>
 
+	* dsa-keygen.c (dsa_nist_gen): Fixed declaration/statement order.
+
 	* rsa-keygen.c (bignum_next_prime): Fixed off-by-one error when
 	comparing input to the largest listed prime. General cleanup, as
 	prime_limit > 0 always. Use TMP_DECL and TMP_ALLOC.
diff --git a/dsa-keygen.c b/dsa-keygen.c
index beb895edc6aca96e53d7c70244ccaa6ade6ab6c4..9f5172250d28caa37f2790bd4eb14375f3a5bba9 100644
--- a/dsa-keygen.c
+++ b/dsa-keygen.c
@@ -122,8 +122,9 @@ dsa_nist_gen(mpz_t p, mpz_t q,
 	/* Official maximum key size: L = 1024 => n = 6 */
 	TMP_DECL(buffer, uint8_t, (6 + 1) * SHA1_DIGEST_SIZE);
 	unsigned size = (n+1) * SHA1_DIGEST_SIZE;
-	TMP_ALLOC(buffer, size);
 	unsigned i, j;
+
+	TMP_ALLOC(buffer, size);
 	
 	for (i = 0, j = 2; i<4096; i++, j+= n+1)
 	  {