Explorar o código

Merge pull request #1051 from owncloud/fix_send

Fix sending of files to external apps when their pathname includes charactes requireing URL encoding.
David A. Velasco %!s(int64=9) %!d(string=hai) anos
pai
achega
5d421b61e3
Modificáronse 1 ficheiros con 4 adicións e 2 borrados
  1. 4 2
      src/com/owncloud/android/files/FileOperationsHelper.java

+ 4 - 2
src/com/owncloud/android/files/FileOperationsHelper.java

@@ -188,12 +188,14 @@ public class FileOperationsHelper {
     
     public void sendDownloadedFile(OCFile file) {
         if (file != null) {
+            String storagePath = file.getStoragePath();
+            String encodedStoragePath = WebdavUtils.encodePath(storagePath);
             Intent sendIntent = new Intent(android.content.Intent.ACTION_SEND);
             // set MimeType
             sendIntent.setType(file.getMimetype());
-            sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://" + file.getStoragePath()));
+            sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://" + encodedStoragePath));
             sendIntent.putExtra(Intent.ACTION_SEND, true);      // Send Action
-            
+
             // Show dialog, without the own app
             String[] packagesToExclude = new String[] { mFileActivity.getPackageName() };
             DialogFragment chooserDialog = ShareLinkToDialog.newInstance(sendIntent, packagesToExclude, file);