summaryrefslogtreecommitdiffstats
path: root/src/com/android/providers/downloads/DownloadThread.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/providers/downloads/DownloadThread.java')
-rw-r--r--src/com/android/providers/downloads/DownloadThread.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/com/android/providers/downloads/DownloadThread.java b/src/com/android/providers/downloads/DownloadThread.java
index 8d51909e..f6b0be6d 100644
--- a/src/com/android/providers/downloads/DownloadThread.java
+++ b/src/com/android/providers/downloads/DownloadThread.java
@@ -352,6 +352,8 @@ public class DownloadThread implements Runnable {
throw new StopRequestException(STATUS_BAD_REQUEST, e);
}
+ // Use the caller's default network to make this connection, since they might be subject to
+ // restrictions that we shouldn't let them circumvent.
final Network network = mSystemFacade.getActiveNetwork(mInfo.mUid);
if (network == null) {
throw new StopRequestException(Downloads.Impl.STATUS_WAITING_FOR_NETWORK,
@@ -374,6 +376,8 @@ public class DownloadThread implements Runnable {
// response with body.
HttpURLConnection conn = null;
try {
+ // Check that the caller is allowed to make network connections. If so, make one on
+ // their behalf to open the url.
checkConnectivity();
conn = (HttpURLConnection) network.openConnection(url);
conn.setInstanceFollowRedirects(false);