resolve merge conflicts of b4a5615 to lmp-dev
Change-Id: I1b9ebc398226ead9d7f494c4ac56a7b1d9d6586f
diff --git a/services/core/java/com/android/server/location/GpsXtraDownloader.java b/services/core/java/com/android/server/location/GpsXtraDownloader.java
index a5eef6a..e02e668 100644
--- a/services/core/java/com/android/server/location/GpsXtraDownloader.java
+++ b/services/core/java/com/android/server/location/GpsXtraDownloader.java
@@ -44,6 +44,7 @@
private static final String TAG = "GpsXtraDownloader";
private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG);
+ private static final long MAXIMUM_CONTENT_LENGTH_BYTES = 1000000; // 1MB.
private static final String DEFAULT_USER_AGENT = "Android";
private final Context mContext;
@@ -150,8 +151,9 @@
byte[] body = null;
if (entity != null) {
try {
- if (entity.getContentLength() > 0) {
- body = new byte[(int) entity.getContentLength()];
+ long contentLength = entity.getContentLength();
+ if (contentLength > 0 && contentLength <= MAXIMUM_CONTENT_LENGTH_BYTES) {
+ body = new byte[(int) contentLength];
DataInputStream dis = new DataInputStream(entity.getContent());
try {
dis.readFully(body);