OSDN Git Service

Handle OutOfMemoryError when decoding images in ThumbnailUtils
authorChrister Fletcher <christer.fletcher@sonyericsson.com>
Mon, 21 Mar 2011 14:56:27 +0000 (15:56 +0100)
committerChih-Wei Huang <cwhuang@linux.org.tw>
Fri, 5 Aug 2011 08:10:07 +0000 (16:10 +0800)
Added handling of OutOfMemoryError handling to createImageThumbnail
method in ThumbnailUtils.java. During mediascanner run it would run
out of memory when trying to decode very large images. Now it handles
this error and returns null which is handled by the media scanner.

Change-Id: Ie68722dfa1cedd3c0847bf483baa40c4827ad5a8

media/java/android/media/ThumbnailUtils.java

index 494b4cb..b276e33 100644 (file)
@@ -83,7 +83,7 @@ public class ThumbnailUtils {
      *
      * @param filePath the path of image file
      * @param kind could be MINI_KIND or MICRO_KIND
-     * @return Bitmap
+     * @return Bitmap, or null on failures
      *
      * @hide This method is only used by media framework and media provider internally.
      */
@@ -123,6 +123,8 @@ public class ThumbnailUtils {
                 bitmap = BitmapFactory.decodeFileDescriptor(fd, null, options);
             } catch (IOException ex) {
                 Log.e(TAG, "", ex);
+            } catch (OutOfMemoryError oom) {
+                Log.e(TAG, "Unable to decode file " + filePath + ". OutOfMemoryError.", oom);
             }
         }