diff options
Diffstat (limited to 'src/com/android/providers')
-rw-r--r-- | src/com/android/providers/downloads/DownloadProvider.java | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/com/android/providers/downloads/DownloadProvider.java b/src/com/android/providers/downloads/DownloadProvider.java index 9604c855..9336b737 100644 --- a/src/com/android/providers/downloads/DownloadProvider.java +++ b/src/com/android/providers/downloads/DownloadProvider.java @@ -996,7 +996,9 @@ public final class DownloadProvider extends ContentProvider { uriMatch == PUBLIC_DOWNLOAD_ID) { selection.appendClause(Downloads.Impl._ID + " = ?", getDownloadIdFromUri(uri)); } - if (uriMatch == MY_DOWNLOADS || uriMatch == MY_DOWNLOADS_ID) { + if ((uriMatch == MY_DOWNLOADS || uriMatch == MY_DOWNLOADS_ID) + && getContext().checkCallingPermission(Downloads.Impl.PERMISSION_ACCESS_ALL) + != PackageManager.PERMISSION_GRANTED) { selection.appendClause( Constants.UID + "= ? OR " + Downloads.Impl.COLUMN_OTHER_UID + "= ?", Binder.getCallingUid(), Binder.getCallingPid()); |