From 5a589430b3be99a6fdaf03e621162d08c8b1ad8a Mon Sep 17 00:00:00 2001 From: Filip Gruszczynski Date: Tue, 14 Oct 2014 12:06:06 -0700 Subject: [PATCH] Prevent index out of bounds when using String.substring. Change-Id: Ib30f9646e9895b6a2f065a0b2e51cf53e821b087 --- .../android/server/wallpaper/WallpaperManagerService.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java b/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java index ef87eccb2ef04..257cbd0df1c19 100644 --- a/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java +++ b/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java @@ -275,9 +275,10 @@ public class WallpaperManagerService extends IWallpaperManager.Stub { } else { mWallpaper.lastDiedTime = SystemClock.uptimeMillis(); } + final String flattened = name.flattenToString(); EventLog.writeEvent(EventLogTags.WP_WALLPAPER_CRASHED, - name.flattenToString().substring(0, - MAX_WALLPAPER_COMPONENT_LOG_LENGTH)); + flattened.substring(0, Math.min(flattened.length(), + MAX_WALLPAPER_COMPONENT_LOG_LENGTH))); } } }