diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/UncachedPublicKey.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/UncachedPublicKey.java index 4305d8a12..977ddff07 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/UncachedPublicKey.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/UncachedPublicKey.java @@ -344,6 +344,12 @@ public class UncachedPublicKey { continue; } + // Previous signature had key flags, but new one doesn't + if (!sig.getHashedSubPackets().hasSubpacket(SignatureSubpacketTags.KEY_FLAGS) + && mostRecentSig.getHashedSubPackets().hasSubpacket(SignatureSubpacketTags.KEY_FLAGS)) { + continue; + } + // Otherwise, note it down as the new "most recent" one mostRecentSig = sig; }