import: use filesize from content provider on input uri

This commit is contained in:
Vincent Breitmoser
2015-10-23 16:19:16 +02:00
parent eefb55e934
commit dafa604016

View File

@@ -40,6 +40,7 @@ import org.sufficientlysecure.keychain.ui.adapter.AsyncTaskResultWrapper;
import org.sufficientlysecure.keychain.ui.adapter.ImportKeysAdapter; import org.sufficientlysecure.keychain.ui.adapter.ImportKeysAdapter;
import org.sufficientlysecure.keychain.ui.adapter.ImportKeysListCloudLoader; import org.sufficientlysecure.keychain.ui.adapter.ImportKeysListCloudLoader;
import org.sufficientlysecure.keychain.ui.adapter.ImportKeysListLoader; import org.sufficientlysecure.keychain.ui.adapter.ImportKeysListLoader;
import org.sufficientlysecure.keychain.util.FileHelper;
import org.sufficientlysecure.keychain.util.InputData; import org.sufficientlysecure.keychain.util.InputData;
import org.sufficientlysecure.keychain.util.Log; import org.sufficientlysecure.keychain.util.Log;
import org.sufficientlysecure.keychain.util.ParcelableFileCache.IteratorWithSize; import org.sufficientlysecure.keychain.util.ParcelableFileCache.IteratorWithSize;
@@ -438,13 +439,12 @@ public class ImportKeysListFragment extends ListFragment implements
} else if (dataUri != null) { } else if (dataUri != null) {
try { try {
InputStream inputStream = getActivity().getContentResolver().openInputStream(dataUri); InputStream inputStream = getActivity().getContentResolver().openInputStream(dataUri);
int length = inputStream.available(); long length = FileHelper.getFileSize(getActivity(), dataUri, -1);
inputData = new InputData(inputStream, length); inputData = new InputData(inputStream, length);
} catch (FileNotFoundException e) { } catch (FileNotFoundException e) {
Log.e(Constants.TAG, "FileNotFoundException!", e); Log.e(Constants.TAG, "FileNotFoundException!", e);
} catch (IOException e) { return null;
Log.e(Constants.TAG, "IOException!", e);
} }
} }