From 96162b660840c7bcfb6dec1bb6e3ade5f715c563 Mon Sep 17 00:00:00 2001 From: Thialfihar Date: Tue, 17 Aug 2010 12:50:42 +0000 Subject: properly URI-decode file:// URIs, so the files can be found Fixes issues 63 --- src/org/thialfihar/android/apg/DataSource.java | 2 +- src/org/thialfihar/android/apg/DecryptActivity.java | 2 +- src/org/thialfihar/android/apg/EncryptActivity.java | 2 +- src/org/thialfihar/android/apg/KeyListActivity.java | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/org/thialfihar/android/apg/DataSource.java b/src/org/thialfihar/android/apg/DataSource.java index 34583ab59..3ad1d0b07 100644 --- a/src/org/thialfihar/android/apg/DataSource.java +++ b/src/org/thialfihar/android/apg/DataSource.java @@ -50,7 +50,7 @@ public class DataSource { if (mContentUri != null) { if (mContentUri.getScheme().equals("file")) { // get the rest after "file://" - String path = mContentUri.toString().substring(6); + String path = Uri.decode(mContentUri.toString().substring(7)); if (path.startsWith(Environment.getExternalStorageDirectory().getAbsolutePath())) { if (!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) { throw new GeneralException(context.getString(R.string.error_externalStorageNotReady)); diff --git a/src/org/thialfihar/android/apg/DecryptActivity.java b/src/org/thialfihar/android/apg/DecryptActivity.java index a23e58ca4..a4f4225e5 100644 --- a/src/org/thialfihar/android/apg/DecryptActivity.java +++ b/src/org/thialfihar/android/apg/DecryptActivity.java @@ -217,7 +217,7 @@ public class DecryptActivity extends BaseActivity { } else if (Apg.Intent.DECRYPT_FILE.equals(mIntent.getAction())) { mInputFilename = mIntent.getDataString(); if ("file".equals(mIntent.getScheme())) { - mInputFilename = mInputFilename.substring(6); + mInputFilename = Uri.decode(mInputFilename.substring(7)); } mFilename.setText(mInputFilename); guessOutputFilename(); diff --git a/src/org/thialfihar/android/apg/EncryptActivity.java b/src/org/thialfihar/android/apg/EncryptActivity.java index e1e773216..cd6d53b41 100644 --- a/src/org/thialfihar/android/apg/EncryptActivity.java +++ b/src/org/thialfihar/android/apg/EncryptActivity.java @@ -349,7 +349,7 @@ public class EncryptActivity extends BaseActivity { } } else if (Apg.Intent.ENCRYPT_FILE.equals(mIntent.getAction())) { if ("file".equals(mIntent.getScheme())) { - mInputFilename = mIntent.getDataString().replace("file://", ""); + mInputFilename = Uri.decode(mIntent.getDataString().replace("file://", "")); mFilename.setText(mInputFilename); guessOutputFilename(); } diff --git a/src/org/thialfihar/android/apg/KeyListActivity.java b/src/org/thialfihar/android/apg/KeyListActivity.java index fbe74a995..647437d8d 100644 --- a/src/org/thialfihar/android/apg/KeyListActivity.java +++ b/src/org/thialfihar/android/apg/KeyListActivity.java @@ -102,7 +102,7 @@ public class KeyListActivity extends BaseActivity { Intent intent = getIntent(); if (Apg.Intent.IMPORT.equals(intent.getAction())) { if ("file".equals(intent.getScheme()) && intent.getDataString() != null) { - mImportFilename = intent.getDataString().replace("file://", ""); + mImportFilename = Uri.decode(intent.getDataString().replace("file://", "")); } else { mImportData = intent.getStringExtra(Apg.EXTRA_TEXT); } -- cgit v1.2.3