try to make in-valid-session detection work for pgp
This commit is contained in:
parent
d2c5a939ed
commit
28ebf927fb
|
@ -743,13 +743,20 @@ public class Message extends AbstractEntity {
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isValidInSession() {
|
public boolean isValidInSession() {
|
||||||
int pastEncryption = this.getPreviousEncryption();
|
int pastEncryption = getCleanedEncryption(this.getPreviousEncryption());
|
||||||
int futureEncryption = this.getNextEncryption();
|
int futureEncryption = getCleanedEncryption(this.getNextEncryption());
|
||||||
|
|
||||||
boolean inUnencryptedSession = pastEncryption == ENCRYPTION_NONE
|
boolean inUnencryptedSession = pastEncryption == ENCRYPTION_NONE
|
||||||
|| futureEncryption == ENCRYPTION_NONE
|
|| futureEncryption == ENCRYPTION_NONE
|
||||||
|| pastEncryption != futureEncryption;
|
|| pastEncryption != futureEncryption;
|
||||||
|
|
||||||
return inUnencryptedSession || this.getEncryption() == pastEncryption;
|
return inUnencryptedSession || getCleanedEncryption(this.getEncryption()) == pastEncryption;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static int getCleanedEncryption(int encryption) {
|
||||||
|
if (encryption == ENCRYPTION_DECRYPTED || encryption == ENCRYPTION_DECRYPTION_FAILED) {
|
||||||
|
return ENCRYPTION_PGP;
|
||||||
|
}
|
||||||
|
return encryption;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue