mirror of
https://github.com/moparisthebest/open-keychain
synced 2024-11-23 17:22:16 -05:00
The current implementation of saving new generated key doesn't save the key due to the public key of master key id can not be resolved by ProviderHelper.getPGPPublicKeyByKeyId (via URI/Cursor). Workaround uses local keys-arraylist for resoving the pubkey of master key id.
This commit is contained in:
parent
1b57a10bb6
commit
9c18062951
@ -543,7 +543,15 @@ public class KeychainIntentService extends IntentService
|
|||||||
ProviderHelper.getPGPSecretKeyRingByKeyId(this, masterKeyId),
|
ProviderHelper.getPGPSecretKeyRingByKeyId(this, masterKeyId),
|
||||||
oldPassPhrase, newPassPhrase);
|
oldPassPhrase, newPassPhrase);
|
||||||
} else {
|
} else {
|
||||||
PGPPublicKey pubkey = ProviderHelper.getPGPPublicKeyByKeyId(this, masterKeyId);
|
//TODO: Workaround due to ProviderHelper.getPGPPublicKeyByKeyId can not resolve public key of master-key id with uri/cursor
|
||||||
|
PGPPublicKey pubkey = null;
|
||||||
|
for(PGPSecretKey key : keys) {
|
||||||
|
PGPPublicKey tempKey = key.getPublicKey();
|
||||||
|
if (tempKey.getKeyID() == masterKeyId) {
|
||||||
|
pubkey = tempKey;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//PGPPublicKey pubkey = ProviderHelper.getPGPPublicKeyByKeyId(this, masterKeyId);
|
||||||
keyOperations.buildSecretKey(userIds, keys, keysUsages, keysExpiryDates,
|
keyOperations.buildSecretKey(userIds, keys, keysUsages, keysExpiryDates,
|
||||||
pubkey, oldPassPhrase, newPassPhrase);
|
pubkey, oldPassPhrase, newPassPhrase);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user