summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Chalko <nchalko@google.com>2017-08-24 03:30:18 +0000
committerandroid-build-merger <android-build-merger@google.com>2017-08-24 03:30:18 +0000
commitb057ca8e319b88ce0d7eeb81af2d6939bd664375 (patch)
tree8cab1d906fefbda82c76679e718a580854b21825
parent04e2d0ccfb4a1771a76748a333b3ba91b747f83e (diff)
parentd60d34679232b3c0b75b93a33c0d00831295f054 (diff)
downloadTvProvider-b057ca8e319b88ce0d7eeb81af2d6939bd664375.tar.gz
Allow inserting programs for other packages if you have the right permissions
am: d60d346792 Change-Id: I2c631a195bffa4b3b6a54f3cc046ce5a0509d2a6
-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 5abc07d..ff2452e 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);