summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2021-06-07FileAccess: Don't err in `store_buffer` with buffer of size 0Rémi Verschelde
The error check was added for `FileAccessUnix` but it's not an error when both `p_src` and `p_length` are zero. Added correct error checks to all implementations to prevent the actual erroneous case: `p_src` is nullptr but `p_length > 0` (risk of null pointer indexing). Fixes #33564.
2021-06-07Style: Cleanup uses of double spaces between wordsRémi Verschelde
Or after punctuation. Tried to leave third-party stuff alone, unless it has been heavily modified for Godot.
2021-06-03Merge pull request #48350 from RandomShaper/fix_alsamidi_crashRémi Verschelde
Fix crash when using ALSA MIDI with PulseAudio
2021-06-03Fix crash when using ALSA MIDI with PulseAudioPedro J. Estébanez
2021-06-01Merge pull request #49026 from sarchar/multiple-dns-resolvesRémi Verschelde
2021-06-01Move remaining dummy drivers to servers.Fabio Alessandrelli
2021-06-01LinuxBSD now compiles without vulkan/x11.Fabio Alessandrelli
2021-06-01Remove server platformFabio Alessandrelli
2021-06-01Add DisplayServerDummy for headless display.Fabio Alessandrelli
Uses RasterizerDummy internally. This is always compiled in, maybe we should add a switch to enable/disable it via scons?
2021-06-01Sync RasterizerDummy changes.Fabio Alessandrelli
2021-06-01Support multiple address resolution in DNS requestsChuck
Add two new functions to the IP class that returns all addresses/aliases associated with a given address. This is a cherry-pick merge from 010a3433df43a94fee95474360ffa6662c7441b9 which was merged in 2.1, and has been updated to build with the latest code. This merge adds two new methods IP.resolve_hostname_addresses and IP.get_resolve_item_addresses that returns a List of all addresses returned from the DNS request.
2021-05-31Fix `Directory::get_space_left()` result on macOS and Linux.bruvzg
2021-05-25Rename File::get_len() get_length()Marcel Admiraal
2021-05-24Add GDNative Framework loading and export support.bruvzg
2021-05-22Add symlink API to the DirAccess (on macOS and Linux).bruvzg
2021-05-20Change behavior of String.rightTomasz Chabora
2021-05-20Merge pull request #48719 from Faless/js/4.x_interfacesRémi Verschelde
[HTML5] Implement Godot <-> JavaScript interface.
2021-05-20Fix typos with codespellRémi Verschelde
Using codespell 2.0.0. Method: ``` $ cat > ../godot-word-whitelist.txt << EOF ang curvelinear dof doubleclick fave findn GIRD leapyear lod merchantibility nd numer ois ony que seeked synching te uint unselect webp EOF $ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po" $ git diff // undo unwanted changes ```
2021-05-17Make all file access 64-bit (uint64_t)Pedro J. Estébanez
This changes the types of a big number of variables. General rules: - Using `uint64_t` in general. We also considered `int64_t` but eventually settled on keeping it unsigned, which is also closer to what one would expect with `size_t`/`off_t`. - We only keep `int64_t` for `seek_end` (takes a negative offset from the end) and for the `Variant` bindings, since `Variant::INT` is `int64_t`. This means we only need to guard against passing negative values in `core_bind.cpp`. - Using `uint32_t` integers for concepts not needing such a huge range, like pages, blocks, etc. In addition: - Improve usage of integer types in some related places; namely, `DirAccess`, core binds. Note: - On Windows, `_ftelli64` reports invalid values when using 32-bit MinGW with version < 8.0. This was an upstream bug fixed in 8.0. It breaks support for big files on 32-bit Windows builds made with that toolchain. We might add a workaround. Fixes #44363. Fixes godotengine/godot-proposals#400. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2021-05-14Sync DummyRasterizer.Fabio Alessandrelli
2021-05-13Handle having no sinks in the PulseAudio driver.R. Alex Hofer
Also make PulseAudio errors more verbose.
2021-05-08Remove debugging prints in the Linux DisplayServerHugo Locurcio
Some Vulkan debugging prints were also changed to be printed only in verbose mode.
2021-05-07Sync RasterizerDummy with latest changes.Fabio Alessandrelli
2021-05-06Merge pull request #37700 from Calinou/rename-ip-unix-tcp-serverRémi Verschelde
Rename `IP_Unix`, `IP_Address` and `TCP_Server` to remove underscores
2021-05-06Cleanup vulkan capabilities check and add multiview checkBastiaan Olij
2021-05-06Rename `IP_Unix`, `IP_Address` and `TCP_Server` to remove underscoresHugo Locurcio
2021-05-03Tweak warning messages related to leaked RIDsHugo Locurcio
- Use hardcoded pluralization for messages. - Since these messages are English-only, it's fine to hardcode it. - Use double quotes for consistency with other messages.
2021-04-30Merge pull request #48336 from bruvzg/fix_mixed_url_decodeRémi Verschelde
Fix `url_decode` with mixed percent-encoding/Unicode strings.
2021-04-30Fix `url_decode` with mixed percent-encoding/Unicode strings. Treat Unix ↵bruvzg
drive names as UTF-8 encoded.
2021-04-29Sync RasterizerDummy.Fabio Alessandrelli
2021-04-29Replace remaining uses of `NULL` with `nullptr`Rémi Verschelde
Follow-up to #38736 (these uses were likely added after this PR was merged).
2021-04-28Merge pull request #48239 from akien-mga/goodbye-copymemRémi Verschelde
Core: Drop custom `copymem`/`zeromem` defines
2021-04-27Merge pull request #48050 from JFonS/occlusion_cullingRémi Verschelde
2021-04-27Core: Drop custom `copymem`/`zeromem` definesRémi Verschelde
We've been using standard C library functions `memcpy`/`memset` for these since 2016 with 67f65f66391327b2967a20a89c3627e1dd6e84eb. There was still the possibility for third-party platform ports to override the definitions with a custom header, but this doesn't seem useful anymore.
2021-04-27Merge pull request #47398 from Faless/feature/network-local-port-salvagedRémi Verschelde
2021-04-26[Net] Fix socket poll timeout on Windows.Fabio Alessandrelli
Now correctly computes the timeout value in milliseconds.
2021-04-23Implement occlusion cullingjfons
Added an occlusion culling system with support for static occluder meshes. It can be enabled via `Project Settings > Rendering > Occlusion Culling > Use Occlusion Culling`. Occluders are defined via the new `Occluder3D` resource and instanced using the new `OccluderInstance3D` node. The occluders can also be automatically baked from a scene using the built-in editor plugin.
2021-04-12Allow local port control on net_socket connectionsdam
2021-04-12Validation layers on AndroidSzymon Majewski
2021-04-05Merge pull request #47640 from BastiaanOlij/fix_vulkan_formatRémi Verschelde
Chose format from supported ones that we support
2021-04-05Chose format from supported ones that we supportBastiaan Olij
2021-04-05Style: Apply clang-tidy's `modernize-use-nullptr`Rémi Verschelde
2021-04-01Removed debug codeSzymon Majewski
2021-03-31Merge pull request #47283 from Panquesito7/fix_lgtm_alertsRémi Verschelde
fix: 3 LGTM alerts/warnings
2021-03-31fix: 3 LGTM alerts/warningsDavid Leal
2021-03-31Merge pull request #47250 from BastiaanOlij/check_vulkan_versionRémi Verschelde
Obtain supported Vulkan API
2021-03-30WIP: Add support for VK_EXT_debug_report in VulkanSzymon Majewski
2021-03-28Rename Texture.get_data() to get_image()Marcel Admiraal
2021-03-26Obtain supported Vulkan APIBastiaan Olij
2021-03-23FileDialog: add Back/Forward buttons, add message for inaccessible folders.bruvzg