diff options
| author | Vincent Breitmoser <valodim@mugenguild.com> | 2014-08-14 22:12:07 +0200 | 
|---|---|---|
| committer | Vincent Breitmoser <valodim@mugenguild.com> | 2014-08-14 22:12:18 +0200 | 
| commit | 09d37a5fa6b431bd7be91aca9a7bbae5af928453 (patch) | |
| tree | b116c3bdebb7b1865937832f99ecd7c879370299 | |
| parent | bc76941bc1e47bc3919f58e29436f8d2a77f3258 (diff) | |
| download | open-keychain-09d37a5fa6b431bd7be91aca9a7bbae5af928453.tar.gz open-keychain-09d37a5fa6b431bd7be91aca9a7bbae5af928453.tar.bz2 open-keychain-09d37a5fa6b431bd7be91aca9a7bbae5af928453.zip  | |
fix keys with no expiry in ui code
3 files changed, 9 insertions, 4 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/OperationResults.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/OperationResults.java index d58392d77..1c83873be 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/OperationResults.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/OperationResults.java @@ -205,13 +205,18 @@ public abstract class OperationResults {          public EditKeyResult(Parcel source) {              super(source); -            mRingMasterKeyId = source.readLong(); +            mRingMasterKeyId = source.readInt() != 0 ? source.readLong() : null;          }          @Override          public void writeToParcel(Parcel dest, int flags) {              super.writeToParcel(dest, flags); -            dest.writeLong(mRingMasterKeyId); +            if (mRingMasterKeyId == null) { +                dest.writeInt(0); +            } else { +                dest.writeInt(1); +                dest.writeLong(mRingMasterKeyId); +            }          }          public static Creator<EditKeyResult> CREATOR = new Creator<EditKeyResult>() { diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/adapter/SubkeysAdapter.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/adapter/SubkeysAdapter.java index d457e75bd..6df84a056 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/adapter/SubkeysAdapter.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/adapter/SubkeysAdapter.java @@ -183,7 +183,7 @@ public class SubkeysAdapter extends CursorAdapter {              SaveKeyringParcel.SubkeyChange subkeyChange = mSaveKeyringParcel.getSubkeyChange(keyId);              if (subkeyChange != null) { -                if (subkeyChange.mExpiry == null) { +                if (subkeyChange.mExpiry == null || subkeyChange.mExpiry == 0L) {                      expiryDate = null;                  } else {                      expiryDate = new Date(subkeyChange.mExpiry * 1000); diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/EditSubkeyExpiryDialogFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/EditSubkeyExpiryDialogFragment.java index aa63f9944..276ad15fc 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/EditSubkeyExpiryDialogFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/EditSubkeyExpiryDialogFragment.java @@ -141,7 +141,7 @@ public class EditSubkeyExpiryDialogFragment extends DialogFragment {                  dismiss();                  Bundle data = new Bundle(); -                data.putSerializable(MESSAGE_DATA_EXPIRY_DATE, null); +                data.putSerializable(MESSAGE_DATA_EXPIRY_DATE, 0L);                  sendMessageToHandler(MESSAGE_NEW_EXPIRY_DATE, data);              }          });  | 
