Commit Graph

1403 Commits

Author SHA1 Message Date
Brian Koropoff fb5e788c1e task_database: fix crash from Windows-incomptabile format string 2017-11-24 18:17:43 -08:00
Brian Koropoff 711877b056 content: preserve info for history/favorites
If the content came from a playlist, use the original label.
Preserve the core path and name in the favorites list.
2017-11-17 16:55:32 -08:00
Brian Koropoff bedf65e72e scanner: prioritize databases with recent matches
This should improve performance when scanning many files
in a row that all match against the same database, which is
the expectation.
2017-11-17 16:53:49 -08:00
Brian Koropoff b668193923 scanner: allow matching archives by member
This allows more flexible detection of content packaged as multiple
compressed files (e.g. MAME).
2017-11-17 16:53:49 -08:00
twinaphex e5d4e2ac0a Silence a lot of warnings 2017-11-06 19:13:54 +01:00
Twinaphex 7ba2797032
Merge pull request #5629 from lunixoid/master
Fixed twice assigned values
2017-10-31 06:23:55 +01:00
Roman Kalashnikov 400b27a227
Fixed twice assigned values 2017-10-31 00:26:41 +03:00
Brad Parker 68a8198e4a convert more file IO functions to use filestream, fixes encoding issues on Windows 2017-10-29 12:08:24 -04:00
Jean-André Santoni bd17c11350 Fix gamecube scanning 2017-10-27 15:17:18 +07:00
Jean-André Santoni 2ddba6770d Start implementing gamecube scanning 2017-10-27 15:17:18 +07:00
Jean-André Santoni 93ee38af05 Add gamecube magic number 2017-10-27 15:17:18 +07:00
orbea 33eb1f9e28 Fix regressions from commit 538d51553c. 2017-10-23 05:39:54 -07:00
orbea 538d51553c When starting content from the cli open the quick menu.
Fix https://github.com/libretro/RetroArch/issues/5554
2017-10-22 08:07:37 -07:00
Brad Parker a7c8cc88e5 win32: support local multibyte encoding for file paths 2017-10-14 23:13:24 -04:00
Brian Koropoff 20aa59249c task_save: fix double-free 2017-10-11 21:26:26 -07:00
twinaphex c68db61188 Silence more Clang warnings 2017-10-11 22:49:13 +02:00
Higor Eurípedes 41024fbb0a Fix conditional jump on uninitialized data
This fixes a bug introduced in 862cf48108
2017-10-03 19:54:32 -03:00
Alcaro dc4c2cd6d9 Wipe out a buncha warnings and pointless ifdefs (some warnings will remain until #5497 is fixed) 2017-10-03 00:26:29 +02:00
Alcaro b97853a536 Rename STRING_REP_ULONG to STRING_REP_USIZE 2017-10-02 22:51:51 +02:00
Brad Parker 7a6d2cb5e6 set list to NULL after free in case autoconfig directory is empty 2017-09-30 19:03:39 -04:00
twinaphex 45ce8bf773 Cleanups 2017-09-30 20:45:06 +02:00
twinaphex de6b1bcbf0 Fix another Coverity error 2017-09-30 17:11:51 +02:00
twinaphex 73d1539bb0 Fix another Coverity error 2017-09-30 17:08:42 +02:00
twinaphex 2a8b74eeb9 Fix some Coverity errors 2017-09-30 16:52:41 +02:00
twinaphex f61b9e1747 Cleanup 2017-09-30 08:24:01 +02:00
twinaphex 063343e538 Simplify this 2017-09-30 07:29:19 +02:00
Brad Parker c856a36a58 more null checks 2017-09-30 01:18:40 -04:00
twinaphex 00ea9be8fc Be safer 2017-09-30 06:38:53 +02:00
twinaphex ff926439ac Fix this up 2017-09-30 06:29:07 +02:00
twinaphex 5fd05c6b56 There were some unused variables 2017-09-30 06:25:41 +02:00
twinaphex eae2217c6d Cleanup 2017-09-30 06:23:23 +02:00
twinaphex 3040d1da36 (task_database.c) Simplify conditionals 2017-09-30 06:21:38 +02:00
twinaphex f323168251 Simplify conditionals 2017-09-30 06:08:09 +02:00
twinaphex dc2664a4ef Reorder variables 2017-09-29 22:58:32 +02:00
twinaphex 57ded65189 (task_save.c) Use malloc 2017-09-29 22:40:31 +02:00
twinaphex 862cf48108 (task_image.c) Don't use calloc 2017-09-29 22:36:48 +02:00
twinaphex 127d98fb68 Rewrite path from nbio struct 2017-09-29 22:16:17 +02:00
twinaphex bae31a318d Prevent memory leak 2017-09-29 21:32:05 +02:00
twinaphex 3490c3dbc5 Cleanups 2017-09-29 20:51:20 +02:00
twinaphex 3090f3ff3a (task_database.c) Rewrite char arrays 2017-09-29 20:47:54 +02:00
twinaphex 819e3fb02a Initialize struct 2017-09-29 17:06:38 +02:00
Twinaphex f713a30705 Update task_autodetect.c 2017-09-29 15:08:09 +02:00
twinaphex 5951bed07d Make stdin an option 2017-09-29 06:16:35 +02:00
twinaphex f34250e38e Buildfix 2017-09-27 23:55:54 +02:00
twinaphex e7d41f6ea7 Cleanup 2017-09-27 23:54:31 +02:00
twinaphex fcf6228dce Turn into char pointer array 2017-09-27 20:11:44 +02:00
twinaphex b79f95668b Turn it into char pointer array 2017-09-27 20:08:37 +02:00
twinaphex 6cf6d46e4b Try silencing more warnings - do something with return value 2017-09-26 03:51:50 +02:00
twinaphex cc8e897222 C89_BUILD fixes 2017-09-22 05:12:26 +02:00
twinaphex e74da12d26 Fix another memory leak 2017-09-22 00:03:40 +02:00
twinaphex 50d48139a3 Fix some more memory leaks 2017-09-21 23:38:29 +02:00
twinaphex 1a77c383b9 Fix plethora of memory leaks again 2017-09-21 21:33:13 +02:00
twinaphex 0f80e31382 task_database.c - cleanups 2017-09-21 19:57:10 +02:00
Twinaphex cff35f3611 Fix warning - wrong type used 2017-09-21 19:24:42 +02:00
Brian Koropoff 2cfedab339 task_database_cue: only return error when errno would be set
On a short read, errno will be 0, and returning 0 without
setting system_name will cause a crash later.  Just continue
to the next magic number instead.
2017-09-20 21:24:59 -07:00
twinaphex 0002912328 Change size of variables 2017-09-20 16:35:18 +02:00
twinaphex 808a723969 Fix memory leaks 2017-09-20 12:18:31 +02:00
twinaphex ac732ecdb0 Fix memory leak 2017-09-20 12:13:44 +02:00
twinaphex 37715114ae Cleanup 2017-09-20 09:55:53 +02:00
Aaron Oneal 4a929bd8e2 Optimize scanning using directory name hint
As discussed in issue #5440, directory scans are slow when compressed files must be checked against multiple databases. This commit adds support to hint to the scanner that a particular database should be used so that only a single scan is required. If the directory name being scanned matches the database name then that single database is selected.
2017-09-19 16:58:28 -07:00
Aaron Oneal 6ac4486f4d Fix typo from 9a76a93ea that broke the build 2017-09-19 16:49:45 -07:00
Twinaphex 9a76a93ea8 OSX buildfixes/cleanups 2017-09-19 21:37:51 +02:00
twinaphex e8f39f004e MSVC buildfixes 2017-09-19 21:29:28 +02:00
Twinaphex ee06a8f175 Merge pull request #5447 from bkoropoff/scanning2
More scanning rework
2017-09-19 15:46:04 +02:00
Aaron Oneal fb8fe84684 Fix archive scanning
Archive scans were broken for cores like Atari 5200 and Commodore 64 because archive contents were skipped if a core reported it supported compressed files. The problem is, it's a false assumption that just because a core supports compressed files that the content database contains CRCs for compressed files.

Instead of adding the contents of every compressed file to the scan list ahead of time, the patched logic now checks for the CRC of the archive itself as it always has but then adds the archive contents to the scan list if the archive itself is no match. This maintains the logic of adding only the archive if the core supports compressed files and the archive CRC matches but also allows for deeper content scans when there is no match.

The patch also removes `core_info_unsupported_content_path` as it was redundant with existing `core_info_database_supports_content_path` logic.
2017-09-18 23:15:28 -07:00
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 46e78e9d1b task_database: fix parsing CUEs with one track 2017-09-18 09:03:43 -07:00
Brian Koropoff c6c090052e task_database: fix memory leak 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
Brian Koropoff edf90d250f task_database: fix memory leak in error path 2017-09-18 09:00:39 -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 c1f60c1aa6 task_database_cue.c - reduce stack usage 2017-09-12 05:04:27 +02:00
twinaphex c1c42cac6b (task_database.c) Reduce stack usage 2017-09-12 05:00:22 +02:00
twinaphex 0007d66bf8 Fix memory leaks 2017-09-11 02:22:46 +02:00
twinaphex 0724cbbf2b Reduce stack usage 2017-09-10 21:58:05 +02:00
twinaphex 91b1afad0a (dirs.c/task_content.c) reduce stack usage 2017-09-10 21:42:24 +02:00
twinaphex 750621e28c (tasks/task_content.c) Reduce stack usage 2017-09-09 23:17:28 +02:00
twinaphex 6df9c7ca30 Cleanup 2017-09-09 20:10:28 +02:00
Twinaphex ca6a7578e4 Merge pull request #5407 from aarononeal/hotfix/slowscan
Fix slow content scans.
2017-09-08 20:22:33 +02:00
Brad Parker 07566c51a1 VC6 buildfixes, add Makefile.griffin target for it 2017-09-07 11:50:10 -04:00
Aaron Oneal e3f4e0d71a Fix ISO scan crash from buffer overflow
Recent additions in commit #bbb2a7d6f to scan ISO files with ASCII characters overflowed the serial number buffer and caused a crash. This fix limits the read to 15 bytes which is all that is actually required.
2017-09-06 23:37:46 -07: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
Brad Parker 0a1b3fedc0 VC6 support (targets NT 3.51) 2017-09-06 23:03:02 -04:00
twinaphex e16371b8a5 Merge input_config.c and input_driver.c 2017-08-31 02:25:04 +02:00
twinaphex af477ff317 C89 buildfix 2017-08-06 17:11:13 +02:00
radius cf8783644d allow screenshots into content dir via bool setting in addition of the empty string 2017-08-05 13:57:24 -05:00
Twinaphex d11b9e80b4 Merge pull request #5244 from rtissera/modsupport
Add MOD/S3M/XM support to audio mixer (libretro-common) through micromod/ibxm
2017-08-04 20:36:55 +02:00
Romain Tisserand cbe2d9a941 Preliminary MOD/S3M/XM support through ibmx library (part of micromod repository) 2017-08-04 15:05:29 +02:00
radius 3a3d9cd41e if swap override is not specified it should be false 2017-08-04 01:37:16 -05: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
Twinaphex 6995154a9a Merge pull request #5133 from fr500/master
Fix #5091
2017-07-01 04:35:59 +02:00
twinaphex e9f9702a2d (playlist.c) Don't expose struct details to outside 2017-07-01 03:38:36 +02:00
radius 0a7968761f improve logging 2017-06-30 20:05:30 -05:00
twinaphex b11620e1eb Add retro_timers.h/retro_math.h 2017-06-28 04:41:38 +02:00
twinaphex 6af5bd01bf Merge retro_stat and file_path 2017-06-16 15:00:11 +02:00
twinaphex 6c81007eb9 Should hopefully fix scanning of PS1 games 2017-06-07 11:12:11 +02:00
twinaphex c7b45aaf80 warning fix for C89_BUILD 2017-06-06 23:22:20 +02:00
twinaphex f5225a479e (task_database_cue.c) Use string_is_equal instead 2017-06-06 10:20:34 +02:00
twinaphex 3d54afdc1b Change to string_is_equal 2017-06-06 09:46:13 +02:00
twinaphex 6b638cae8b prevent uninitialized variable 2017-05-31 02:21:43 +02:00
Tatsuya79 1df9766491 Hide load message when saving state.
fix https://github.com/libretro/RetroArch/issues/4460
2017-05-30 14:07:04 +02:00
twinaphex 449483206f Revert "New attempt to fix memory leaks of struct retro_system_info"
This reverts commit a1d3dd69dd.
2017-05-30 01:44:49 +02:00
twinaphex a1d3dd69dd New attempt to fix memory leaks of struct retro_system_info
char variables
2017-05-29 22:24:10 +02:00
twinaphex dfae380f33 Backport patches -
- Attempt to skip cheevos when path is of media type
- Don't do CRC32 encoding for media types
2017-05-29 20:26:10 +02:00
twinaphex 9fa871ccf9 Buildfixes for consoles 2017-05-28 18:33:44 +02:00
twinaphex cf2f8f6489 Prevent passing NULL/empty strings to memcmp 2017-05-28 18:07:00 +02:00
twinaphex 3fbed8df27 (Menu) Menu driver no longer uses a duplicate system info
struct
2017-05-28 17:21:57 +02:00
twinaphex c74104f8c9 Get rid of RARCH_MENU_CTL_SYSTEM_INFO_* 2017-05-28 16:25:46 +02:00
radius f019b434ef resume game immediately if it was already underway 2017-05-27 20:21:44 -05:00
twinaphex 9438545bca Add music tab for non-ffmpeg enabled builds now; add 'Run'
and 'Add to mixer' options when selecting Ogg/WAV files
2017-05-27 23:56:10 +02:00
aliaspider bf7d19f401 skip loading a core when it is already active when starting a netplay
game.
2017-05-24 15:10:31 +01:00
radius a98c2c38c0 update copyrights 2017-05-23 19:55:47 -05:00
Twinaphex 50fc71a0a6 Merge pull request #4957 from fr500/fixes
[lobby] allow connecting without reloading content
2017-05-22 08:23:24 +02:00
aliaspider 634de19dc9 (WiiU) enable libretrodb. 2017-05-22 06:07:27 +01:00
radius bae2110bb4 cleanup conditionals 2017-05-21 23:43:12 -05:00
radius d1291f406b allow connecting without reloading content when content_get_crc matches with that of the current loaded game 2017-05-21 23:43:12 -05:00
aliaspider eede1a4978 no need to swap endianess here. 2017-05-22 05:26:13 +01:00
twinaphex 4333e3d5e7 Cleanups 2017-05-20 14:02:16 +02:00
twinaphex a87f3ae3cd Prevent explicit NULL pointer dereference warning 2017-05-19 18:54:40 +02:00
twinaphex c53bb90b75 Get rid of error_msg label 2017-05-18 08:04:24 +02:00
twinaphex 82d37d2036 Don't loop audio files by default 2017-05-18 07:27:41 +02:00
twinaphex 5343648dc9 Start creating state machien for audio mixer streams 2017-05-18 06:16:16 +02:00
twinaphex 312a2b5c80 Cleanups/try to prevent memory leaks with task_audio_mixer.c 2017-05-18 05:12:41 +02:00
twinaphex 668813cca9 (task_image.c) Refactor code 2017-05-18 01:31:14 +02:00
twinaphex 9a90477c6d Reimplement task_audio_mixer.c 2017-05-18 01:19:47 +02:00
twinaphex b3faed3906 Remove NBIO_STATUS_TRANSFER_PARSE_FREE to NBIO_STATUS_TRANSFER_FINISHED 2017-05-18 00:39:39 +02:00
twinaphex 4ad8d3c917 Remove NBIO_STATUS_POLL 2017-05-18 00:09:17 +02:00
twinaphex 80512800e1 (task_audio_mixer.c) Further work on task_audio_mixer.c 2017-05-17 14:13:02 +02:00
twinaphex 21341c5b3a Rework task_audio_mixer.c to use NBIO 2017-05-17 14:04:33 +02:00
radius 6e45af3858 look into the history playlist too 2017-05-17 02:08:17 -05:00
twinaphex 1bf0175da4 Try to prevent string message leaking in tasks 2017-05-16 04:50:20 +02:00
twinaphex 126a5bf121 Use string_is_equal_fast/string_is_not_equal_fast 2017-05-16 04:00:37 +02: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 7e89335392 (task_wifi.c) Prevent memory leak for title 2017-05-16 02:52:30 +02:00
twinaphex 8e76c4a131 Prevent title memory leak 2017-05-16 02:48:54 +02:00
twinaphex 2f9eb86a59 Cleanup 2017-05-16 00:02:26 +02:00
twinaphex c21abd28f8 Implement audio_mixer_stopped differently 2017-05-15 23:15:22 +02:00
twinaphex b8cea125e4 Create stub function for looping sounds 2017-05-15 23:03:54 +02:00
twinaphex 69f9bc840d Remove unused variable 2017-05-15 19:16:40 +02:00
twinaphex 5fc5cb4962 Cleanups 2017-05-15 11:25:45 +02:00
twinaphex 67610b8263 Update task_audio_mixer.c 2017-05-15 11:07:12 +02:00
twinaphex 375b588847 Cleanups 2017-05-15 09:29:44 +02:00
twinaphex bf3188eac4 Combine runloop_ctl and rarch_ctl 2017-05-15 05:06:23 +02:00