31b90246e7
Fix empty lines being added for errors with no script backtrace
2025-05-05 13:27:21 +02:00
01fc9aee6c
Core: Modernize C headers with C++ equivalents
2025-05-02 08:23:01 -05:00
39ad4633a8
Web: Fix crash when built with dlink_enabled=yes
2025-04-25 15:14:25 -05:00
28089c40c1
Merge pull request #91006 from reduz/live-backtrace
...
Ability to print and log script backtraces
2025-04-24 17:18:52 -05:00
d1dcb40d56
Ability to print and log script backtraces
...
Co-authored-by: Mikael Hermansson <mikael@hermansson.io >
2025-04-24 18:54:41 +02:00
60784744ce
Handle the case where waitpid returns errno EINTR.
...
This case indicates that a debugger is attached, and `waitpid` should be called again.
Log errors when threads exit with `errno`.
2025-04-07 14:48:34 +02:00
23129a66ed
Replace append_utfx with direct String::utfx
2025-03-30 19:56:38 +02:00
780cf03051
Merge pull request #104556 from Ivorforce/string-extend-instead-of-parse
...
Use `append_` instead of `parse_` for `String` methods.
2025-03-29 10:16:33 -05:00
48bfe13e4f
Add methods to decode/encode multibyte encodings.
2025-03-28 17:32:34 +02:00
ffa6ef220b
Use append_ instead of parse_ for String methods.
2025-03-27 17:51:02 +01:00
b77aa473a1
Implement a "Recovery Mode" for recovering crashing/hanging projects during initialization
2025-01-03 10:50:15 +00:00
f08fe52d9a
Merge pull request #99963 from Faless/web/no_ip
...
[Web] Implement dummy IP and NetSocket
2024-12-17 22:59:42 +01:00
b5c31ebb41
Add contains_char() for single-character 'contains' calls.
2024-12-06 20:23:35 +01:00
1b3e483899
Add file and dir temporary utilities
...
Co-authored by @Alex2782 for the Android bindings.
Many thanks to the reviewers also.
Co-authored-by: Alex <alex.hart.278@gmail.com >
2024-12-02 12:08:14 -05:00
c831f635fe
[Web] Implement dummy IPWeb instead of IPUnix
...
Note: This commit ties the IPUnix to the UNIX_SOCKET_UNAVAILABLE define,
disabling it when set. It is maybe not semantically correct (getifaddrs)
is not part of the "socket" API, but it's reasonable to expect that a
platform not supporting Unix-style sockets, would also not support other
Unix network functions.
2024-11-28 20:47:18 +01:00
e9b57fce82
Convert line breaks to \n and strip line break from the end of string returned by OS::read_string_from_stdin/OS::get_stdin_string.
2024-11-23 15:11:50 +02:00
68f638cf02
Use (r)find_char instead of (r)find for single characters
2024-11-17 10:02:18 +01:00
fc52821cfb
[Net] Properly rename NetSocketPosix to NetSocketUnix
2024-11-13 10:27:01 +01:00
179321a0a3
Merge pull request #91201 from bruvzg/con_type
...
[OS] Add functions to determine standard I/O device type.
2024-11-12 12:13:12 -06:00
0c620b29cd
[Net] Split Unix/Windows NetSocket implementation
2024-11-10 16:13:50 +01:00
76164c2aa9
[OS] Add functions to determine standard I/O device type.
2024-11-06 13:33:38 +02:00
10f3c1f587
Add support for non-blocking IO mode to OS.execute_with_pipe.
2024-09-06 14:16:39 +03:00
955d5affa8
Reduce and prevent unnecessary random-access to List
...
Random-access access to `List` when iterating is `O(n^2)` (`O(n)` when
accessing a single element)
* Removed subscript operator, in favor of a more explicit `get`
* Added conversion from `Iterator` to `ConstIterator`
* Remade existing operations into other solutions when applicable
2024-05-04 16:08:55 +02:00
764de7fe31
Collapse the gdextension arguments into the GDExtensionData struct
...
This is used to reduce the number of arguments to `OS::open_dynamic_library(...)`.
2024-04-19 07:56:02 -07:00
ede88cf59d
Fix loading GDExtension dependencies on Android
2024-04-19 07:55:08 -07:00
dce4a3e4c2
Add get_process_exit_code() method
2024-04-16 12:46:15 +02:00
b73e740786
Add renaming of PDB files to avoid blocking them
2024-04-05 00:14:23 +03:00
082b420c0a
Implement OS.execute_with_pipe method to run process with redirected stdio.
...
Implement `pipe://*` path handling for creation of named pipes.
2024-03-27 11:41:16 +02:00
b0d07b1bc2
Merge pull request #86936 from akx/env-utf-8
...
Attempt parsing environment variables as UTF-8
2024-03-11 14:02:22 +01:00
a8bc9f3e78
Add const lvalue ref to core/* container parameters
2024-02-14 11:20:36 -03:00
bd70b8e1f6
Add THREADS_ENABLED macro in order to compile Godot to run on the main thread
2024-01-17 13:58:29 -05:00
a4c5dae8cb
Attempt to parse environment variables as UTF-8
2024-01-07 19:53:43 +02:00
c921b6587c
Merge pull request #84469 from time-killer-games/patch-1
...
Fix NetBSD executable path
2024-01-04 14:25:46 +01:00
fe6b073811
Distinguishs between dynamic library not found and can't be opened.
2024-01-01 20:01:57 +08:00
52da1e9b6b
Fix NetBSD Executable Path
2023-11-06 06:33:36 -08:00
a039d0b61a
Linux: Disable RTLD_DEEPBIND mode for dlopen() in sanitizer builds
2023-10-30 16:16:08 -05:00
7f4e700bf7
On Linux, favor local symbols when loading a shared library
2023-10-07 11:06:56 -05:00
3565d1bf7e
[Drivers,Platform] Replace ERR_FAIL_COND with ERR_FAIL_NULL where applicable
2023-09-12 20:13:32 +02:00
3cd865dbe8
Fix formatting of dlopen error message on Windows
...
And harmonize the format for all platforms.
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com >
2023-07-09 23:39:45 +02:00
dcc92c174e
Remove uses of vformat() with no placeholders
...
This is identical to passing the string directly.
2023-06-28 16:27:55 +02:00
628f3b2f79
[OS] Implement and expose to scripting APIs get_memory_info method instead of old get_free_static_memory.
2023-04-24 14:08:55 +03:00
818a9e99a4
OS: Add unset_environment, better validate input
...
Instead of returning an undocumented boolean error code, we do the
validation checks that should ensure a successful result.
Based on:
- https://linux.die.net/man/3/setenv
- https://learn.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-setenvironmentvariable
2023-01-16 16:39:44 +01:00
0e4e782ada
Merge pull request #70714 from Calinou/doc-os-stdin
...
Improve documentation for `OS.read_string_from_stdin()`
2023-01-12 09:24:47 +01:00
86b8176864
Improve documentation for OS.read_string_from_stdin()
...
This makes it clearer that calls to this method are blocking.
The unused method parameter was also removed.
2023-01-11 19:57:25 +01:00
d95794ec8a
One Copyright Update to rule them all
...
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.
It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).
We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).
Also fixed "cf." Frenchism - it's meant as "refer to / see".
2023-01-05 13:25:55 +01:00
3d8a942a56
Fix reading Unicode from stdio.
2022-12-21 09:07:59 +02:00
6bf9594cfb
[iOS] Fix getting Unicode executable path, fix "!configured" and "!classes.has(ti.inherits)" error spam on start.
2022-11-16 18:55:37 +02:00
e48c5daddf
Unify usage of GLOBAL/EDITOR_GET
2022-10-18 19:01:48 +02:00
5aadc618b6
Merge pull request #66102 from MJacred/feature/getvideoadapterdriverinfo
...
Fetch video adapter driver name and version from OS
2022-10-11 13:59:53 +02:00
de768afbdc
Fetch video adapter driver name and version from OS on Linux/*BSD and Windows
2022-10-11 12:39:41 +02:00