aboutsummaryrefslogtreecommitdiffstats
path: root/src/org/thialfihar/android/apg/DecryptActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/org/thialfihar/android/apg/DecryptActivity.java')
-rw-r--r--src/org/thialfihar/android/apg/DecryptActivity.java13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/org/thialfihar/android/apg/DecryptActivity.java b/src/org/thialfihar/android/apg/DecryptActivity.java
index b34bbba49..7e31e5f90 100644
--- a/src/org/thialfihar/android/apg/DecryptActivity.java
+++ b/src/org/thialfihar/android/apg/DecryptActivity.java
@@ -436,21 +436,26 @@ public class DecryptActivity extends BaseActivity {
Message msg = new Message();
try {
- InputStream in = null;
+ PositionAwareInputStream in = null;
OutputStream out = null;
+ long size = 0;
+
if (mDecryptTarget == Id.target.message) {
String messageData = mMessage.getText().toString();
- in = new ByteArrayInputStream(messageData.getBytes());
+ in = new PositionAwareInputStream(new ByteArrayInputStream(messageData.getBytes()));
out = new ByteArrayOutputStream();
+ size = messageData.getBytes().length;
} else {
- in = new FileInputStream(mInputFilename);
+ in = new PositionAwareInputStream(new FileInputStream(mInputFilename));
out = new FileOutputStream(mOutputFilename);
+ File file = new File(mInputFilename);
+ size = file.length();
}
if (mSignedOnly) {
data = Apg.verifyText(this, in, out, this);
} else {
- data = Apg.decrypt(this, in, out, Apg.getCachedPassPhrase(getSecretKeyId()),
+ data = Apg.decrypt(this, in, out, size, Apg.getCachedPassPhrase(getSecretKeyId()),
this, mAssumeSymmetricEncryption);
}