diff options
Diffstat (limited to 'graphics')
-rw-r--r-- | graphics/java/android/graphics/ImageDecoder.java | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/graphics/java/android/graphics/ImageDecoder.java b/graphics/java/android/graphics/ImageDecoder.java index 97a2e0f42694..83432c362672 100644 --- a/graphics/java/android/graphics/ImageDecoder.java +++ b/graphics/java/android/graphics/ImageDecoder.java @@ -277,6 +277,10 @@ public final class ImageDecoder implements AutoCloseable { assetFd = mResolver.openAssetFileDescriptor(mUri, "r"); } } catch (FileNotFoundException e) { + // Handled below, along with the case where assetFd was set to null. + } + + if (assetFd == null) { // Some images cannot be opened as AssetFileDescriptors (e.g. // bmp, ico). Open them as InputStreams. InputStream is = mResolver.openInputStream(mUri); @@ -286,9 +290,7 @@ public final class ImageDecoder implements AutoCloseable { return createFromStream(is, true, preferAnimation, this); } - if (assetFd == null) { - throw new FileNotFoundException(mUri.toString()); - } + return createFromAssetFileDescriptor(assetFd, preferAnimation, this); } } |