summaryrefslogtreecommitdiff
path: root/src/com/android
diff options
context:
space:
mode:
authorNick Chalko <nchalko@google.com>2017-08-22 13:23:13 +0000
committerNick Chalko <nchalko@google.com>2017-08-23 21:08:56 +0000
commitd60d34679232b3c0b75b93a33c0d00831295f054 (patch)
tree3e5347e908c4d930b2a4a7c5919600c54126537a /src/com/android
parentfe25ab5256c67c3f993c5dc9466da2b537081ba7 (diff)
downloadTvProvider-d60d34679232b3c0b75b93a33c0d00831295f054.tar.gz
Allow inserting programs for other packages if you have the right permissions
am: ac1af9f514 am: a22ab1935b am: 685b7bdfe3 am: 41aa6bf9b8 am: 4b9b3ecd40 Bug: 64911114 Change-Id: Id473506ff6d049c073906d479f939574d2106372 (cherry picked from commit b8b3e943e2358cfded5f6d8fb490193214725e0a)
Diffstat (limited to 'src/com/android')
-rw-r--r--src/com/android/providers/tv/TvProvider.java8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/com/android/providers/tv/TvProvider.java b/src/com/android/providers/tv/TvProvider.java
index 6abff89..b0189d4 100644
--- a/src/com/android/providers/tv/TvProvider.java
+++ b/src/com/android/providers/tv/TvProvider.java
@@ -1383,8 +1383,12 @@ public class TvProvider extends ContentProvider {
}
private Uri insertProgram(Uri uri, ContentValues values) {
- // Mark the owner package of this program.
- values.put(Programs.COLUMN_PACKAGE_NAME, getCallingPackage_());
+ if (!callerHasAccessAllEpgDataPermission() ||
+ !values.containsKey(Programs.COLUMN_PACKAGE_NAME)) {
+ // Mark the owner package of this program. System app with a proper permission may
+ // change the owner of the program.
+ values.put(Programs.COLUMN_PACKAGE_NAME, getCallingPackage_());
+ }
checkAndConvertGenre(values);
checkAndConvertDeprecatedColumns(values);