summaryrefslogtreecommitdiffstats
path: root/src/com/android/providers/downloads/OpenHelper.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/providers/downloads/OpenHelper.java')
-rw-r--r--src/com/android/providers/downloads/OpenHelper.java9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/com/android/providers/downloads/OpenHelper.java b/src/com/android/providers/downloads/OpenHelper.java
index 4eb319c4..0a12daac 100644
--- a/src/com/android/providers/downloads/OpenHelper.java
+++ b/src/com/android/providers/downloads/OpenHelper.java
@@ -32,6 +32,7 @@ import android.database.Cursor;
import android.net.Uri;
import android.provider.Downloads.Impl.RequestHeaders;
import android.util.Log;
+import android.webkit.MimeTypeMap;
import java.io.File;
@@ -75,6 +76,14 @@ public class OpenHelper {
final Uri localUri = getCursorUri(cursor, COLUMN_LOCAL_URI);
final File file = getCursorFile(cursor, COLUMN_LOCAL_FILENAME);
String mimeType = getCursorString(cursor, COLUMN_MEDIA_TYPE);
+ if ("application/octet-stream".equals(mimeType)) {
+ MimeTypeMap m = MimeTypeMap.getSingleton();
+ String guess = m.getMimeTypeFromExtension(
+ m.getFileExtensionFromUrl(localUri.toString()));
+ if (guess != null) {
+ mimeType = guess;
+ }
+ }
mimeType = DownloadDrmHelper.getOriginalMimeType(context, file, mimeType);
final Intent intent = new Intent(Intent.ACTION_VIEW);