jdgleaver
c37f540b72
Core Info Cache Improvements
...
- Core info cache can now be enabled/disabled on all platforms via a new `Settings > Core > Cache Core Info Files` option
- Core info cache file has been renamed from `.cache` to `core_info.cache` (i.e. it is no longer a 'hidden' file on Unix platforms, so can be deleted easily)
- The core info cache file is now compressed (rzip) to further reduce disk IO
- The presence of a `core_info.refresh` file in the core info directory will force a one-time refresh of the info cache. This file is generated automatically when toggling on the `Cache Core Info Files` option, and we will also add it to core info file packaging such that updating info files (either manually or via the online updater) will force a refresh
- The core info cache no longer contains 'core is locked' and 'firmware missing' data fields; these are 'dynamic' properties that must be determined at runtime
- The 'core is locked' status is now determined on core info intialisation by parsing the core directory listing, rather than by performing indivdual 'lock file exists' checks. This minimises file IO, and greatly improves performance on devices with slow storage
- While parsing the core info cache file, we now avoid unnecessary `strdup()`s when adding entries to the resultant cache list
- Memory leaks (potential and real) have been fixed, and safety checks added
- Build errors have been fixed
2021-05-06 15:00:55 +01:00
bulzipke
e96cbcac04
(3DS) Build core info cache
2021-05-04 23:01:17 +09:00
jdgleaver
3bc2758d51
(core_info) Prevent potential hash collisions when searching for cores
2021-04-28 17:52:15 +01:00
jdgleaver
f4511f6fa4
(core_info) Performance optimisations + code clean-ups/refactors
2021-04-26 14:30:31 +01:00
twinaphex
4c4d5e5837
(core_info.c) Cleanups
2021-04-20 19:46:11 +02:00
Autechre
dbe1061742
Refactors ( #12057 )
...
* lock_file_path here will never be empty
* Simplify path_mkdir - final return value can become false, and sret
variable can go
2021-02-21 11:09:11 +01:00
twinaphex
c744baeb89
Add ctype variants to stdstring and use it in RA
2020-09-27 22:15:32 +02:00
twinaphex
5f2688c4cf
Cleanup
2020-09-05 19:37:31 +02:00
jdgleaver
bd80f02f11
(Android/Play Store Builds) Add option to switch all installed cores to Play Store versions
2020-09-02 17:13:03 +01:00
jdgleaver
4799d2d955
(Android/Play Store) Add frontend support for core installation via Play Feature Delivery
2020-08-28 16:30:54 +01:00
twinaphex
56640bf7c9
(jdgleaver) Cleanups
2020-08-27 12:10:14 +02:00
twinaphex
ea6bf9b9fc
Cleanup core_info_set_core_lock
2020-08-26 20:22:56 +02:00
twinaphex
6478d20e55
(core_info/UWP) Use non-heap based versions for string_list
2020-08-26 18:43:19 +02:00
jdgleaver
7a07cc1305
Fix 'Set Core Association' regression
2020-08-26 15:18:39 +01:00
twinaphex
ad61d8ff92
Simplify config_get_entry
2020-08-26 02:17:37 +02:00
twinaphex
6af6d5eb1c
(jdgleaver) Initialize string lists properly to prevent memory leaks
2020-08-25 13:25:27 +02:00
twinaphex
8a479e6006
Create dir_list_initialize/dir_list_deinitialize
2020-08-24 18:56:25 +02:00
twinaphex
ea4a74a005
Use string_list_initialize/deinitialize for core_info.c
2020-08-24 01:02:35 +02:00
twinaphex
4ec216dc0b
Get rid of file_path_str
2020-08-22 01:06:10 +02:00
twinaphex
ad7db2e2b8
Move path variables off heap size; prevent potential memory
...
fragmentation
2020-08-18 12:44:14 +02:00
Autechre
8cb861798e
Merge pull request #11075 from francescotintori/francesco/playlist_autofix
...
Playlist base content directory paths
2020-07-28 16:10:20 +02:00
francescotintori
9744fcb76a
Adds base content directory support in playlists. If playlist base content directory does not match configuration parameter 'rgui_browser_directory', all entries paths are automatically fixed to match parameter 'rgui_browser_directory'.
...
Functionality is enabled if new parameter 'playlist_autofix_paths' is enabled.
2020-07-27 20:59:56 +02:00
twinaphex
9db00e4143
Start using video_driver_get_flags_wrapper again
2020-07-27 06:40:30 +02:00
twinaphex
b9e471d22a
Revert "Video context driver cleanups - less functions to go through with"
...
This reverts commit cd1d760a38
.
2020-07-26 23:12:05 +02:00
twinaphex
26d915c1f2
Revert "(core_info.c) Cleanup"
...
This reverts commit ab8f3115da
.
2020-07-26 23:11:53 +02:00
twinaphex
b604200730
Revert "Cleanup core_info_hw_api_supported"
...
This reverts commit 9f653f27b0
.
2020-07-26 23:11:38 +02:00
twinaphex
9f653f27b0
Cleanup core_info_hw_api_supported
2020-07-26 08:29:17 +02:00
twinaphex
ab8f3115da
(core_info.c) Cleanup
2020-07-26 08:22:04 +02:00
twinaphex
cd1d760a38
Video context driver cleanups - less functions to go through with
...
public scope
2020-07-26 08:00:49 +02:00
twinaphex
a3242daa5d
Silence more warnings
2020-07-23 05:51:04 +02:00
twinaphex
270a22ce0b
core_info_hw_api_supported - silence warning array subscript has type
...
'char'
2020-07-23 05:18:15 +02:00
twinaphex
55d9456cbb
More static code analyzer fixes
2020-06-29 20:14:14 +02:00
twinaphex
fe14bc6e07
(core_info.c) Get rid of calloc
2020-06-29 03:46:27 +02:00
twinaphex
021625fd4a
Revert "Move static functions to top of files"
...
This reverts commit 02b542e2a5
.
2020-06-26 18:40:26 +02:00
twinaphex
02b542e2a5
Move static functions to top of files
2020-06-26 18:15:38 +02:00
twinaphex
dd2844a2ac
Convert calloc to malloc where possible
2020-06-24 19:45:09 +02:00
twinaphex
0cdea62072
(core_info.c) Try to avoid config_get_string
2020-06-24 11:57:58 +02:00
jdgleaver
160b864d32
Prevent unnecessary string duplication when parsing core info files
2020-06-22 15:03:47 +01:00
jdgleaver
80f36e16d0
Add option to selectively 'lock' (prevent modification of) installed cores
2020-06-18 17:36:33 +01:00
twinaphex
b46a316df9
(core info) Pass pointer around to some functions
2020-06-13 07:29:26 +02:00
twinaphex
34af28461f
Move core info global state to retroarch.c
2020-06-13 07:21:00 +02:00
jdgleaver
445921ac5d
Core info search optimisations + improved core selection logic + clean-ups
2020-06-06 13:59:28 +01:00
twinaphex
8b796d3b47
Add TODO/FIXME notes for globals
2020-05-29 05:27:13 +02:00
jdgleaver
9f4a9e9cd6
Core updater improvements
2020-05-27 17:02:43 +01:00
Francisco Javier Trujillo Mata
1eeb3dcf30
Adapt PS2 port to new SDK with newlib support (CDVDFS support is missing)
2020-05-20 20:13:19 +02:00
jdgleaver
9eb8472805
Only write config files to disk when parameters change
2020-04-27 17:06:35 +01:00
twinaphex
05cf2ee8ba
(core_info.c) Move globals to single struct
2020-03-06 18:13:36 +01:00
twinaphex
4493ece2f2
Cleanup
2020-02-16 20:27:22 +01:00
twinaphex
e54e12876b
Header cleanups
2020-01-25 17:51:07 +01:00
twinaphex
b94b9e2adb
Go back to plain strlcpy/strlcat - probably best to look at
...
opportunities to reduce these calls vs. replacing them with
unsafe macros
2019-09-23 00:19:01 +02:00
twinaphex
76f4cf5cc5
Start using STRLCAT_CONST/STRLCAT_CONST_INCR/STRLCPY_CONST
2019-09-20 20:39:34 +02:00
twinaphex
db624a7c99
Start cleaning up the rather messy manual assignment
2019-09-20 02:03:26 +02:00
twinaphex
ab515daa0c
Try to get rid of file_path_str
2019-09-18 18:12:57 +02:00
twinaphex
ed77d46cc9
Cut down on some strlcat usage where not necessary
2019-09-18 04:58:52 +02:00
Twinaphex
753be84ae0
(Apple) Silence some warnings
2019-09-14 17:15:30 +02:00
twinaphex
96ba8b6928
Cleanups
2019-08-10 04:34:15 +02:00
Brad Parker
80cb762cdb
samples/tasks/database buildfix
2019-07-29 16:30:53 -04:00
twinaphex
95c5d22c5a
Split up mmdevice enumeration string list to separate
...
file
2019-07-25 05:42:23 +02:00
Brad Parker
2db48d39f4
fix comparison
2019-07-23 23:05:09 -04:00
Brad Parker
61ab9249fc
add "required hw api" to core info files, block content loading if core is incompatible with current graphics API/version
2019-07-23 22:44:45 -04:00
twinaphex
c85707336b
Fix LGTM warning - declaration hides parameter
2019-07-18 19:07:27 +02:00
twinaphex
41a2fabb4e
Create config_file_new_from_path_to_string
2019-07-18 12:03:50 +02:00
twinaphex
a465971556
core_info_get_display_name - use config_file_new_from_string
2019-07-18 00:43:03 +02:00
twinaphex
319e708738
core_info_list_iterate - use config_file_from_string
2019-07-16 19:01:43 +02:00
jdgleaver
0be44e57ad
Overhaul default playlist core association
2019-06-26 17:42:26 +01:00
twinaphex
d9b4afe04a
Quick buildfix
2019-05-10 18:34:18 +02:00
twinaphex
74388d8490
Remove string_concat
2019-05-10 18:05:58 +02:00
twinaphex
b270ea6b79
Revert "(MSVC 2003) core_info - remove all_ext from heap - fixes crash with MSVC2003"
...
This reverts commit 50a57b03a1
.
2019-05-10 08:31:18 +02:00
twinaphex
50a57b03a1
(MSVC 2003) core_info - remove all_ext from heap - fixes crash with MSVC2003
...
and makes for easier code
2019-05-05 14:23:29 +02:00
twinaphex
cce4aa9c86
(core_info.c) Use string_concat for constants
2019-05-01 00:21:50 +02:00
twinaphex
bc2bdd5734
config_file_read not needed anymore
2019-04-30 13:37:10 +02:00
Twinaphex
1819584d74
(General) Fix some warnings
...
(OSX) Add HAVE_STB_FONT
2019-04-30 11:38:47 +02:00
twinaphex
3b24565b66
Be more careful with dangling pointer
2019-04-28 10:17:03 +02:00
twinaphex
2b5b67d663
Simplify core_info code
2019-04-28 05:15:21 +02:00
twinaphex
5044537625
(core_info.c) Small opts for core_info.c
2019-04-27 14:23:07 +02:00
twinaphex
2c47d571aa
Use path_is_valid instead of filestream_exists when we only
...
need to know if a file exists on the filesystem
2019-04-27 14:01:50 +02:00
twinaphex
3e72c502a8
strlen optimizations :
...
- use STRLEN_CONST for constant strings, translates to sizeof
which should be computed at compile-time
- found some places where we are needlessly calling strlen two
times instead of just once
2019-04-27 04:21:10 +02:00
twinaphex
7201d0bf22
Revert "Use path_is_valid instead of filestream_exists where possible -"
...
This reverts commit 88e3abd6fd
.
2019-04-26 13:46:21 +02:00
twinaphex
88e3abd6fd
Use path_is_valid instead of filestream_exists where possible -
...
stat should be faster than fopen
2019-04-26 13:33:25 +02:00
twinaphex
16e2db25c4
Prefer config_file_read instead of config_file_new when we are
...
sure the path cannot be a directory path
2019-04-22 01:23:50 +02:00
twinaphex
69168ec6bc
Core info list iteration was calling path_stat two times on the same
...
paths - unnecessary file I/O is an issue with UWP/WinRT so let's cut
this down to only one path_stat. config_file_read function created -
acts the same as config_file_new except it doesn't check if the path
provided is actually a directory, which in turn would lead to another path_stat call
2019-04-22 01:13:19 +02:00
twinaphex
e5800cf733
Cleanups
2019-04-21 05:47:24 +02:00
jdgleaver
8a2cd64889
Always use core display name when populating playlists
2019-03-07 16:54:46 +00:00
jdgleaver
9bcc80320d
Core Info: Use basename when searching core paths (fixes issues when core directory is on a symlinked filesystem)
2019-03-06 16:42:09 +00:00
Brad Parker
4f0d61a2ac
update copyright
2019-02-22 19:13:36 -05:00
twinaphex
c98b2e2292
Buildfixes and more static code analysis warning fixes
2019-01-10 22:24:43 +01:00
twinaphex
9c5c0aea58
Start replacing WinRT ifdefs so that Windows Phone 8 can be detected
...
too
2019-01-02 13:30:58 +01:00
krzys-h
48d82929ff
(UWP) Add support for loading cores from optional packages
2019-01-01 16:21:47 +01:00
Francisco Javier Trujillo Mata
0880bd00b0
PS2 is compiling with null drivers
2018-11-09 22:40:50 +01:00
Jesse Bryan
f6a0b09e7d
general: renamed rpcname to systemid
2018-08-21 09:41:16 -05:00
Jesse Bryan
c276f9349a
discord: remove hardcoded values and use new attribute
2018-08-20 20:55:44 -05:00
Brad Parker
9f60a6d17c
fix Core Information not appearing after 73f2710
2018-08-15 16:11:05 -04:00
Brad Parker
a1aefc901c
Qt WIMP GUI
2018-04-30 14:33:05 -04:00
twinaphex
c9e48cd9de
Cleanups / get rid of more dependencies
2018-04-10 04:31:19 +02:00
twinaphex
6f0fc2426d
(database_info/task_database) Get rid of list_special dependencies
2018-04-10 04:13:45 +02:00
twinaphex
3016edce0a
Move retroarch.h dependencies out of core_info.c
2018-04-10 04:00:01 +02:00
twinaphex
8ca8f92aeb
No more configuration.h dependencies in core_info.c
2018-04-10 03:02:10 +02:00
twinaphex
8b4b5e88ce
Update
2018-04-09 22:20:51 +02:00
twinaphex
86c826350e
Start moving dependencies out of certain files
2018-04-09 22:18:25 +02:00
twinaphex
c830d0273d
(core_info.c) cleanup memory allocations
2018-02-04 23:07:24 +01:00