Commit Graph
163 Commits
Author SHA1 Message Date
Eugene Sandulenko fb7095f5a4 COMMON: Move all compression-related files to a separate directory 2022-12-01 11:53:02 +01:00
Donovan Watteau 16e2068aec JANITORIAL: Fix various single-character typos 2022-11-11 20:55:56 +01:00
Le Philousophe 6293c2b3c2 WIN32: Don't use unsafe strcat and strcpy 2022-10-23 22:46:19 +02:00
Le Philousophe 111d259015 ALL: Add limits.h for all codebase 2022-08-22 15:38:10 +02:00
Eugene Sandulenko 5e05f93f36 ALL: Remove Symbian port 2022-05-28 12:32:29 +02:00
Donovan Watteau 5b1ec56f96 JANITORIAL: Fix some lost or outdated URLs in comments 2022-05-19 07:57:31 +03:00
Thunderforge fd129ebc0c JANITORIAL: "Mac OS X" and "OS X" to "macOS" in comments
Apple's desktop operating system was formerly called "Mac OS X" and "OS X", but since 2016 it has been called "macOS" (starting with version 10.12).

Changing across all comments and documentation to use this current terminology, except in cases where the historical versions are explicitly referenced. No code changes are made; we should consider changing those in future PRs.
2022-01-29 14:15:05 +01:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Orgad Shaneh 44219dfa1a BACKENDS: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
Le Philousophe 174e0cc98a WIN32: Fix compilation for good ol' Windows 9x
Set _WIN32_IE to 0x500 everywhere and remove where it's not needed.
As we gracefully check if the function is present or not, it's OK to set
this define without having IE 5.0 installed on target
2021-11-14 10:45:09 +01:00
sluicebox 3d6524c9f4 WIN32: Add Portable Mode
Adds support for a self-contained portable mode in which the
executable's directory is used for application files instead
of directories in the user's profile.

Portable mode is activated by placing a scummvm.ini file in
the executable's directory. The directory must be outside of
the system's Program Files directory to comply with UAC.
2021-11-13 21:22:28 +01:00
Thierry Crozat aac0f40d2c BACKENDS: Add overloadable removeFile in DefaultSaveFileManager
This allows using the DefaultSaveFileManager on system where
remove() does not exist. See bug #12975.
2021-10-10 11:39:47 +03:00
Orgad Shaneh a0c818bde6 COMMON: Introduce SaveFileManager::exists
Checks if a savefile with given name exists.

Implement on all backends.
2021-08-23 13:34:35 +02:00
Orgad Shaneh fb8f233ed7 BACKENDS: Replace virtual with override in SaveFileManager subclasses 2021-08-23 13:34:35 +02:00
Paul Gilbert be06c4eb8a BACKENDS: Extend OutSaveFile to support SeekableWriteStream
The seek and size methods of SeekableWriteStream are only
supported when creating uncompressed save files.
2021-08-08 18:13:30 -07:00
Paul Gilbert 9db14ee109 BACKENDS: Update all the backends to support SeekableWriteStream 2021-08-08 18:13:30 -07:00
Paul Gilbert 005561d305 COMMON: Increase Stream pos, seek, size from int32 to int64 2021-07-08 18:24:28 -07:00
sluicebox 9987cc4c5b BACKENDS: Fix undefined parsing of timestamps file
DefaultSaveFileManager::loadTimestamps() was parsing strings from the
timestamps file by checking for end-of-stream after using the byte it
attempted to read. This worked because ReadStream::readByte() returns 0
on error, but that's undefined behavior with a FIXME to remove.

This bug was exposed by the recently added warning when 0 is appended
to a String: ab06f27d43
2021-06-29 13:37:51 -05:00
sluicebox abc3c36c37 WIN32: Make WindowsSaveFileManager UNICODE compatible 2021-06-29 12:38:01 -05:00
sluicebox 863747bc96 WIN32: Use MAX_PATH (260) instead of MAXPATHLEN (256) 2021-06-29 12:38:01 -05:00
sluicebox 674ed112aa JANITORIAL: Update more old bug tracker numbers
I missed the six digit ones and a few others in:
93eeffc84d
2021-06-09 14:28:52 -06:00
Cameron Cawley 5c255b3aa9 WIN32: Add override and final keywords 2020-10-16 18:32:08 +01:00
Eugene Sandulenko 045df72426 EVENTRECORDER: Fix crash on attempt to save. Fixed #10045
Since we have two event managers during recording, we invalidate
cache in order to avoid cache miss
2020-08-29 17:22:38 +02:00
sluicebox baea8d5c9c COMMON: Make save compression optional when copying
Allows for copying or renaming uncompressed save files, such as
in Phantasmagoria 1, without compressing them in the process.
2019-12-09 22:57:46 -08:00
Cameron Cawley f2b9f7bb76 BACKENDS: Remove the Windows CE port 2019-11-17 22:33:56 +01:00
Cameron Cawley 410923351b Revert "COMMON: Implement FSNode::createDirectoryRecursive()"
This reverts commit aca627bec7.
2019-09-15 00:07:46 +02:00
Cameron Cawley 7a8ddcbe38 PSP: Replace PSPSaveFileManager with DefaultSaveFileManager 2019-09-06 14:48:16 +02:00
Cameron Cawley ba2bc60043 BACKENDS: Use the default save file manager on Switch and SamsungTV 2019-08-12 10:39:43 +03:00
Cameron Cawley 7311252d8a POSIX: Remove POSIX-specific checkPath function 2019-08-12 10:39:43 +03:00
Cameron Cawley aca627bec7 COMMON: Implement FSNode::createDirectoryRecursive() 2019-08-11 22:15:54 +03:00
Cameron Cawley 04c57babbc BACKENDS: Create the default save directory if it doesn't exist 2019-08-11 22:15:54 +03:00
Alexander Tkachev 1e92e7b9f3 CLOUD: Fix saves syncing
This mostly affects OneDrive saves syncing, because it is the only cloud
provider to return 0 as timestamp of (non-)created file. 0 is treated as
EOF in /saves/timestamps file, thus all timestamps after such 0
timestamps were ignored and files were reuploaded as being "new". This
commit also adds more verbose debug information on SavesSyncRequest
decisions making for easier debugging.
2019-07-30 14:51:41 -04:00
Orgad Shaneh 35c2f9ade5 BACKENDS: Fix crash when save file is owned by another user
fopen() fails, but the null handle was passed on to OutSaveFile.
2019-07-07 14:16:46 +03:00
Cpasjuste 488bbb267a SWITCH: add nintendo switch support 2019-05-12 11:59:44 +03:00
Cameron Cawley ab0fab9bf9 POSIX: Move implementation of exists, isReadable and isWritable into posix-fs.cpp 2019-04-16 00:55:43 +03:00
Cameron Cawley 27e6a28e4e BACKENDS: Fix compilation with SDL_Net enabled and cloud support disabled 2019-04-02 12:02:21 -04:00
Bastien Bouclet 26d0935b9f COMMON: Remove usage of ScopedPtr in OutSaveFile
It's not very useful. However this is mostly to test the theory that the
build failure we've been experiencing in
engines/scumm/he/logic/football.cpp with the osx builder on buildbot is
related to the size of the intermediary assembly source file.
2019-01-05 12:02:19 +01:00
SupSuper d0512db25c WIN32: Move all ARRAYSIZE undefs to util.h
Instead of trying to undefine ARRAYSIZE everywhere we use a Windows header, let's just do it before we define our own
2018-12-17 12:28:33 +02:00
Filippos Karapetis 54159276c7 WIN32: Fix build after the addition of SHGetFolderPath() 2018-12-16 19:50:05 +02:00
Cameron Cawley 1de8f1e529 WIN32: Use SHGetFolderPath to get the location of the Application Data folder (#1449) 2018-12-16 17:04:24 +02:00
Cameron Cawley 6e40b64eb1 POSIX: Allow forbidden symbols required by FreeMiNT 2018-08-18 14:08:40 +02:00
Adrian Frühwirth 88d4e5475d PSP: Fix UB (use of deallocated memory) 2018-05-05 17:54:46 +02:00
Eugene Sandulenko e8b70a4686 ALL: Fix compilation with disabled cloud but enabled libcurl 2016-10-17 18:55:22 +02:00
Eugene Sandulenko 355c4fa646 JANITORIAL: Remove more trailing spaces 2016-10-09 15:02:02 +02:00
Thierry Crozat c42dfbc496 BACKEND: When removing a save files also remove entry from timestamps file 2016-09-18 05:51:57 +01:00
Thierry Crozat 33d1c55866 BACKENDS: Ignore timestamps for inexistent files in DefaultSaveFileManager
This fixes a bug in the synchronisation of the save files to the cloud when
the timestamps file contains entries for files that do no longer exist. In such
a case the synchronisation would fail.
2016-09-18 05:31:29 +01:00
Alexander Tkachev 368f664c81 COMMON: Fix WriteStream::pos() once again
MemoryReadWriteStream now returns int32, not uint32. It actually doesn't
ever return -1 to indicate that an error occured, so uint32 was a better
choice, but that's what is used in WriteStream base class now.

That method is abstract, so that's also why OutSaveFile had to override
it.
2016-08-24 16:24:16 +06:00
Alexander Tkachev 438ba985a4 JANITORIAL: Remove spaces at the end of the line
I knew there were some, but I wanted to fix them once, instead of doing
it all the time.
2016-08-24 16:07:55 +06:00
Alexander Tkachev 3da38ca60b CLOUD: Replace USE_CLOUD with USE_LIBCURL
In most cases that's the right one to check. USE_CLOUD is defined when
either USE_LIBCURL or USE_SDL_NET are, which means if there is no curl,
USE_CLOUD still could be defined and linking errors would appear.
2016-08-24 16:07:55 +06:00
Alexander Tkachev acce1c89ab CLOUD: Fix saves sync
Tested that on actual unix system and found out a few minor bugs related
to paths.
2016-08-24 16:07:55 +06:00