diff options
| author | 2020-09-29 22:50:26 +0000 | |
|---|---|---|
| committer | 2020-09-29 22:50:26 +0000 | |
| commit | 15698dd32dfd0cbdaa2a5ca6d2ce78aba2d8039d (patch) | |
| tree | 0076adaf463f66def7111c3b9839ef55dbe20987 | |
| parent | a4f7362b2320083fe16d1ba806a63a23c7d8b3e9 (diff) | |
| parent | 1fa847ad642bd91ffe1d1e443b73976f776a7356 (diff) | |
Merge "Use the try catch to deal with the StaleDataException." am: 1fa847ad64
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1433917
Change-Id: I7785f21c7d67e3bdfcef03615993836297a99b50
| -rw-r--r-- | media/java/android/media/RingtoneManager.java | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/media/java/android/media/RingtoneManager.java b/media/java/android/media/RingtoneManager.java index c75296c73a90..9deeb8fbab16 100644 --- a/media/java/android/media/RingtoneManager.java +++ b/media/java/android/media/RingtoneManager.java @@ -34,6 +34,7 @@ import android.content.pm.PackageManager.NameNotFoundException; import android.content.pm.UserInfo; import android.content.res.AssetFileDescriptor; import android.database.Cursor; +import android.database.StaleDataException; import android.net.Uri; import android.os.Environment; import android.os.FileUtils; @@ -492,7 +493,12 @@ public class RingtoneManager { public Uri getRingtoneUri(int position) { // use cursor directly instead of requerying it, which could easily // cause position to shuffle. - if (mCursor == null || !mCursor.moveToPosition(position)) { + try { + if (mCursor == null || !mCursor.moveToPosition(position)) { + return null; + } + } catch (StaleDataException | IllegalStateException e) { + Log.e(TAG, "Unexpected Exception has been catched.", e); return null; } |