Also decompress error stream if required

This commit is contained in:
Tobi Schäfer 2021-05-24 12:29:43 +02:00
parent 5a3514440c
commit 4fc158d6eb

View file

@ -62,16 +62,17 @@ helma.Http = function() {
var responseHandler = function(connection, result) { var responseHandler = function(connection, result) {
var input; var input;
var stream;
try { try {
if (method !== 'DELETE') { stream = connection.getInputStream();
var stream = connection.getInputStream();
if (connection.getContentEncoding() === 'gzip') {
stream = new java.util.zip.GZIPInputStream(stream);
}
input = new java.io.BufferedInputStream(stream);
}
} catch (error) { } catch (error) {
input = new java.io.BufferedInputStream(connection.getErrorStream()); stream = connection.getErrorStream();
}
if (stream) {
if (connection.getContentEncoding() === 'gzip') {
stream = new java.util.zip.GZIPInputStream(stream);
}
input = new java.io.BufferedInputStream(stream);
} }
if (input) { if (input) {
var body = new java.io.ByteArrayOutputStream(); var body = new java.io.ByteArrayOutputStream();
@ -90,8 +91,7 @@ helma.Http = function() {
} catch (error) { } catch (error) {
// safe to ignore // safe to ignore
} }
if (binaryMode && (result.code >= 200 && result.code < 300)) { if (binaryMode) {
// only honor binaryMode if the request succeeded
result.content = body.toByteArray(); result.content = body.toByteArray();
} else { } else {
result.content = result.charset ? result.content = result.charset ?