64452 Commits

Author SHA1 Message Date
Eric Warmenhoven
8aa445dfe2
tvos build fix (#17426) 2025-01-17 21:45:01 +01:00
LibretroAdmin
fce755127c Cleanups/style nits 2025-01-17 20:06:47 +01:00
Apteryks
69ceb95ddc
Add libretro assets directory search path, and have environment variables override configured values (#17054)
* platform_win32: Fix sizeof for DEFAULT_DIR_PLAYLIST.

* frontend/drivers/platform_win32.c (frontend_win32_env_get): Check
the size of correct destination array.

* frontend: Honor the LIBRETRO_ASSETS_DIRECTORY environment variable.

This builds on 763fcd8267 ("unix, win32: Allow set the default
libretro_directory via environment variable") to also allow specifying
the assets directory via an environment variable.

* frontend/drivers/platform_unix.c (frontend_unix_get_env)
<libretro_assets_directory> New variable. Use it to set
DEFAULT_DIR_ASSETS, when available.
* frontend/drivers/platform_win32.c (frontend_win32_env_get): Likewise.

* platform: Honor the LIBRETRO_DIRECTORY environment variable.

Until now, and unlike the defaut core directory, the default
core *info* directory would be hard-coded relative to the installation
directory. Honor the LIBRETRO_DIRECTORY environment variable the same
instead.

* frontend/drivers/platform_unix.c (frontend_unix_get_env): Set
DEFAULT_DIR_CORE_INFO default to the value of the LIBRETRO_DIRECTORY
environment variable, if available.
* frontend/drivers/platform_win32.c (frontend_win32_env_get): Likewise.

* platform: Honor the LIBRETRO_AUTOCONFIG_DIRECTORY environment variable.

* frontend/drivers/platform_unix.c
(libretro_autoconfig_directory): New variable.
(frontend_unix_get_env): Set DEFAULT_DIR_AUTOCONFIG to the value of
the LIBRETRO_AUTOCONFIG_DIRECTORY environment variable, if available.
* frontend/drivers/platform_win32.c: Likewise.

* platform: Honor the LIBRETRO_VIDEO_FILTER_DIRECTORY environment variable.

* frontend/drivers/platform_unix.c
(libretro_video_filter_directory): New variable.
(frontend_unix_get_env): Set DEFAULT_DIR_VIDEO_FILTER to the value of
the LIBRETRO_VIDEO_FILTER_DIRECTORY environment variable, if available.
* frontend/drivers/platform_win32.c: Likewise.

* platform: Honor the LIBRETRO_VIDEO_SHADER_DIRECTORY environment variable.

* frontend/drivers/platform_unix.c
(libretro_video_shader_directory): New variable.
(frontend_unix_get_env): Set DEFAULT_DIR_SHADER to the value of
the LIBRETRO_VIDEO_SHADER_DIRECTORY environment variable, if available.
* frontend/drivers/platform_win32.c: Likewise.

* platform: Honor the LIBRETRO_SYSTEM_DIRECTORY environment variable.

* frontend/drivers/platform_unix.c
(libretro_system_directory): New variable.
(frontend_unix_get_env): Set DEFAULT_DIR_SYSTEM to the value of
the LIBRETRO_SYSTEM_DIRECTORY environment variable, if available.
* frontend/drivers/platform_win32.c: Likewise.

* configuration: Have environment variables override configuration.

Because the configuration file is systematically written when
RetroArch terminates, persisting any previous default/configured
value, setting the LIBRETRO_DIRECTORY, LIBRETRO_ASSETS_DIRECTORY, etc.
environment variables would not have an effect unless the
retroarch.cfg configuration file was cleared.

This seems to go against the common expectation that environment
variables are set by users to *override* the default behavior or
configuration of an application.

* configuration.c (config_load_file) <libretro_directory>
<libretro_assets_directory, libretro_autoconfig_directory>
<libretro_system_directory, libretro_video_filter_directory>
<libretro_video_shader_directory>: New variables. Use the values of
the LIBRETRO_DIRECTORY, LIBRETRO_ASSETS_DIRECTORY,
LIBRETRO_AUTOCONFIG_DIRECTORY, LIBRETRO_SYSTEM_DIRECTORY,
LIBRETRO_VIDEO_FILTER_DIRECTORY and LIBRETRO_VIDEO_SHADER_DIRECTORY
environment variables instead of their corresponding configured
values, when set.
* docs/retroarch.6: Document the environment variables honored and
their behavior.
2025-01-17 20:04:23 +01:00
LibretroAdmin
b211adaaca Function argument name standardization 2025-01-17 19:55:32 +01:00
Ethan O'Brien
ec54cdfcf0
Add HAVE_CHD flag for emscripten makefile (#17423) 2025-01-17 19:55:02 +01:00
Eric Warmenhoven
2471082ced
macos: fix some sandbox handling for app store (#17424)
* minor safety check

* macos: fix some sandbox handling for app store
2025-01-17 19:54:54 +01:00
LibretroAdmin
dda78a4fc8 Use find_last_slash where possible 2025-01-17 13:26:17 +01:00
LibretroAdmin
b47e09534c Less string copies 2025-01-17 13:10:17 +01:00
LibretroAdmin
1e83bfb971 Reduce char arrays 2025-01-17 12:55:45 +01:00
LibretroAdmin
16209a0936 (configuration.c) Cleanups/remove some redundant char buffers
(rcheevos) Fix warning
2025-01-17 12:32:54 +01:00
LibretroAdmin
e2c8e98be0 Buildfixes and warning fixes 2025-01-17 12:03:30 +01:00
LibretroAdmin
31b7812720 Function argument name standardization 2025-01-17 04:16:12 +01:00
LibretroAdmin
9b5007aefd (manual_content_scan) USe fill_pathname 2025-01-17 03:39:30 +01:00
LibretroAdmin
a9b0e45013 (glslang_utill.c) One less string copy per iteration 2025-01-17 03:01:59 +01:00
github-actions
1975235fd7 Fetch translations from Crowdin 2025-01-17 00:14:25 +00:00
LibretroAdmin
e4d7684246 Less string copies in fill_pathname_expanded_and_absolute 2025-01-17 01:01:43 +01:00
LibretroAdmin
e982905eb4 content_get_subsystem_friendly_name - change function signature return
to size_t
2025-01-17 00:55:30 +01:00
LibretroAdmin
0b329018ee Less string buffers and less string copies 2025-01-16 23:59:22 +01:00
LibretroAdmin
86c9a43b08 Use path_get_extension_mutable 2025-01-16 21:09:19 +01:00
zoltanvb
7e00668181
Language update (#17418) 2025-01-16 20:00:16 +01:00
Jamiras
0113226936
(cheevos) include achievement state in netplay states (#17416)
* add achievement data to netplay save state

* honor achievement state from netplay server

* keep processing achievements if menu doesn't pause game

* remove unused variable

* only CRC coremem

* force send savestate on join and hardcore change

* allow hardcore enablement to be synced to clients

* still calculate cheevos_size for non-server

* use appropriate buffer

* optimizations for when achievements are disabled

* support interfacing with older protocols

* formatting

* c89
2025-01-16 20:00:02 +01:00
github-actions
beceb88cd7 Fetch translations from Crowdin 2025-01-16 00:14:30 +00:00
LibretroAdmin
a5c9d9520f * Use fill_pathname_basedir where possible
* Move static variable to only function where it's used
* Change signature of file_path.c function
2025-01-15 22:17:59 +01:00
LibretroAdmin
e0f09f609f (video_shader_parse.c) token_name char size can be further reduced to 24 2025-01-15 18:30:11 +01:00
LibretroAdmin
de3acd9017 (video_shader_parse.c) Go lighter on char stack usage, remove unnecessary
wildcard token_size
2025-01-15 18:28:14 +01:00
LibretroAdmin
b2072dd3be Use strldup where possible, avoid strcpy_literal 2025-01-15 16:36:49 +01:00
LibretroAdmin
9da7af46c3 len variable/argument name standardization 2025-01-15 16:04:25 +01:00
LibretroAdmin
076c2bca3b video_shader_replace_wildcards - get rid of the 2D char arrays 2025-01-15 15:25:27 +01:00
LibretroAdmin
7456711eaa (video_shader_parse.c) Standardize replace_len variable name and
reduce char array buffers
2025-01-15 15:08:37 +01:00
LibretroAdmin
047e04ed3e Standardize local len variable naming conventions 2025-01-15 15:00:12 +01:00
LibretroAdmin
47d199297a runtime_file.c - Move scope of menu_driver_ident call 2025-01-15 12:45:05 +01:00
LibretroAdmin
2533bbdc0b Small cleanups 2025-01-15 12:37:35 +01:00
LibretroAdmin
f7447d2e0d Add TODO/FIXME notes and cleanup argument naming 2025-01-15 12:19:02 +01:00
github-actions
5069b693a1 Fetch translations from Crowdin 2025-01-15 00:14:15 +00:00
Viačasłaŭ Chalikin
13bd14747a PipeWire improvements
* Use given latency
* Fix (non)blocking microphone
* Mute microphone on startuo
* Reset buffer when the microphone stops
* Delete client-info handler
* Refactor the naming conventions, styling
2025-01-14 21:31:32 +01:00
Eric Warmenhoven
2fdd8434df
tvOS: Fix 720p display (#17414) 2025-01-14 21:31:11 +01:00
zoltanvb
31534438bc
Enable also alternative device names (#17412)
Enable input_device_device_display_name to also have alt_ variants.
Tests updated.
2025-01-14 16:19:05 +01:00
Jesse Talavera
0bb0077358
Fix a crash when initializing an illuminance sensor on Linux (#17408) 2025-01-13 21:54:52 +01:00
LibretroAdmin
47d888364d Standardize len variables - argument should always be named 'len',
while local len variables should have '_' prefix
2025-01-13 21:53:49 +01:00
LibretroAdmin
e081bde064 (core_info.c) Use fill_pathname where we can 2025-01-13 21:14:30 +01:00
LibretroAdmin
bd413de842 Log messages are too small to hold entire path 2025-01-13 16:01:16 +01:00
LibretroAdmin
3c3611af6f Resync libretro-common 2025-01-13 15:37:59 +01:00
Viačasłaŭ
1d6badb1f1
(PipeWire) Fix speedup in the video threaded mode (#17406) 2025-01-13 04:36:17 +01:00
github-actions
41290bb1a8 Fetch translations from Crowdin 2025-01-13 00:16:05 +00:00
LibretroAdmin
7e7224196a Avoid some strlens, and also return size_t in more string
modification functions
2025-01-12 23:39:29 +01:00
LibretroAdmin
598764b860 rarch_file_log_set_override - size_t return 2025-01-12 23:09:12 +01:00
LibretroAdmin
fb338b90bf Turn some functions to returntype size_t 2025-01-12 23:03:41 +01:00
LibretroAdmin
955eeed31a (playlist.c) -
* playlist_get_old_format_metadata_value - now returns size_t
* fix bug where string copy was being made with strdup before
anything got written to the string
2025-01-12 22:32:42 +01:00
LibretroAdmin
e84ea6082c Fix 'Remove Preset' 2025-01-12 19:05:44 +01:00
LibretroAdmin
e30fcb6da6 Remove unnnecessary null pointer check 2025-01-12 18:45:14 +01:00