godot/drivers/unix
Joel Croteau 6e78eec37f
Fix reload of GDExtension libraries in framework package on macos
`GDExtension::open_library` has a check in it to see if the library was loaded
from a temp file, and if it was to restore the original name as that is the one
we actually care about. This check is breaking extension reloading on Mac when
the library path is to a framework folder, as the file inside the framework
will not generally be the same name as the folder.

This check also shouldn't be necessary even on Windows, which is the only
platform that uses `generate_temp_files`, since disposal of the created temp
file is handled within `OS_Windows::open_dynamic_library`, and
`GDExtension::open_library` (which is the only function to call
`open_dynamic_library` with a `p_data` argument) only cares about the original
library file path and has to do extra work to remove the name of the temp file.
Instead, I have removed that check and set `OS_Windows::open_dynamic_library`
to return the name of the original file and not the name of the copy.

This fixes GDExtension reloading on macOS. I do not have a Windows machine
available to test that it still works properly on Windows, so someone should
check that before merging this.

(cherry picked from commit f44d6a235f)
2024-09-16 16:55:39 +02:00
..
SCsub check_c_headers from tuple array to dictionary 2023-10-01 14:09:39 -05:00
dir_access_unix.cpp Reduce and prevent unnecessary random-access to `List` 2024-05-04 16:08:55 +02:00
dir_access_unix.h [Linux] Implement DirAccess.is_case_sensitive for EXT4 and F2FS. 2023-10-13 15:48:03 +03:00
file_access_unix.cpp Fix reload of GDExtension libraries in framework package on macos 2024-09-16 16:55:39 +02:00
file_access_unix.h [FileAccess] Implement `resize` method. 2024-04-12 19:20:49 +03:00
file_access_unix_pipe.cpp Implement `OS.execute_with_pipe` method to run process with redirected stdio. 2024-03-27 11:41:16 +02:00
file_access_unix_pipe.h [FileAccess] Implement `resize` method. 2024-04-12 19:20:49 +03:00
ip_unix.cpp UWP: Remove platform port, needs to be redone from scratch for 4.x 2023-09-07 15:01:59 +02:00
ip_unix.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
net_socket_posix.cpp Add const lvalue ref to core/* container parameters 2024-02-14 11:20:36 -03:00
net_socket_posix.h Add const lvalue ref to core/* container parameters 2024-02-14 11:20:36 -03:00
os_unix.cpp Reduce and prevent unnecessary random-access to `List` 2024-05-04 16:08:55 +02:00
os_unix.h Collapse the gdextension arguments into the `GDExtensionData` struct 2024-04-19 07:56:02 -07:00
syslog_logger.cpp One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
syslog_logger.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
thread_posix.cpp One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
thread_posix.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00