282 Commits

Author SHA1 Message Date
libretroadmin
b8391e233f * PATH_MAX_LENGTH redefined from 4096 to 2048
* Massive reduction in heap space allocation, going from settings struct
264kb to 119Kb
* Use NAME_MAX_LENGTH for base paths/names, etc
* Use DIR_MAX_LENGTH for directory sizes
2024-09-09 05:47:32 +02:00
libretroadmin
0f7a665439 Resync libretro-common 2024-09-05 11:49:08 +02:00
libretroadmin
827e631903 (libretro-common) Some functions now return len 2024-06-15 12:47:51 +02:00
libretroadmin
c022e4e624 Cut down on snprintf 2024-06-15 00:56:51 +02:00
Ryunam
c5c86fe5e8
Allow all systems to check for backslashes (Windows) as last slash in path. Improves portable core logic (#15612) 2023-08-17 14:15:42 -07:00
libretroadmin
f1c651053f - Use VK_FALSE/VK_TRUE consistently for Vulkan structts
- Some minuscule changes to file_path.c
2023-07-17 15:27:34 +02:00
libretroadmin
a5f2903253 Simplify path_basename 2023-07-17 15:13:13 +02:00
libretroadmin
4a411eb1e5 Cut down on strlcats and use strftime return value 2023-07-17 11:26:48 +02:00
libretroadmin
fe1297cc33 (file_path.c) Cut down on some strlcats 2023-07-17 10:09:34 +02:00
libretroadmin
4b6bd83780 Replace some more strlcat calls 2023-07-16 18:33:34 +02:00
libretroadmin
bdc398d79f - Safer code - use strlcpy where possible instead of manual character
assignments for strings longer than 2 chars
- Use strlcpy concatenation instead of strlcat
- Make sure that what remains of iteration of the '_len' variable
for manual char assignment
is done in a safer way so mistakes are less possible
2023-06-20 16:33:55 +02:00
libretroadmin
631301b3f7 * Cut down on strlcat calls when possible and replace them with clever
usage of strlcpy (when position/offset of previous strlcpy/snprintf call
is known. strlcat implementation in libretro-common makes implicit strlen
call, using strlcpy avoids this
* Reduce a bunch of local char variables by use of said clever usage,
should save up on local stack size usage
2023-06-18 12:06:12 +02:00
libretroadmin
207dfe170c Small cleanups 2023-05-03 21:10:21 +02:00
libretroadmin
b951a010fd Move strftime_am_pm to libretro-common and get rid of duplicated
function
2023-05-01 19:03:11 +02:00
libretroadmin
27ad653dbd Fixed another CXX_BUILD error 2023-02-23 17:11:26 +01:00
libretroadmin
4fa19e552a CXX_BUILD buildfixes 2023-02-23 17:09:45 +01:00
LibretroAdmin
da13fb0f48 Don't include errno.h in files that don't justify its use 2022-08-25 05:19:30 +02:00
LibretroAdmin
c7786a45e1 Create path_get_extension_mutable and use it in menu_explore function
for trivial extension replacement in string
2022-08-06 19:06:31 +02:00
LibretroAdmin
2e5df6a973 fill_str_dated_filename: add size_t return value 2022-08-04 17:18:32 +02:00
LibretroAdmin
0c21a92581 * fill_pathname_expand_special will NULL-terminate string so not
necessary to NULL terminate passed string
* fill_pathname - add size_t return value
* Some general cleanups
2022-08-04 17:10:51 +02:00
LibretroAdmin
9ae46d2648 (file_path.c)
- file_path_expand_special - cut down on code duplication
- file_path_expand_special - add size_t return value
- fill_pathname_abbreviate_special - add size_t return value
2022-08-04 16:53:53 +02:00
LibretroAdmin
5172fe2ba6 fill_pathname_abbreviated_or_relative - add return value 2022-08-04 16:44:01 +02:00
LibretroAdmin
b2634ea588 * Create fill_pathname_join_special - and specify fill_pathname_join
as deprecated.
* Use fill_pathname_join_special in the vast majority of cases where
we can ensure out_path is a new empty string
* Get rid of some extension concatenation with strlcat where encountered
* Some general cleanups with NULL termination of strings that get immediately
passed to strlcpy/strlcpy-adjacent functions
2022-08-04 14:19:38 +02:00
LibretroAdmin
e7f3432e48 Replace some trivial strlcat usage - use return value of preceding
strlcpy then simply append the extension to it at this location
2022-08-04 03:45:09 +02:00
LibretroAdmin
f4c22cb236 (file_path.c) fill_pathname_join - do away with one less strlcat 2022-08-03 23:54:10 +02:00
LibretroAdmin
605c4608d9 Optimize fill_pathname_join - avoid the call to fill_pathname_slash()
which would have an implicit strlen cost
2022-08-01 22:14:26 +02:00
LibretroAdmin
c7a1d83675 (libretro-common) Start documenting leaf functon calls in function documentation
(libretro-common) docs - document when string has to be non-NULL or else UB (undefined behavior)
(libretro-common) stdstring.c - string_hex_to_unsigned - make strlen call unneeded
2022-08-01 09:52:39 +02:00
LibretroAdmin
fca6015011 (file_path) path_basedir - remove unnecessary strlcpy - add return value comment
to another function
2022-07-31 12:45:14 +02:00
LibretroAdmin
88bdaffa87 path_basedir_wrapper - get rid of unnecessary strlcpy 2022-07-31 12:42:50 +02:00
LibretroAdmin
36edb15c5b path_parent_dir - don't do implicit strlen inside 2022-07-31 12:31:55 +02:00
libretroadmin
05622ebe85 Some trivial strlen usage simplifications where possible, removing
the need for strlen
2022-07-20 17:23:28 +02:00
libretroadmin
ba35f0de93 (file_path.c) Do away with trivial strlen checks (checked if
return number was <= 2/>= 2, instead check first two characters
of the string directly instead for NULL
2022-07-19 23:23:37 +02:00
LibretroAdmin
29774f5b7a
Small opts (#14186)
* (joypad_connection) Small optimizations -
* Turn functions static where possible
* Hose strlen call out of loop

* (input_driver.c) General cleanups:
* Some small code/style nits

task_screenshot.c:
* Move widget callback function for screenshots to task_screenshot.c

(file_path.c):
* Turn get_pathname_num_slashes into static function
* path_linked_list_free - always returns true, so get rid of return value
* path_linked_list_new - fix function signature
* path_get_archive_delim - do not NULL-terminate string, already done by strlcpy later on

General:
* Slight optimizations - use int/size_t for loop counter variable instead of unsigned
* Take advantage of fact that strlcpy already NULL-terminates, so don't do this explicitly
outside if we're just going to end up calling strlcpy/fill_pathname_join on it anyway
2022-07-19 10:01:33 +02:00
libretroadmin
01d68fdb7e Remove unused fill_pathname_basedir_noext 2022-07-12 00:09:22 +02:00
libretroadmin
293722ac38 Get rid of fill_pathname_join_concat_ext 2022-07-11 22:01:20 +02:00
libretroadmin
b7926605f4 Remove fill_short_pathname_representation 2022-07-11 21:40:09 +02:00
libretroadmin
b1c9f93903 (file_path) remove deprecated functions 2022-07-11 21:29:01 +02:00
libretroadmin
adf9994828 Deprecate fill_pathname_base_noext 2022-07-11 20:13:44 +02:00
libretroadmin
7186d75c44 Designate fill_pathname_noext as deprecated function 2022-07-11 20:03:42 +02:00
libretroadmin
d706c9c5bf Start deprecating trivial functions in file_path.c 2022-07-11 19:56:46 +02:00
libretroadmin
0d4ef1cef4 (file_path.c) Call trivial strlcpy/strlcat operations directly
instead of going through functions
2022-07-11 17:23:06 +02:00
libretroadmin
6438d575d4 (file_path.c) Simplifications 2022-07-11 17:14:09 +02:00
libretroadmin
0e85113eb3 (libretro-common) Style nits/cleanups 2022-07-10 18:13:49 +02:00
HyperspaceMadness
8d177ed865 Shader Load Extra Parameter Reference Files
When a shader preset is loaded now when there are more than one #reference line the parameter values will be loaded from the references after the first one
2022-06-04 20:12:21 -04:00
LibretroAdmin
6ba8fe225d
Revert "Shader Preset Loading of Multiple additional #references lines for settings" 2022-05-30 02:39:25 +02:00
Remi McGill
684889507b Shader Loading of Multiple References for settings
Multi reference settings working

Config fixes

Multi-Reference Loading Working, Checking for shader chain not working

Checking References is working

Improved path_linked_list_add_path

Simplify path list stuff

Fixed Static Definition

Fixes

Fixes

Fix to Trigger PR Update

Removed Legacy Orbis which got left in a merge

Memory Leak Fix
2022-05-24 14:07:55 -04:00
Vladimir Serbinenko
2f130a23e4
Allow loading files from archive subdirectory (#13443)
* Allow loading files from archive subdirectory

Common example is "games.7z#game1/version1.ext" current code assumes that
everything that is before last slash is part of filesystem directory which
is false in this case.

* Fix listing of archive subdirectories

Currently file_archive_get_file_list_cb returns 0 on skipped entries.
It's wrong as calling convention for it is "0 means to stop iterating".
So on first extensionless file or an explicitly listed directory
further listing has stopped
2022-01-11 13:59:38 +01:00
Manuel Alfayate Corchete
e5215d9e29
Fix incorrect file names for remap files when the content path doesn't have a preceding slash. (#13385) 2021-12-20 23:24:19 +01:00
tunip3
6c123dd078
Mitigate need for vfs cores on ntfs drives [UWP/XBOX] (#13368)
* make check for standard io by access rather than the just assuming based on path string

* add code to auto permissions so files can be accessed by non vfs cores
(no exfat or fat32 support yet)

* remove commit from macro because apparently it causes issues

Co-authored-by: Tunip3 <tunip3@users.noreply.github.com>
2021-12-17 13:46:04 +01:00
twinaphex
619398bbe4 Backport parts of 73c0760236 2021-11-09 23:12:57 +01:00