Commit Graph

267 Commits

Author SHA1 Message Date
Brian Koropoff
d4beeeda33 task_database: skip serials for the right file type! 2017-09-18 09:03:43 -07:00
Brian Koropoff
84edc8ffb0 task_database: prune files referenced from cue/gdi files
Since we use cue/gdi files to find the right track file to
scan, don't bother scanning them separately.
2017-09-18 09:03:43 -07:00
Brian Koropoff
6c1044a699 task_database: support GDI files 2017-09-18 09:03:43 -07:00
Brian Koropoff
fa6d0fac67 task_database: more scanning rework
- Use the primary (largest data) track for CRC identification, as it
  seems least likely to be shared among multiple discs
- CRC the primary track when importing a loose .cue file.
- If multiple tracks are in the same file, CRC the correct chunk
2017-09-18 09:03:43 -07:00
twinaphex
49cf80db10 Fix resource leaks 2017-09-18 15:57:05 +02:00
Twinaphex
6648ebed0d Silence some warnings 2017-09-18 11:56:59 +02:00
Brian Koropoff
5a3969d4fa task_database: rework cd scanning
Support chd files.  Fall back to using the CRC32 of the last track
of CDs if a serial number is not available.  This requires new
database files, but is necessary for chd scanning to work.
2017-09-17 02:11:07 -07:00
twinaphex
b51a19da5c Fix memory leak 2017-09-12 05:26:59 +02:00
twinaphex
c1c42cac6b (task_database.c) Reduce stack usage 2017-09-12 05:00:22 +02:00
Aaron Oneal
48550235d5 Fix slow content scans.
The check for unsupported content was reversed which was causing files to be checked against every database. Correcting this improves performance drastically. This appears to have been broken since at least commit #fc1f2cdcf.
2017-09-06 20:51:37 -07:00
twinaphex
50b838d8ed Cleanups 2017-07-30 10:11:41 +02:00
Rob Loach
bbb2a7d6f4
Add serial detection for Wii 2017-07-29 23:23:05 -04:00
Brad Parker
5733d8ebd5 move content list builder into scanner task with progress, fixes menu freeze with large playlists 2017-07-09 00:44:02 -04:00
aliaspider
634de19dc9 (WiiU) enable libretrodb. 2017-05-22 06:07:27 +01:00
aliaspider
eede1a4978 no need to swap endianess here. 2017-05-22 05:26:13 +01:00
twinaphex
8eca08c6ac Start using string_is_equal_fast/string_is_not_equal_fast macros
instead of straight memcmp
2017-05-16 03:20:59 +02:00
twinaphex
80d9d1f143 Rewrite task_queue 2017-05-14 20:43:48 +02:00
twinaphex
72bd83b8d1 Cleanups to tasks_internal.h 2017-05-13 18:08:37 +02:00
twinaphex
42ebe7a7ad Merge runloop.c and retroarch.c 2017-05-11 09:11:46 +02:00
twinaphex
f9bc2d3783 Use memcmp instead of string_is_equal where possible for
better performance
2017-04-21 22:47:15 +02:00
Jean-André Santoni
ff575a3460 PCE-CD magic number detection 2017-03-07 01:16:58 +01:00
twinaphex
10bf8d4a8a Backport enlarge char buffers 2017-02-27 09:28:38 +01:00
twinaphex
96c8ca5a09 Header update #1 2017-01-22 13:40:32 +01:00
twinaphex
a3f5590f41 remove dependence on configuration.h inside task_database.c 2017-01-18 01:23:24 +01:00
Twinaphex
2834370e09 Revert "allow serial scanner to match PBP" 2017-01-07 05:52:12 +01:00
radius
1866706c75 allow serial scanner to match PBP 2017-01-06 22:05:55 -05:00
twinaphex
6faabfeebf Don't use settings struct from thrading functions 2016-12-31 07:03:29 +01:00
Brad Parker
41f40acfc4 guard task struct read/writes across threads with a mutex, fixes several data races found by ThreadSanitizer and helgrind 2016-12-29 00:54:12 -05:00
twinaphex
958a028b0a (task_database.c) Remove unused message queue 2016-12-24 20:36:37 +01:00
twinaphex
77e5cdbfde Revert "Rename runloop_msg_queue_push to video_driver_msg_queue_push"
This reverts commit ad7386913c.
2016-12-22 23:36:11 +01:00
twinaphex
ad7386913c Rename runloop_msg_queue_push to video_driver_msg_queue_push
and move code to video_driver.c
2016-12-22 13:15:02 +01:00
twinaphex
c8dc0fef0c Cleanups - turn some functions into static functions and move
to task_database.c
2016-12-20 21:08:31 +01:00
twinaphex
d0cc1afe0a (tasks) Style nits 2016-12-04 19:12:35 +01:00
Jean-André Santoni
6cc14a4fb9 Add missing copyright mention on some files 2016-10-27 18:17:43 +02:00
Brad Parker
d1d5584d18 update copyright 2016-10-27 11:47:10 -04:00
Francisco José García García
8e329a2072 Merge pull request #3781 from frangarcj/master
(VITA) Working scanning content
2016-10-13 17:51:13 +01:00
Francisco José García García
4c19543427 (VITA) Workaround for scanning content 2016-10-13 18:00:40 +02:00
twinaphex
a4b90bcede Set msg[127] = 0 2016-10-13 13:33:51 +02:00
Brad Parker
88c8c49ef8 skip scanning of compressed files within archives if the core attached to this database supports archive files themselves 2016-10-12 16:14:00 -04:00
twinaphex
481ebced22 Prevent implicit memsets 2016-10-09 09:56:03 +02:00
twinaphex
1388220866 (tasks) Don't do implicit memsets in crucial performance-oriented code 2016-10-08 18:31:43 +02:00
Brad Parker
fc1f2cdcf4 only scan the content databases that support the file's extension 2016-10-03 16:09:10 -04:00
twinaphex
c8dc941c42 iso_get_serial - cleanup 2016-09-29 11:10:52 +02:00
twinaphex
a304b42f73 (task_database.c) Cleanup 2016-09-29 11:07:56 +02:00
twinaphex
1842e35b8d Cleanups 2016-09-29 11:03:59 +02:00
twinaphex
cfe91125db Create database_info_get_current_element_name 2016-09-29 10:59:50 +02:00
twinaphex
b286703a81 Cleanup task_database_handler 2016-09-29 10:55:50 +02:00
twinaphex
7e1639f33b Create database_info_set_type 2016-09-29 10:43:38 +02:00
twinaphex
fc3c17547e Use database_info_get_type 2016-09-29 10:41:30 +02:00
twinaphex
24f34431ee Header include cleanups 2016-09-29 10:37:31 +02:00
Twinaphex
94b0dd36ab remove unused variable 2016-09-25 15:51:46 +02:00
Brad Parker
af98ee1c8a Add CRC calculation function that works with archives with or without a path inside (first file is used if no path)
Add all archive's contents to database scan list when scanning files and directories

