Merge "Canonicalize ringtones before returning." into qt-dev

This commit is contained in:
Jeff Sharkey
2019-04-17 02:14:22 +00:00
committed by Android (Google) Code Review

View File

@@ -495,15 +495,17 @@ public class RingtoneManager {
if (mCursor == null || !mCursor.moveToPosition(position)) {
return null;
}
return getUriFromCursor(mCursor);
return getUriFromCursor(mContext, mCursor);
}
private static Uri getUriFromCursor(Cursor cursor) {
return ContentUris.withAppendedId(Uri.parse(cursor.getString(URI_COLUMN_INDEX)), cursor
.getLong(ID_COLUMN_INDEX));
private static Uri getUriFromCursor(Context context, Cursor cursor) {
final Uri uri = ContentUris.withAppendedId(Uri.parse(cursor.getString(URI_COLUMN_INDEX)),
cursor.getLong(ID_COLUMN_INDEX));
final Uri canonicalized = context.getContentResolver().canonicalize(uri);
return (canonicalized != null) ? canonicalized : uri;
}
/**
* Gets the position of a {@link Uri} within this {@link RingtoneManager}.
*
@@ -569,7 +571,7 @@ public class RingtoneManager {
Uri uri = null;
if (cursor.moveToFirst()) {
uri = getUriFromCursor(cursor);
uri = getUriFromCursor(context, cursor);
}
cursor.close();