From d5535d935754637c013be8145aacbebf2b13e267 Mon Sep 17 00:00:00 2001 From: Leon Krause Date: Fri, 16 Feb 2018 05:38:36 +0100 Subject: [PATCH] Fix HTML5 HTTPClient response header retrieval (cherry picked from commit 8a21f27f540750a76f19fcfb7d7a9d5e7f03f771) --- platform/javascript/http_client_javascript.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/platform/javascript/http_client_javascript.cpp b/platform/javascript/http_client_javascript.cpp index badfe40e664..5e6b01f772a 100644 --- a/platform/javascript/http_client_javascript.cpp +++ b/platform/javascript/http_client_javascript.cpp @@ -158,7 +158,7 @@ int HTTPClient::get_response_code() const { Error HTTPClient::get_response_headers(List *r_response) { - if (!polled_response_header.size()) + if (polled_response_header.empty()) return ERR_INVALID_PARAMETER; Vector header_lines = polled_response_header.split("\r\n", false); @@ -250,9 +250,11 @@ Error HTTPClient::poll() { PoolByteArray bytes; int len = godot_xhr_get_response_headers_length(xhr_id); - bytes.resize(len); + bytes.resize(len + 1); + PoolByteArray::Write write = bytes.write(); godot_xhr_get_response_headers(xhr_id, reinterpret_cast(write.ptr()), len); + write[len] = 0; write = PoolByteArray::Write(); PoolByteArray::Read read = bytes.read();