Allow scanning a single file that is an archive

Remove unnecessary prototypes from archive_file.h

Simplify retrieving of CRCs from archives when scanning
2016-09-25 00:15:05 -04:00
twinaphex
3f35e10014 Solve some warnings pointed out by scan-build 2016-09-25 05:55:55 +02:00
twinaphex
55517dbc12 Prevent warning 2016-09-21 02:17:32 +02:00
Brad Parker
b7735520f2 fix scanning of archive files 2016-09-20 15:40:29 -04:00
Brad Parker
6ac73c5655 use generic crc32 to scan files with 2016-09-20 13:34:56 -04:00
Brad Parker
992b87321a more archive paths 2016-09-19 21:06:23 -04:00
Brad Parker
137968c001 treat .apk files as .zip, set archive_path any time we need to decompress a file 2016-09-19 18:38:33 -04:00
twinaphex
6544b0bcd7 Get rid of HAVE_LIBRETRODB ifdefs 2016-09-18 21:50:39 +02:00
Brad Parker
a7ffead8f6 fix more memory corruption 2016-09-18 15:20:27 -04:00
Brad Parker
dc4760f5a6 fix another wrong type 2016-09-18 14:39:37 -04:00
Brad Parker
f13bce4e50 - use the detected stream backend's crc32 function
- remove zlib/7zip ifdef from archive_file.c, task_content.c and task_database.c
- don't re-compute CRC from one stored in archive
2016-09-18 12:31:24 -04:00
Brad Parker
7c29fd6c33 create 7z archive backend, enables scanning of 7z content 2016-09-18 10:31:21 -04:00
twinaphex
acd4dd527b Header include cleanups 2016-09-05 18:31:32 +02:00
twinaphex
397f82c9f5 Get rid of configuration.h dependency in list_special.c 2016-07-18 07:15:58 +02:00
twinaphex
21134eb28c Create FILE_PATH_DETECT 2016-06-30 06:07:44 +02:00
twinaphex
fbc83640b6 More translatable strings 2016-06-30 05:58:05 +02:00
twinaphex
6756501dac Create FILE_PATH_LUTRO_PLAYLIST 2016-06-30 05:19:25 +02:00
Jean-André Santoni
0f18ade02a Add .lutro scanning
When a file wih the .lutro extension is found, the ROM is added to Lutro.lpl. The name of the game is the name of the file without the extension.
2016-06-29 15:07:12 +02:00
twinaphex
ca3eecf5c0 Create fill_pathname_join_noext 2016-06-28 13:05:46 +02:00
twinaphex
2dddc3fc88 Add FILE_PATH_LPL_EXTENSION 2016-06-26 10:12:28 +02:00
twinaphex
dee7533d65 (libretro-common) Start creating STRING_REP_ULONG 2016-06-23 07:37:02 +02:00
twinaphex
c3eda56561 Move hashes over to msg_hash.c 2016-06-20 17:55:34 +02:00
twinaphex
68bf755fe7 Remove two unused hashes 2016-06-20 16:19:30 +02:00
twinaphex
2ebd6e6f49 Header cleanups 2016-06-20 06:34:30 +02:00
twinaphex
34ad3bd103 Cleanups 2016-06-03 05:24:21 +02:00
twinaphex
65d5ebc2bb Fix some dereference after null check warnings 2016-06-02 20:40:51 +02:00
twinaphex
da6ac4aae7 Fix explicit NULL dereferenced warnings 2016-06-01 04:05:14 +02:00
twinaphex
7d26034ebe Rename rarch_task_* to task_* 2016-05-27 18:14:47 +02:00
twinaphex
a98616b45b Fix explicit NULL dereferenced/dereference before null check warnings 2016-05-26 17:47:21 +02:00
twinaphex
57f797dad6 Cleanup 2016-05-21 13:16:48 +02:00
twinaphex
5555d18a52 Cleanup 2016-05-17 14:24:43 +02:00
twinaphex
449c7483cd Rename content_playlist_ to playlist_ 2016-05-16 09:07:44 +02:00
twinaphex
7c1938b674 Rename task functions 2016-05-13 10:19:53 +02:00
twinaphex
7dffc6286b Internally change directory settings 2016-04-28 19:26:02 +02:00
Jean-André Santoni
86cf3243aa Fix arcade LPL generation 2016-04-15 05:55:11 +07:00
Jean-André Santoni
4f74976cac Arcade scanning 2016-04-15 05:28:44 +07:00
twinaphex
e41127459e Rename 'filestream' functions 2016-03-24 04:09:25 +01:00
twinaphex
ac6362cae4 Combine list_special files 2016-03-20 17:28:24 +01:00
twinaphex
93b7dc1bdd (libretro-common) move 'lists' files to lists/ 2016-03-20 14:53:54 +01:00
twinaphex
4b9143430c Add C89 workaround 2016-02-25 22:26:48 +01:00
twinaphex
f8b866c8c1 Combine file_ops.c and content.c 2016-02-15 21:49:29 +01:00
twinaphex
5b6d310abd Rename enums 2016-02-09 18:26:27 +01:00
twinaphex
6e9bc55dd6 Rename task_ctl to task_queue_ctl 2016-02-09 17:51:51 +01:00
twinaphex
08eb091610 Rename rarch_ to retro_ 2016-02-09 17:47:04 +01:00
twinaphex
ce2869b4d8 Create tasks_internal and split up RA-specific task code to outside 2016-02-09 17:12:39 +01:00
twinaphex
0b1b56214e Try to reduce dependence on general.h 2016-02-07 13:18:48 +01:00
twinaphex
f1ca9604b7 Header include changes 2016-02-07 01:50:08 +01:00
twinaphex
0643b83f7d Header include changes 2016-02-05 13:57:08 +01:00
twinaphex
2251517774 Respect 80-char width limit 2016-02-04 10:25:22 +01:00