godot/core
Fabio Alessandrelli 6ff869eda7 [Net] Fix IP address resolution incorrectly locking the main thread.
This seems to be a pretty old bug, older then originally reported (at
least under certain circumstances).

The IP singleton uses a resolve queue so developers can queue hostnames
for resolution in a separate while keeping the main thread unlocked
(address-resolution OS functions are blocking, and could block for a long
time in case of network disruption).

In most places though, the address resolution function was called with
the mutex locked, causing other functions (querying status, queueing
another hostname, ecc) to block until that resolution ended.

This commit ensures that all calls to OS address resolution are done
with the mutex unlocked.
2021-08-03 15:39:48 +02:00
..
bind OS: Better validation of invalid input for get_unix_time_from_datetime 2021-05-24 13:39:13 +02:00
crypto SCons: Add explicit dependencies on thirdparty code in cloned env 2021-05-04 12:54:34 +02:00
io [Net] Fix IP address resolution incorrectly locking the main thread. 2021-08-03 15:39:48 +02:00
math BVH - fix stale current_tree in deactivate function 2021-05-31 11:32:04 +02:00
os FileAccess: Don't err in store_buffer with buffer of size 0 2021-06-07 22:56:01 +02:00
array.cpp Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
array.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
class_db.cpp fix crash on null class in ClassDB.get_property() and set_property() 2021-04-05 12:02:32 +02:00
class_db.h Modernize RWLock 2021-02-18 11:41:07 +01:00
color.cpp Make Color::from_hsv use Color::set_hsv 2021-03-04 11:39:02 +01:00
color.h Improve some argument names for core types 2021-04-26 11:50:31 +02:00
color_names.inc doc: Document named color constants 2020-01-26 12:08:16 +01:00
command_queue_mt.cpp Modernize Semaphore 2021-02-18 11:58:08 +01:00
command_queue_mt.h Modernize Semaphore 2021-02-18 11:58:08 +01:00
compressed_translation.cpp Check PHashTranslation generate p_from is valid 2021-05-04 12:54:09 +02:00
compressed_translation.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
core_builders.py Update AUTHORS and DONORS list 2020-08-14 00:32:05 +02:00
core_string_names.cpp Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
core_string_names.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
cowdata.h Improve robustness of atomics 2021-02-19 11:48:30 +01:00
dictionary.cpp Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
dictionary.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
engine.cpp Revert backport of 2D transform and camera snapping options 2021-03-05 14:20:31 +00:00
engine.h Revert backport of 2D transform and camera snapping options 2021-03-05 14:20:31 +00:00
error_list.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
error_macros.cpp Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
error_macros.h Modernize atomics 2021-02-18 12:23:25 +01:00
func_ref.cpp Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
func_ref.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
global_constants.cpp Fix game controllers ignoring the last listed button 2021-06-07 22:40:42 +02:00
global_constants.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
hash_map.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
hashfuncs.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
image.cpp Fixes 50428, added missing checks for image lock 2021-07-15 11:56:53 +02:00
image.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
input_map.cpp Add get_dead_zone() method to InputMap 2021-07-06 16:29:20 +02:00
input_map.h Add get_dead_zone() method to InputMap 2021-07-06 16:29:20 +02:00
int_types.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
list.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
local_vector.h LocalVector: Don't error if from >= count 2021-07-05 12:18:44 +02:00
make_binders.py SCons: Format buildsystem files with psf/black 2020-06-10 15:30:52 +02:00
map.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
message_queue.cpp Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
message_queue.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
method_bind.cpp Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
method_bind.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
method_ptrcall.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
node_path.cpp Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
node_path.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
oa_hash_map.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
object.cpp Modernize atomics 2021-02-18 12:23:25 +01:00
object.h Modernize atomics 2021-02-18 12:23:25 +01:00
object_id.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
object_rc.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
ordered_hash_map.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
packed_data_container.cpp Add PackedDataContainer data pointer check for non nullable 2021-05-05 18:35:55 +02:00
packed_data_container.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
pair.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
path_remap.cpp Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
path_remap.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
pool_allocator.cpp Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
pool_allocator.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
pool_vector.cpp Modernize Mutex 2021-02-18 11:58:08 +01:00
pool_vector.h Modernize atomics 2021-02-18 12:23:25 +01:00
pooled_list.h doc: Sync classref with current source 2021-01-13 16:55:27 +01:00
print_string.cpp Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
print_string.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
project_settings.cpp [3.x] Allow reading shaders from .gdshader files 2021-07-20 12:00:16 +02:00
project_settings.h Add GLOBAL_DEF_ALIAS and alias for rename of pixel_snap 2021-03-09 15:16:24 +00:00
ref_ptr.cpp Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
ref_ptr.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
reference.cpp Modernize atomics 2021-02-18 12:23:25 +01:00
reference.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
register_core_types.cpp Modernize Mutex 2021-02-18 11:58:08 +01:00
register_core_types.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
resource.cpp Modernize RWLock 2021-02-18 11:41:07 +01:00
resource.h Modernize RWLock 2021-02-18 11:41:07 +01:00
rid.cpp Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
rid.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
ring_buffer.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
safe_refcount.cpp Improve robustness of atomics 2021-02-19 11:48:30 +01:00
safe_refcount.h Add type_traits include for std::is_trivially_destructible 2021-04-22 17:29:23 +02:00
script_debugger_local.cpp Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
script_debugger_local.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
script_language.cpp Don't save project settings when not necessary 2021-02-16 14:27:38 +01:00
script_language.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
SCsub SCons: Add explicit dependencies on thirdparty code in cloned env 2021-05-04 12:54:34 +02:00
self_list.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
set.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
simple_type.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
sort_array.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
string_buffer.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
string_builder.cpp Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
string_builder.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
string_name.cpp Modernize Mutex 2021-02-18 11:58:08 +01:00
string_name.h Modernize Mutex 2021-02-18 11:58:08 +01:00
translation.cpp Fix missing locale names 2021-07-20 12:00:53 +02:00
translation.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
type_info.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
typedefs.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
ucaps.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
undo_redo.cpp Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
undo_redo.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
ustring.cpp fix url parsing with port numbers 2021-06-17 13:20:43 +02:00
ustring.h [Net] Implement String::parse_url for parsing URLs. 2021-05-31 11:14:34 +02:00
variant.cpp Object: Make deleted object access raise errors, not warnings 2021-04-20 11:37:39 +02:00
variant.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
variant_call.cpp Return error when decompressing empty buffer 2021-05-31 11:33:34 +02:00
variant_op.cpp Object: Make deleted object access raise errors, not warnings 2021-04-20 11:37:39 +02:00
variant_parser.cpp Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
variant_parser.h VariantParser: Fix uninitialized ResourceParser funcs 2021-08-03 09:25:48 +02:00
vector.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
version.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
vmap.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
vset.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00