From 344b2d4293049df49881664a5c4c20dcb68ae7ec Mon Sep 17 00:00:00 2001 From: Terry Heo Date: Thu, 13 Nov 2014 15:56:22 -0800 Subject: Throw FileNotFoundException when openLogoFile() fails ContentProvider should throw the exception instead of returning null object. Bug: 18335090 Change-Id: Iffa0370b6c1c901ce665ca21aac6c94239fa476f --- src/com/android/providers/tv/TvProvider.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/com/android/providers/tv/TvProvider.java b/src/com/android/providers/tv/TvProvider.java index ea8dca7..cd70ad1 100644 --- a/src/com/android/providers/tv/TvProvider.java +++ b/src/com/android/providers/tv/TvProvider.java @@ -858,7 +858,11 @@ public class TvProvider extends ContentProvider { if (mode.equals("r")) { String sql = queryBuilder.buildQuery(new String[] { CHANNELS_COLUMN_LOGO }, params.getSelection(), null, null, null, null); - return DatabaseUtils.blobFileDescriptorForQuery(db, sql, params.getSelectionArgs()); + ParcelFileDescriptor fd = DatabaseUtils.blobFileDescriptorForQuery(db, sql, params.getSelectionArgs()); + if (fd == null) { + throw new FileNotFoundException(uri.toString()); + } + return fd; } else { try (Cursor cursor = queryBuilder.query(db, new String[] { Channels._ID }, params.getSelection(), params.getSelectionArgs(), null, null, null)) { -- cgit v1.2.3