diff options
| author | Fabio Alessandrelli <fabio.alessandrelli@gmail.com> | 2021-02-11 09:32:17 +0100 | 
|---|---|---|
| committer | Fabio Alessandrelli <fabio.alessandrelli@gmail.com> | 2021-02-11 10:03:36 +0100 | 
| commit | 75c4e2c5fa268a5d7017651c0238b25e11e5d4bb (patch) | |
| tree | f6f5b3987abd8157846759702bb66e75b9cf5cd3 /platform/javascript/js/libs | |
| parent | ad293a82f1fc2e4baa35f54b9b8038df72d23737 (diff) | |
[HTML5] Fix HTTPClient request_raw.
Now send data according to the spec, properly handle null data.
Simplify JS code since we are at it.
Diffstat (limited to 'platform/javascript/js/libs')
| -rw-r--r-- | platform/javascript/js/libs/library_godot_http_request.js | 30 | 
1 files changed, 6 insertions, 24 deletions
diff --git a/platform/javascript/js/libs/library_godot_http_request.js b/platform/javascript/js/libs/library_godot_http_request.js index 930d3209f8..7dc2a2df29 100644 --- a/platform/javascript/js/libs/library_godot_http_request.js +++ b/platform/javascript/js/libs/library_godot_http_request.js @@ -82,31 +82,13 @@ const GodotHTTPRequest = {  		GodotHTTPRequest.requests[xhrId].setRequestHeader(GodotRuntime.parseString(header), GodotRuntime.parseString(value));  	}, -	godot_xhr_send_null__sig: 'vi', -	godot_xhr_send_null: function (xhrId) { -		GodotHTTPRequest.requests[xhrId].send(); -	}, - -	godot_xhr_send_string__sig: 'vii', -	godot_xhr_send_string: function (xhrId, strPtr) { -		if (!strPtr) { -			GodotRuntime.error('Failed to send string per XHR: null pointer'); -			return; -		} -		GodotHTTPRequest.requests[xhrId].send(GodotRuntime.parseString(strPtr)); -	}, - -	godot_xhr_send_data__sig: 'viii', -	godot_xhr_send_data: function (xhrId, ptr, len) { -		if (!ptr) { -			GodotRuntime.error('Failed to send data per XHR: null pointer'); -			return; -		} -		if (len < 0) { -			GodotRuntime.error('Failed to send data per XHR: buffer length less than 0'); -			return; +	godot_xhr_send__sig: 'viii', +	godot_xhr_send: function (xhrId, p_ptr, p_len) { +		let data = null; +		if (p_ptr && p_len) { +			data = GodotRuntime.heapCopy(HEAP8, p_ptr, p_len);  		} -		GodotHTTPRequest.requests[xhrId].send(HEAPU8.subarray(ptr, ptr + len)); +		GodotHTTPRequest.requests[xhrId].send(data);  	},  	godot_xhr_abort__sig: 'vi',  |