Commit Graph

245 Commits

Author SHA1 Message Date
Nathan Strong edacf67e75 Capture CRC content for deferred-loading cores
== DETAILS

Fixes a bug where content CRC32 is not calculated when content loading
is done by the core instead of libretro. This impacts the ability to
do accurate content matching on netplay.

This notably affects MAME, but is by no means limited to MAME.

Change summary:
- adds a method to the crc32 implementation that calculates crc32 for
  a file (as opposed to an in-memory buffer)
- fix a minor bug that would print the "core will load its own content"
  right before attempting to load compressed content
- in the actual "core will load its own content" path, calculate the CRC32
  and log it before returning

== TESTING
Tested locally on OSX:
- loaded content
- started netplay
- confirmed CRC showing in netplay data
- verified CRC32 against external crc32 tool
2018-10-18 11:26:45 -07:00
twinaphex cf9341f2ea Update libretro-common 2018-10-17 05:45:43 +02:00
twinaphex f52708e205 Update filestream_transforms.h 2018-08-07 06:00:16 +02:00
twinaphex c563eedb32 Hopefully the VFS interface can now remain stable 2018-08-07 05:53:32 +02:00
twinaphex 31e76458f7 Merge commit 'aa9ebf5f29e1a22a5050572353b122915db1451d' 2018-07-05 02:10:00 +02:00
twinaphex a078d40b80 Squashed 'libretro-common/' changes from edffe4d147..1548bee835
1548bee835 Update glsm
df7c8aebea Update glsm

git-subtree-dir: libretro-common
git-subtree-split: 1548bee835ab5fa2d120a4859ff653a5f128de1f
2018-06-25 23:55:40 +02:00
twinaphex 7566e09970 Squashed 'libretro-common/' changes from c3c0facc97..edffe4d147
edffe4d147 Buildfix for 3DS - implicit declaration of isspace et al.

