From 7cf34b05397a32747757eac4a5715ad9bd76f82f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dominik=20Sch=C3=BCrmann?= Date: Thu, 29 Apr 2021 17:52:31 +0200 Subject: [PATCH] do not call digestCalculator.getDigest() twice --- .../jcajce/NfcSyncPGPContentSignerBuilder.java | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/OpenKeychain/src/main/java/org/bouncycastle/openpgp/operator/jcajce/NfcSyncPGPContentSignerBuilder.java b/OpenKeychain/src/main/java/org/bouncycastle/openpgp/operator/jcajce/NfcSyncPGPContentSignerBuilder.java index 771f45918..d9adc05a1 100644 --- a/OpenKeychain/src/main/java/org/bouncycastle/openpgp/operator/jcajce/NfcSyncPGPContentSignerBuilder.java +++ b/OpenKeychain/src/main/java/org/bouncycastle/openpgp/operator/jcajce/NfcSyncPGPContentSignerBuilder.java @@ -137,12 +137,7 @@ public class NfcSyncPGPContentSignerBuilder } public byte[] getSignature() { - byte[] digest; - if (enablePreHash) { - digest = digestCalculator.getDigest(); - } else { - digest = ((ByteArrayOutputStream) getOutputStream()).toByteArray(); - } + byte[] digest = getDigest(); ByteBuffer buf = ByteBuffer.wrap(digest); if (signedHashes.containsKey(buf)) { return (byte[]) signedHashes.get(buf); @@ -154,6 +149,9 @@ public class NfcSyncPGPContentSignerBuilder public byte[] getDigest() { + if (digest != null) { + return digest; + } if (enablePreHash) { digest = digestCalculator.getDigest(); } else {