diff options
author | Cristoforo Cataldo <cristoforo.cataldo@gmail.com> | 2015-01-07 23:44:47 +0100 |
---|---|---|
committer | Tom Marshall <tdm@cyngn.com> | 2015-03-13 13:37:23 -0700 |
commit | 7a06214b356a96a6c77f8a4f73af4a42501cff25 (patch) | |
tree | 83bfd72e714609fe3665ba0a92b36525d1e60dc3 | |
parent | 0f93653a7b5a622424d26416834a05a2ee1d684a (diff) | |
download | android_packages_providers_MediaProvider-staging/cm-12.1.tar.gz android_packages_providers_MediaProvider-staging/cm-12.1.tar.bz2 android_packages_providers_MediaProvider-staging/cm-12.1.zip |
MediaProvider: Avoid null pointer exceptions inside getCompressedAlbumArtstaging/cm-12.1
Check if path is not null to avoid a java.lang.NullPointerException.
If path is null, the following exception stack trace will be thrown:
java.lang.NullPointerException: Attempt to invoke virtual method 'char[] java.lang.String.toCharArray()' on a null object reference
at java.io.File.fixSlashes(File.java:185)
at java.io.File.<init>(File.java:134)
at com.android.providers.media.MediaProvider.getCompressedAlbumArt(MediaProvider.java:4846)
at com.android.providers.media.MediaProvider.makeThumbInternal(MediaProvider.java:5015)
at com.android.providers.media.MediaProvider.getThumb(MediaProvider.java:5011)
at com.android.providers.media.MediaProvider.openFile(MediaProvider.java:4601)
at android.content.ContentProvider.openAssetFile(ContentProvider.java:1334)
at android.content.ContentProvider.openTypedAssetFile(ContentProvider.java:1514)
at android.content.ContentProvider.openTypedAssetFile(ContentProvider.java:1580)
at android.content.ContentProvider$Transport.openTypedAssetFile(ContentProvider.java:391)
at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:312)
at android.os.Binder.execTransact(Binder.java:446)
Change-Id: Ie27605590db20e0e4e12095d32864a246cc25573
-rwxr-xr-x | src/com/android/providers/media/MediaProvider.java | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/com/android/providers/media/MediaProvider.java b/src/com/android/providers/media/MediaProvider.java index c96028ed..f21c0984 100755 --- a/src/com/android/providers/media/MediaProvider.java +++ b/src/com/android/providers/media/MediaProvider.java @@ -4830,6 +4830,9 @@ public class MediaProvider extends ContentProvider { // Extract compressed image data from the audio file itself or, if that fails, // look for a file "AlbumArt.jpg" in the containing directory. private static byte[] getCompressedAlbumArt(Context context, String path) { + if (path == null) + return null; + byte[] compressed = null; try { |