git-subtree-dir: libretro-common
git-subtree-split: edffe4d1470ae6b846e420392d324c1b2b14281a
2018-06-22 17:43:11 +02:00
twinaphex e8b0d6974d Merge commit '48cb38619ff8bbc5ff3c0df93704b3297047a8fe' 2018-06-22 15:00:02 +02:00
twinaphex 768ebbfdb5 Merge commit 'ce9ce1d35387ef8144e53bf071396fa075bfb6c5' as 'libretro-common' 2018-05-12 17:56:34 +02:00
twinaphex 0548349991 Remove libretro-common 2018-05-12 17:56:14 +02:00
twinaphex 46f7742afc Some early WinRT commits 2018-05-09 16:13:29 +02:00
twinaphex 4914c164fa Update file_stream_transforms 2018-04-19 07:56:57 +02:00
twinaphex be7eb4de1c Update libretro-common 2018-04-16 08:57:17 +02:00
twinaphex 041670fe02 Get rid of multitude of casting warnings 2018-04-13 00:47:42 +02:00
twinaphex 1751f4a0af Make it possible to read bigger files by replacing ssize_t with int64_t
and size_t with uint64_t
2018-04-13 00:18:11 +02:00
Twinaphex 08a54e45f2 Get rid of a lot of implicit conversions 2018-04-09 15:56:45 +02:00
twinaphex 70f598c619 Use boolean.h instead of stdbool.h 2018-03-24 11:41:17 +01:00
twinaphex 85d3be1245 Update libretro-common 2018-03-23 11:17:56 +01:00
aliaspider 700fce3bd2 various fixes for CXX_BUILD. 2018-02-04 20:03:27 +01:00
twinaphex 6a47669d21 Prevent some heap corruptions/exceptions 2018-01-23 03:41:25 +01:00
twinaphex 6208981ad3 filestream_getline - be safer 2018-01-22 21:32:36 +01:00
twinaphex 1f8e0fdfe5 Revert "Update filestream_getline to prevent heap corruption"
This reverts commit 60a45db69e.
2018-01-19 02:49:24 +01:00
twinaphex 60a45db69e Update filestream_getline to prevent heap corruption 2018-01-19 02:44:18 +01:00
twinaphex 61ff51be2f Start using string_is_equal predominantly 2018-01-16 22:53:38 +01:00
twinaphex 751c0fe58c Sync libretro-common 2018-01-05 13:16:04 +01:00
twinaphex 21bf01ca6c Update file_stream_transforms.c 2018-01-04 08:16:43 +01:00
twinaphex d0b414f9d8 indenting nits 2018-01-01 08:03:04 +01:00
Alcaro abf4e50e6d These warnings aren't needed 2017-12-31 14:33:57 +01:00
Alcaro e5b346ad92
what an impressive bug farm. #6001 2017-12-30 17:43:48 +00:00
Alcaro ec4b0f9089 What kind of bug farm is this filestream thingy 2017-12-29 15:32:07 +01:00
Alcaro 353b2ebff6 Make this thing more like stdio 2017-12-29 01:38:59 +01:00
twinaphex edae66e413 Faulty fall-through 2017-12-17 17:12:02 +01:00
twinaphex 6622cb0810 Update libretro API 2017-12-16 14:12:38 +01:00
twinaphex c63859cca9 Add safeguard suggested by Alcaro 2017-12-16 00:19:56 +01:00
twinaphex 1b6b670882 filestream - use int64_t 2017-12-15 21:10:58 +01:00
twinaphex 42462c2ba9 Silence some warnings 2017-12-15 18:31:12 +01:00
Alcaro cbdb91a668 Remove file_ prefixes, for consistency with the rest of libretro. They're not useful, anything they'd mean is provided by the vfs_iface-> anyways. Also rename delete to remove to match libc and avoid C++ keywords. 2017-12-15 17:28:55 +01:00
twinaphex 1932513edb Update libretro-common 2017-12-15 00:31:37 +01:00
twinaphex c7c4b723d6 Move path_file_exists to filestream and do away with filestream
dependencies in file/file_path
2017-12-14 20:05:46 +01:00
Brad Parker 8c0adf3594 move path_file_rename and path_file_remove into VFS 2017-12-14 13:32:26 -05:00
Alcaro 26e191f642 These have no reason to not be static 2017-12-14 18:58:20 +01:00
twinaphex ef3ba4d989 Get rid of retro_vfs_file_putc 2017-12-14 18:45:54 +01:00
Alcaro d5847c2391 Revert and fix "Don't use opaque handle to get around warnings and other issues"
This reverts commit e23409926e.
2017-12-14 17:28:13 +01:00
twinaphex 7bf996abe6 Cleanup 2017-12-14 16:53:19 +01:00
twinaphex 2c0c6ae65e Attempt to fix MSVC 2017-12-14 15:41:23 +01:00
twinaphex e23409926e Don't use opaque handle to get around warnings and other issues 2017-12-14 15:06:28 +01:00
twinaphex dadf968134 Add TODO/FIXME note 2017-12-14 14:05:55 +01:00
twinaphex 0b6c191354 Start moving file stream code over to vfs_implementation.c 2017-12-14 14:03:42 +01:00
twinaphex 7788a852c0 Some more cleanups 2017-12-14 00:16:18 +01:00
twinaphex d12df0d91f Rewrite file_stream.c - reimplement filestream_error 2017-12-14 00:01:58 +01:00
twinaphex 4dfbfc4d02 Reimplement filestream_gets 2017-12-13 19:19:49 +01:00
twinaphex f8fd94f6f4 Buildfix 2017-12-12 12:22:06 +01:00
gblues 0f7de204f7 Last batch of whitespace cleanup (post-rebase)
-- looks like a few files committed with DOS line endings
2017-12-12 00:24:46 -08:00
gblues 6904101c44 Clean up trailing whitespace
== DETAILS

Really simple code cleanup, because my editor flags trailing whitespaces
and it's pretty annoying.
2017-12-12 00:24:18 -08:00
Twinaphex 9aa3dc2423 Buildfix 2017-12-11 22:01:54 +01:00
twinaphex 779d9a4258 Cleanup 2017-12-11 21:58:17 +01:00
twinaphex dca96ba6ad Reimplement filestream_getc 2017-12-11 21:49:51 +01:00
twinaphex 57b730ab61 Start implementing VFS layer ; first split up VFS libretro functionality
to separate header until things are finalized
2017-12-11 21:24:14 +01:00
twinaphex 784bb32c64 Cleanups 2017-12-11 19:55:42 +01:00
twinaphex a1ce8b58c4 Simply formats/xml/rxml.c 2017-12-11 18:01:56 +01:00
twinaphex 5960cd80d2 Simplify filestream_read_file 2017-12-11 17:59:18 +01:00
twinaphex ad70bb9866 Get rid of unused filestream_get_ext 2017-12-11 17:42:00 +01:00
twinaphex 43c9bb374d filestream_set_size can be made a static function 2017-12-11 17:39:56 +01:00
twinaphex 5b8f8b50e3 Reimplement filestream_eof 2017-12-11 17:36:20 +01:00
twinaphex 32511090ca (task_save.c) Move to intfstream 2017-12-11 14:56:58 +01:00
twinaphex e62e9233d7 Add intfstream_get_size 2017-12-11 13:21:44 +01:00
twinaphex 61d3f90cae Add hint defines to libretro.h 2017-12-11 12:53:47 +01:00
twinaphex 38e6d2443f Change functions 2017-12-11 12:31:14 +01:00
twinaphex fde596fae4 Cleanups 2017-12-11 12:25:44 +01:00
twinaphex 8aa4d6d148 Move convenience functions to interface_stream.c 2017-12-11 12:23:40 +01:00
twinaphex 318f17c4cb Start using VFS API constant defines 2017-12-11 12:15:00 +01:00
twinaphex 93ee4df5f5 Move RFILE_HINT_UNBUFFERED to file_stream.c 2017-12-11 11:47:13 +01:00
Twinaphex 85d9d986eb Buildfix 2017-12-10 22:46:39 +01:00
twinaphex 2fd8210e59 Create shareable filestream_getline 2017-12-10 22:35:08 +01:00
twinaphex 2e979ec537 Replace function signatures of file_stream file functions 2017-12-10 22:25:38 +01:00
twinaphex d19eaeaab8 (file_stream.c) Cleanups; buildfix 2017-12-10 22:10:32 +01:00
twinaphex 1298a257ae Make HAVE_BUFFERED_IO the new default 2017-12-10 22:07:42 +01:00
twinaphex a8e031777e * Get rid of RFILE_MODE_READ_TEXT
* Get rid of PSP ifdef sinside file_stream.c
2017-12-10 22:05:24 +01:00
Brad Parker 49d0299808 LEGACY_WIN32: check for target of less than Win2K instead of < vc2005, since Win98 does not support Unicode 2017-12-04 22:49:08 -05:00
Francisco José García García 90dd2892b0
FIX sceIoOpen return error 2017-12-04 18:09:37 +01:00
Alcaro c10859b745
Update file_stream.c 2017-12-04 14:31:31 +01:00
Alcaro e4bb8e7aeb
Update file_stream.c 2017-12-04 13:52:11 +01:00
Alcaro 0d4ac12310
Update file_stream.c 2017-12-04 13:34:15 +01:00
Alcaro df55e6b4d1
actually, let's just completely remove it 2017-12-04 13:30:38 +01:00
Alcaro 89f7afdc8f
silence warning 2017-12-04 13:28:38 +01:00
Alcaro 4e66962ba8
#5664 2017-11-29 21:39:35 +00:00
twinaphex 72fdfb1edd Add HAVE_CONFIG_H to file_stream.c 2017-11-25 06:17:19 +01:00
Brad Parker 94aa2cd08a document setvbuf changes, only call it with bufsize >0 2017-11-17 16:12:36 -05:00
Brad Parker 07f3919811 only call setvbuf right after opening file, and use our own buffer for C89 compliance 2017-11-17 02:28:45 -05:00
twinaphex 0703615bf5 Cleanup 2017-11-08 17:37:16 +01:00
Rob Loach 9f222010de
Fix strdup() call when no path is provided 2017-11-08 11:31:17 -05:00
twinaphex e5d4e2ac0a Silence a lot of warnings 2017-11-06 19:13:54 +01:00
Brad Parker 2ce53f32ac PSP buildfix 2017-10-30 23:31:51 -04:00
Brad Parker 28ec3ac3b5 temporary fix for startup hang on Windows 2017-10-30 16:48:34 -04: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
Brad Parker 89265f5cf2 filestream_seek does not return the position in the file 2017-10-29 12:08:24 -04:00
Brad Parker 0d06a48546 use LEGACY_WIN32 ifdef for filestream also 2017-10-16 00:39:16 +00:00
Brad Parker bd06668075 win32: forgot to add unicode functions for filestream 2017-10-16 00:30:25 +00:00
Brad Parker a7c8cc88e5 win32: support local multibyte encoding for file paths 2017-10-14 23:13:24 -04:00
Alcaro c91c4ff9c0 Nuke some more ifdefs and warnings 2017-10-03 00:35:41 +02:00