diff options
author | Vincent Breitmoser <valodim@mugenguild.com> | 2015-09-28 17:41:11 +0200 |
---|---|---|
committer | Vincent Breitmoser <valodim@mugenguild.com> | 2015-09-28 18:03:58 +0200 |
commit | 97b2178a29db00258d90d59d6c05a517afc4124f (patch) | |
tree | 1cfcdfc8b3afa9aed9c817b181b33115363ed35e /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/EditKeyOperation.java | |
parent | 66442b9c96c733e508d620ec8ea7cde61b72aeaa (diff) | |
download | open-keychain-97b2178a29db00258d90d59d6c05a517afc4124f.tar.gz open-keychain-97b2178a29db00258d90d59d6c05a517afc4124f.tar.bz2 open-keychain-97b2178a29db00258d90d59d6c05a517afc4124f.zip |
upload: re-add upload by bytes
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/EditKeyOperation.java')
-rw-r--r-- | OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/EditKeyOperation.java | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/EditKeyOperation.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/EditKeyOperation.java index 2e9fa9bc2..cf8928768 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/EditKeyOperation.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/EditKeyOperation.java @@ -134,27 +134,18 @@ public class EditKeyOperation extends BaseOperation<SaveKeyringParcel> { // It's a success, so this must be non-null now UncachedKeyRing ring = modifyResult.getRing(); - // Save the new keyring. - SaveKeyringResult saveResult = mProviderHelper - .saveSecretKeyRing(ring, new ProgressScaler(mProgressable, 60, 95, 100)); - log.add(saveResult, 1); - - // If the save operation didn't succeed, exit here - if (!saveResult.success()) { - return new EditKeyResult(EditKeyResult.RESULT_ERROR, log, null); - } - if (saveParcel.isUpload()) { - UncachedKeyRing publicKeyRing; + byte[] keyringBytes; try { - publicKeyRing = ring.extractPublicKeyRing(); + UncachedKeyRing publicKeyRing = ring.extractPublicKeyRing(); + keyringBytes = publicKeyRing.getEncoded(); } catch (IOException e) { log.add(LogType.MSG_ED_ERROR_EXTRACTING_PUBLIC_UPLOAD, 1); return new EditKeyResult(EditKeyResult.RESULT_ERROR, log, null); } UploadKeyringParcel exportKeyringParcel = - new UploadKeyringParcel(saveParcel.getUploadKeyserver(), ring.getMasterKeyId()); + new UploadKeyringParcel(saveParcel.getUploadKeyserver(), keyringBytes); UploadResult uploadResult = new UploadOperation(mContext, mProviderHelper, mProgressable) @@ -173,6 +164,16 @@ public class EditKeyOperation extends BaseOperation<SaveKeyringParcel> { } } + // Save the new keyring. + SaveKeyringResult saveResult = mProviderHelper + .saveSecretKeyRing(ring, new ProgressScaler(mProgressable, 60, 95, 100)); + log.add(saveResult, 1); + + // If the save operation didn't succeed, exit here + if (!saveResult.success()) { + return new EditKeyResult(EditKeyResult.RESULT_ERROR, log, null); + } + // There is a new passphrase - cache it if (saveParcel.mNewUnlock != null && cryptoInput.mCachePassphrase) { log.add(LogType.MSG_ED_CACHING_NEW, 1); |