summaryrefslogtreecommitdiff
path: root/core/io
AgeCommit message (Collapse)Author
2019-12-22Fix buffers size calculation in PacketPeerStream.Fabio Alessandrelli
The calculation used to be wrong when exactly at a power of 2. `nearest_shift` always return the "next" power of 2 `nearest_shift(4) == 3 # 2^3 = 8`. On the other hand `next_power_of_2` returns the exact value if that value is a power of 2 (i.e. `next_power_of_2(4) == 4`). I.e. : ``` WARN_PRINT(itos(next_power_of_2(4)) + " " + itos(1 << nearest_shift(4))); // WARNING: ... : 4 8 ``` Is this by design?
2019-12-14UDP sockets broadcast is now disabled by default.Fabio Alessandrelli
Add method `set_broadcast_enabled` to allow enabling broadcast via GDScript.
2019-12-10NetSocket set_broadcast_enabled returns Error enumFabio Alessandrelli
2019-12-07Make some arguments in PCKPacker methods optionalHugo Locurcio
Those arguments aren't required for most common use cases, so making them optional should help with code readability.
2019-12-04ResourceLoader: Add language code matching for localized resourcesRémi Verschelde
Near matching was not implemented like in TranslationServer, so a resource remapped for 'ru' (but not 'ru_RU') would not be used as fallback if the system locale was 'ru_RU'. Fixes #34058.
2019-12-01Merge pull request #33640 from mewin/http_head_requestFabio Alessandrelli
Fix HTTP HEAD requests
2019-11-26do not wait for response body when making a HEAD requestPatrick Wuttke
2019-11-25Merge pull request #33862 from Faless/net/http_request_chunk_sizeRémi Verschelde
Add download_chunk_size property to HTTPRequest.
2019-11-24Add download_chunk_size property to HTTPRequest.Fabio Alessandrelli
This allows setting the `read_chunk_size` of the internal HTTPClient. This is important to reduce the allocation overhead and number of file writes when downloading large files, allowing for better download speed.
2019-11-23Merge pull request #33652 from Black-Cat/http-client-fixFabio Alessandrelli
Fix HTTPClient::poll crash when connection set to null
2019-11-23Fix HTTPClient::poll crash when connection set to nullArtem Burjachenko
2019-11-20Fix some overflows and unitialized variablesRafał Mikrut
2019-10-25MultiplayerAPI cleanup cache when peer disconnectsFabio Alessandrelli
We used to only cleanup path_get_cache and not path_send_cache causing issues when a peer disconnects and then reconnects with the same ID.
2019-10-08Merge pull request #32426 from gianllucah/masterRémi Verschelde
Option to erase a section key in ConfigFile
2019-10-07Added a method to erase section key in ConfigFileGianlluca
2019-10-03Fix small memory leak in PackedSourcePCK::try_open_packqarmin
2019-09-26Merge pull request #32228 from damianday/patch-1Fabio Alessandrelli
TCP is_connected_to_host comparison error
2019-09-25Update stream_peer_tcp.cppDamian Day
2019-09-25Merge pull request #32291 from Dragoncraft89/add_load_resource_flagRémi Verschelde
Add flag to control the replacement of files by ProjectSettings.load_resource_pack
2019-09-25Add flag to control the replacement of files by ↵Florian Kothmeier
ProjectSettings.load_resource_pack
2019-09-25Merge pull request #32051 from qarmin/some_error_explanationRémi Verschelde
Added some obvious errors explanations
2019-09-25Added some obvious errors explanationsqarmin
2019-09-23Merge pull request #32055 from qarmin/some_code_fixesRémi Verschelde
Changed some code found by Clang Tidy and Coverity
2019-09-23Merge pull request #32032 from nekomatata/encrypted-file-get-pathRémi Verschelde
Implemented get_path() & get_path_absolute() for FileAccessEncrypted
2019-09-22Changed some code found by Clang Tidy and Coverityqarmin
2019-09-21TCP is_connected_to_host comparison errorDamian Day
We was returning true when the state was not connected, so we would never return true when the state was connected.
2019-09-07Implemented get_path() & get_path_absolute() for FileAccessEncryptedPouleyKetchoupp
2019-09-05Add network profilerjfons
2019-08-30Fix memory leak in ResourceFormatSaverBinary::saveqarmin
2019-08-21Merge pull request #29871 from Faless/crypto/initial_prRémi Verschelde
More Crypto, SSL server, crt/key as Resource, HashingContext
2019-08-21Rewrite StreamPeerSSL with SSLContext helper classFabio Alessandrelli
connect_to_stream now accepts optional parameter to specify which certificates to trust. Implement accept_stream (SSL server) with key/cert parameters to specify the RSA key and X509 certificate resources.
2019-08-21Support for file not found in ConfigFile::Load and handle a few specific casesPouleyKetchoupp
EditorSettings::set_project_metadata: creates project_metadata.cfg if it doesn't exist EditorPlugin::get_config: removed (not used) Fixes #31444
2019-08-19Move CryptoCore to it's own folder.Fabio Alessandrelli
Crypto classes will be placed in core/crypto.
2019-08-17DirAccessPack: Fix dir_exists and file_exists for res:// pathsRémi Verschelde
Both methods check against containers using relative paths as index, so the `res://` part needs to be stripped. Fixes #26009.
2019-08-17Replace last occurrences of 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG'Rémi Verschelde
The last remaining ERR_EXPLAIN call is in FreeType code and makes sense as is (conditionally defines the error message). There are a few ERR_EXPLAINC calls for C-strings where String is not included which can stay as is to avoid adding additional _MSGC macros just for that. Part of #31244.
2019-08-17Replace 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG' in 'core/' and 'editor/'Braden Bodily
Condensed some if and ERR statements. Added dots to end of error messages Couldn't figure out EXPLAINC. These files gave me trouble: core/error_macros.h, core/io/file_access_buffered_fa.h (where is it?), core/os/memory.cpp, drivers/png/png_driver_common.cpp, drivers/xaudio2/audio_driver_xaudio2.cpp (where is it?)
2019-08-12Remove redundant author doc commentsIAmActuallyCthulhu
2019-08-10Remove old doc comments in image_loader headerIAmActuallyCthulhu
2019-08-07Merge pull request #31077 from qarmin/coverity_bugsRémi Verschelde
Change some code proposed by Coverity and Cppcheck
2019-08-07Add some code changes/fixes proposed by Coverity and Clang Tidyqarmin
2019-08-05Fixed EOF flag not resetting on seek backTGRCDev
2019-07-23Fix some code found by Coverity Scan and PVS Studioqarmin
2019-07-20Changed some code showed in LGTM and Coverageqarmin
2019-07-08Add TCP connect timeout.Fabio Alessandrelli
Default timeout is 30 seconds (i.e. after 30 seconds of calling connect_to_host if the TCP peer is not connected the connection will error out). This value can be configured in project settings: `network/limits/tcp/connect_timeout_seconds`
2019-07-06Added release function to PoolVector::Access.Ibrahn Sahir
For clarity, assign-to-release idiom for PoolVector::Read/Write replaced with a function call. Existing uses replaced (or removed if already handled by scope)
2019-07-05Merge pull request #24086 from RandomShaper/bundle-pck-to-executableRémi Verschelde
Enhance game export
2019-07-04WebSocket module now uses wslay library.Fabio Alessandrelli
Both client and server are supported on native builds (as usual). SSL server is still not supported, but will soon be possible with this new library. The API stays the same, we just need to work out potential issues due to this big library switch.
2019-07-03Add embedded PCK option to PC platformsPedro J. Estébanez
The basic point is as in 2.1 (appending the PCK into the executable), but this implementation also patches a dedicated section in the ELF/PE executable so that it matches the appended data perfectly. The usage of integer types is simplified in existing code; namely, using plain `int` for small quantities.
2019-07-03Add TCP Server is_listening methodFabio Alessandrelli
2019-07-02Fix editor crash when StreamPeerSSL is unavilable.Fabio Alessandrelli
The fix for EditorNode is a bit hacky, but the handling of the buttons and features there is hacky too (based on enums that might not reflect the actual state).