diff options
| author | 2016-02-24 09:54:14 -0700 | |
|---|---|---|
| committer | 2016-02-24 09:54:16 -0700 | |
| commit | 97f061bb7cd46151310e2fd2f4293f65b15a8237 (patch) | |
| tree | 084a7642a9f36c482655bfa1508dfcd3485a2e52 | |
| parent | e88e2665471c7b620fd3b1baca024fc9e705ee32 (diff) | |
Don't try caching null ringtones.
Bug: 27330629
Change-Id: Id09d10d6f4a3a20782480647c68a5c94ef69e7b3
| -rw-r--r-- | media/java/android/media/RingtoneManager.java | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/media/java/android/media/RingtoneManager.java b/media/java/android/media/RingtoneManager.java index 06ac11b41c1a..feb490de2c3e 100644 --- a/media/java/android/media/RingtoneManager.java +++ b/media/java/android/media/RingtoneManager.java @@ -663,13 +663,15 @@ public class RingtoneManager { // Stream selected ringtone into cache so it's available for playback // when CE storage is still locked - final ContentResolver cr = context.getContentResolver(); - final Uri cacheUri = getCacheForType(type); - try (InputStream in = cr.openInputStream(ringtoneUri); - OutputStream out = cr.openOutputStream(cacheUri)) { - Streams.copy(in, out); - } catch (IOException e) { - Log.w(TAG, "Failed to cache ringtone: " + e); + if (ringtoneUri != null) { + final ContentResolver cr = context.getContentResolver(); + final Uri cacheUri = getCacheForType(type); + try (InputStream in = cr.openInputStream(ringtoneUri); + OutputStream out = cr.openOutputStream(cacheUri)) { + Streams.copy(in, out); + } catch (IOException e) { + Log.w(TAG, "Failed to cache ringtone: " + e); + } } } |