From 4db7e933f4c26e28f82dc912863f7d02d8fb94ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nils=20Holmstr=C3=B6m?= Date: Thu, 26 Apr 2012 18:46:23 +0200 Subject: NPE in WallpaperHandler In WallpaperHandler, BitmapFactory.decodeStream() is used to create a Bitmap that is then set by WallpaperManager as a wallpaper. This method has null as return value when something fails as decoding, resulting in a nullpointer exception in WallpaperManager. Adding nullcheck on the Bitmap before setting it as wallpaper to avoid the NPE. Change-Id: Ib1a0f9331898162b21094c3ebe80bc21d66f8bd7 --- src/com/android/browser/WallpaperHandler.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/com/android/browser/WallpaperHandler.java b/src/com/android/browser/WallpaperHandler.java index b76861c..0c60664 100644 --- a/src/com/android/browser/WallpaperHandler.java +++ b/src/com/android/browser/WallpaperHandler.java @@ -130,7 +130,12 @@ public class WallpaperHandler extends Thread } Bitmap scaledWallpaper = BitmapFactory.decodeStream(inputstream, null, options); - wm.setBitmap(scaledWallpaper); + if (scaledWallpaper != null) { + wm.setBitmap(scaledWallpaper); + } else { + Log.e(LOGTAG, "Unable to set new wallpaper, " + + "decodeStream returned null."); + } } } catch (IOException e) { Log.e(LOGTAG, "Unable to set new wallpaper"); -- cgit v1.1