summaryrefslogtreecommitdiffstats
path: root/src/com/android/providers/downloads/OpenHelper.java
diff options
context:
space:
mode:
authorSuprabh Shukla <suprabh@google.com>2017-06-01 18:21:32 -0700
committerSuprabh Shukla <suprabh@google.com>2017-06-01 18:21:36 -0700
commitb7aea795beec6721c60b59c9d945e4d964466323 (patch)
tree7029efac87a419ee44d302d7ea1d4fb6bcbe83fd /src/com/android/providers/downloads/OpenHelper.java
parentedf657585adc3bc2fe2ee521b145040d12db5790 (diff)
downloadandroid_packages_providers_DownloadProvider-b7aea795beec6721c60b59c9d945e4d964466323.tar.gz
android_packages_providers_DownloadProvider-b7aea795beec6721c60b59c9d945e4d964466323.tar.bz2
android_packages_providers_DownloadProvider-b7aea795beec6721c60b59c9d945e4d964466323.zip
Not sending my uid as ORIGINATING_UID to package installer
In some cases the UID column may have download provider uid. We should not send this as the originating uid for blaming app installs. Test: Manually copied an apk to internal storage and back to downloads. Tapping on apk launches package installer as expected. Fixes: 38310830 Change-Id: Ie75da734b1bd43bc61112c023cb1587e4c2ff20e
Diffstat (limited to 'src/com/android/providers/downloads/OpenHelper.java')
-rw-r--r--src/com/android/providers/downloads/OpenHelper.java6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/com/android/providers/downloads/OpenHelper.java b/src/com/android/providers/downloads/OpenHelper.java
index 31561ff2..c88902b7 100644
--- a/src/com/android/providers/downloads/OpenHelper.java
+++ b/src/com/android/providers/downloads/OpenHelper.java
@@ -31,6 +31,7 @@ import android.content.Intent;
import android.content.pm.PackageInstaller;
import android.database.Cursor;
import android.net.Uri;
+import android.os.Process;
import android.provider.DocumentsContract;
import android.provider.Downloads.Impl.RequestHeaders;
import android.util.Log;
@@ -127,7 +128,10 @@ public class OpenHelper {
if (cursor != null) {
try {
if (cursor.moveToFirst()) {
- return cursor.getInt(cursor.getColumnIndexOrThrow(Constants.UID));
+ final int uid = cursor.getInt(cursor.getColumnIndexOrThrow(Constants.UID));
+ if (uid != Process.myUid()) {
+ return uid;
+ }
}
} finally {
cursor.close();