diff --git a/dss.c b/dss.c
index 7b3d9d485b9542f52b27603bd9595645d5f4decc..5cf018d24a28de474b33377b8ce81ddc00e67e26 100644
--- a/dss.c
+++ b/dss.c
@@ -419,7 +419,7 @@ void buf_put_dss_sign(buffer* buf, dss_key *key, const unsigned char* data,
 	mp_clear(&dss_s);
 	buf_incrwritepos(buf, writelen);
 
-	mp_clear_multi(&dss_k, &dss_temp1, &dss_temp1, &dss_r, &dss_s,
+	mp_clear_multi(&dss_k, &dss_temp1, &dss_temp2, &dss_r, &dss_s,
 			&dss_m, NULL);
 	
 	/* create the signature to return */