diff options
| author | Jeff Sharkey <jsharkey@android.com> | 2013-10-31 14:55:44 -0700 |
|---|---|---|
| committer | Jeff Sharkey <jsharkey@android.com> | 2013-10-31 14:55:44 -0700 |
| commit | 8a2998eade93032a78d681c66ebadbfa6f802f76 (patch) | |
| tree | ab8b7f4da254f89ce50670792afd902709caf9cf /core/java/android/provider/DocumentsProvider.java | |
| parent | eaa9780fd64f122df8a306562786e106ae228ceb (diff) | |
Better enforcement in DocumentsProvider.call().
Use ContentProvider.enforceWritePermissionInner() to handle all edge
cases around checking if caller has write permissions. This fixes
bug where call() would throw if caller and provider were the same app.
Bug: 11464234
Change-Id: Iace8e0e4243d56ed1cdcc9680383103975107036
Diffstat (limited to 'core/java/android/provider/DocumentsProvider.java')
| -rw-r--r-- | core/java/android/provider/DocumentsProvider.java | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/core/java/android/provider/DocumentsProvider.java b/core/java/android/provider/DocumentsProvider.java index e35b8eb42528..25d6f5b412b1 100644 --- a/core/java/android/provider/DocumentsProvider.java +++ b/core/java/android/provider/DocumentsProvider.java @@ -512,10 +512,7 @@ public abstract class DocumentsProvider extends ContentProvider { final boolean callerHasManage = context.checkCallingOrSelfPermission(android.Manifest.permission.MANAGE_DOCUMENTS) == PackageManager.PERMISSION_GRANTED; - if (!callerHasManage) { - getContext().enforceCallingOrSelfUriPermission( - documentUri, Intent.FLAG_GRANT_WRITE_URI_PERMISSION, method); - } + enforceWritePermissionInner(documentUri); final Bundle out = new Bundle(); try { |
