diff options
author | Cristoforo Cataldo <cristoforo.cataldo@gmail.com> | 2015-01-07 23:44:47 +0100 |
---|---|---|
committer | Adnan Begovic <adnan@cyngn.com> | 2015-02-11 19:22:56 +0000 |
commit | a1b71b05da6ce9d3cc2e762a0a78a61bebd8e907 (patch) | |
tree | 05866cce7accc7ab27e35449553afaa8eda9f32f | |
parent | 8855cbebcb9eaf65bb940cfc317238e7397c08f4 (diff) | |
download | android_packages_providers_MediaProvider-stable/cm-12.0-YNG1I.tar.gz android_packages_providers_MediaProvider-stable/cm-12.0-YNG1I.tar.bz2 android_packages_providers_MediaProvider-stable/cm-12.0-YNG1I.zip |
MediaProvider: Avoid null pointer exceptions inside getCompressedAlbumArtstable/cm-12.0-YNG1TAstable/cm-12.0-YNG1Tstable/cm-12.0-YNG1I
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 9d4c0369..53cd7180 100755 --- a/src/com/android/providers/media/MediaProvider.java +++ b/src/com/android/providers/media/MediaProvider.java @@ -4840,6 +4840,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 { |