Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 02dfd263 authored by Dianne Hackborn's avatar Dianne Hackborn
Browse files

Fix bug with calls to the typeless open API.

Fix bug where we weren't using the default stream if a caller
requested "*/*" as a type.  This broke apps calling the old open
APIs on content providers that did not report MIME types.

Change-Id: Id6e3e64e36cb8637097c3a7834b09407c27487d2
parent aba18852
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -851,8 +851,14 @@ public abstract class ContentProvider implements ComponentCallbacks {
     */
    public AssetFileDescriptor openTypedAssetFile(Uri uri, String mimeTypeFilter, Bundle opts)
            throws FileNotFoundException {
        if ("*/*".equals(mimeTypeFilter)) {
            // If they can take anything, the untyped open call is good enough.
            return openAssetFile(uri, "r");
        }
        String baseType = getType(uri);
        if (baseType != null && compareMimeTypes(baseType, mimeTypeFilter)) {
            // Use old untyped open call if this provider has a type for this
            // URI and it matches the request.
            return openAssetFile(uri, "r");
        }
        throw new FileNotFoundException("Can't open " + uri + " as type " + mimeTypeFilter);