mirror of
https://github.com/godotengine/godot.git
synced 2025-10-20 00:13:30 +00:00
Warn when polling HTTPClient synchronously in HTML5 platform
This commit is contained in:
parent
2cd7bc04ea
commit
ca9fa9cca8
2 changed files with 24 additions and 0 deletions
|
@ -240,6 +240,21 @@ Error HTTPClient::poll() {
|
|||
return ERR_CONNECTION_ERROR;
|
||||
|
||||
case STATUS_REQUESTING:
|
||||
|
||||
#ifdef DEBUG_ENABLED
|
||||
if (!has_polled) {
|
||||
has_polled = true;
|
||||
} else {
|
||||
// forcing synchronous requests is not possible on the web
|
||||
if (last_polling_frame == Engine::get_singleton()->get_idle_frames()) {
|
||||
WARN_PRINT("HTTPClient polled multiple times in one frame, "
|
||||
"but request cannot progress more than once per "
|
||||
"frame on the HTML5 platform.");
|
||||
}
|
||||
}
|
||||
last_polling_frame = Engine::get_singleton()->get_idle_frames();
|
||||
#endif
|
||||
|
||||
polled_response_code = godot_xhr_get_status(xhr_id);
|
||||
if (godot_xhr_get_ready_state(xhr_id) != XHR_READY_STATE_DONE) {
|
||||
return OK;
|
||||
|
@ -280,6 +295,10 @@ HTTPClient::HTTPClient() {
|
|||
port = -1;
|
||||
use_tls = false;
|
||||
polled_response_code = 0;
|
||||
#ifdef DEBUG_ENABLED
|
||||
has_polled = false;
|
||||
last_polling_frame = 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
HTTPClient::~HTTPClient() {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue