From 8368c427168d4ec6def44be1a9a139d5a62c1245 Mon Sep 17 00:00:00 2001 From: Daniel Freiling Date: Wed, 6 Jul 2016 16:06:32 +0200 Subject: [PATCH] Fix HEAD requests on large files for Android ByteArrayOutputStream was always allocated with the size of content-length, even on HEAD requests --- .../src/main/java/org/nativescript/widgets/Async.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/android/widgets/src/main/java/org/nativescript/widgets/Async.java b/android/widgets/src/main/java/org/nativescript/widgets/Async.java index bc08d654d..1d3fd76ea 100644 --- a/android/widgets/src/main/java/org/nativescript/widgets/Async.java +++ b/android/widgets/src/main/java/org/nativescript/widgets/Async.java @@ -41,6 +41,7 @@ public class Async { private static final String DeleteMethod = "DELETE"; private static final String GetMethod = "GET"; + private static final String HeadMethod = "HEAD"; private static CookieManager cookieManager; public static class KeyValuePair @@ -300,7 +301,10 @@ public class Async // build the result result.getHeaders(connection); - result.readResponseStream(connection, openedStreams, options); + if (!requestMethod.equals(HeadMethod)) + { + result.readResponseStream(connection, openedStreams, options); + } // close the opened streams (saves copy-paste implementation // in each method that throws IOException)