dolphin/Source/Core/Core
JosJuice d35fe1b78b IOS/FS: Rewrite NAND savestating
This makes us savestate the NAND using the same APIs the guest uses
instead of directly touching the host files. This solves several
problems:

* If the user loaded a malicious savestate, it could use path traversal
  to overwrite arbitrary files on the host file system. (Reported by
  MrSynAckster.)
* Metadata (UID, GID, attribute, modes) wasn't being savestated.
* NAND redirects weren't handled, except for NAND redirects at the root
  of where the savestate was being done. (This only possibly matters if
  TASing a Riivolution patch. The root of the savestate is at /tmp when
  not TASing, and the only case where we do a NAND redirect is inside
  /title if requested by a Riivolution patch.)
2026-06-10 21:21:30 +02:00
..
Boot Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
Config Merge pull request #14607 from elyashue/internal-resolution-display 2026-05-25 12:17:29 -07:00
ConfigLoaders Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
Debugger Replace find(x) != npos with contains(x) - Core 2026-04-20 09:36:08 +02:00
DSP DSPCore: Remove m_init_hax member 2026-04-12 19:21:51 +02:00
FifoPlayer Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
HLE Remove unused imports 2026-01-25 16:12:15 +01:00
HW Fix uninitialized variable warning in ZeldaAudioRenderer::ApplyReverb 2026-05-29 22:09:13 +02:00
IOS IOS/FS: Rewrite NAND savestating 2026-06-10 21:21:30 +02:00
PowerPC JitArm64: Fix DR check in MSRUpdated 2026-05-01 10:23:59 +02:00
AchievementApprovedHash.h Add Classic Controller support cheats for Animal Crossing (all regions) 2026-04-29 19:44:31 +02:00
AchievementManager.cpp Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
AchievementManager.h Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
ActionReplay.cpp Remove unused imports 2026-01-25 16:12:15 +01:00
ActionReplay.h PatchEngine: OSD message showing number of enabled patches and cheats 2025-08-30 16:51:51 +02:00
ARDecrypt.cpp ARDecrypt: Code modernization. 2026-01-18 01:22:10 -06:00
ARDecrypt.h ARDecrypt: Code modernization. 2026-01-18 01:22:10 -06:00
BootManager.cpp Triforce: Automatically set SuggestedAspectRatio as ForceStandard to work around widescreen heuristic issues. 2026-02-15 20:14:15 -06:00
BootManager.h
CheatCodes.h
CheatGeneration.cpp Common: Replace Result with C++23's std::expected. 2026-01-17 16:58:45 -06:00
CheatGeneration.h Common: Replace Result with C++23's std::expected. 2026-01-17 16:58:45 -06:00
CheatSearch.cpp Use more std::span arguments 2026-03-23 23:55:09 +01:00
CheatSearch.h Use more std::span arguments 2026-03-23 23:55:09 +01:00
CMakeLists.txt Merge pull request #14298 from SuperSamus/achivements-hash-qol 2026-04-02 23:36:11 -07:00
CommonTitles.h
ConfigManager.cpp Added Triforce support 2026-02-15 20:14:14 -06:00
ConfigManager.h Added Triforce support 2026-02-15 20:14:14 -06:00
Core.cpp Move PerformanceMetrics from global variable to System 2026-03-14 16:42:21 +02:00
Core.h Core: Make RunOnCPUThread always non-blocking. 2026-02-03 17:29:17 -06:00
CoreTiming.cpp Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
CoreTiming.h CoreTiming: Change TimedCallback to a Common::MoveOnlyFunction. 2026-03-26 19:29:25 -05:00
CPUThreadConfigCallback.cpp
CPUThreadConfigCallback.h CPUThreadConfigCallback: Use maximum value of size_t instead of -1 as default value ConfigChangedCallbackID 2025-11-08 23:23:33 -05:00
DolphinAnalytics.cpp Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
DolphinAnalytics.h Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
DSPEmulator.cpp
DSPEmulator.h DSPEmulator: Remove redundant parameter and code 2025-10-26 18:03:31 -07:00
FreeLookManager.cpp Core: Eliminate FreeLookConfig by putting the "active config" within FreeLookCamera. 2025-11-12 18:01:53 -06:00
FreeLookManager.h Remove unused imports 2026-01-25 16:12:15 +01:00
GeckoCode.cpp Remove unused imports 2026-01-25 16:12:15 +01:00
GeckoCode.h PatchEngine: OSD message showing number of enabled patches and cheats 2025-08-30 16:51:51 +02:00
GeckoCodeConfig.cpp Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
GeckoCodeConfig.h Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
Host.h Use more std::span arguments 2026-03-23 23:55:09 +01:00
HotkeyManager.cpp Merge pull request #14506 from adamscott/crop-that-screen 2026-05-23 20:53:31 +02:00
HotkeyManager.h Merge pull request #14506 from adamscott/crop-that-screen 2026-05-23 20:53:31 +02:00
LibusbUtils.cpp Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
LibusbUtils.h Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
MachineContext.h
MemoryWatcher.cpp Remove unused imports 2026-01-25 16:12:15 +01:00
MemoryWatcher.h
MemTools.cpp Remove unused imports 2026-01-25 16:12:15 +01:00
MemTools.h
Movie.cpp Remove unused imports 2026-01-25 16:12:15 +01:00
Movie.h Remove unused imports 2026-01-25 16:12:15 +01:00
NetPlayClient.cpp DoAllPlayersHaveSameGame returns correct result instead of always true 2026-05-06 14:06:01 +02:00
NetPlayClient.h Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
NetPlayCommon.cpp Replace find(x) != npos with contains(x) - Core 2026-04-20 09:36:08 +02:00
NetPlayCommon.h Use more std::span arguments 2026-03-23 23:55:09 +01:00
NetPlayProto.h Remove unused imports 2026-01-25 16:12:15 +01:00
NetPlayServer.cpp Remove unused imports 2026-01-25 16:12:15 +01:00
NetPlayServer.h Remove unused imports 2026-01-25 16:12:15 +01:00
NetworkCaptureLogger.cpp Remove unused imports 2026-01-25 16:12:15 +01:00
NetworkCaptureLogger.h Remove unused imports 2026-01-25 16:12:15 +01:00
PatchEngine.cpp Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
PatchEngine.h Use more std::span arguments 2026-03-23 23:55:09 +01:00
State.cpp IOS/FS: Rewrite NAND savestating 2026-06-10 21:21:30 +02:00
State.h State: Simplify interthread communication and cleanups. Save/Load calls are now always non-blocking for the caller, but appropriately block the CPU thread as needed. 2026-01-19 21:56:59 -06:00
SyncIdentifier.h
SysConf.cpp Remove unused imports 2026-01-25 16:12:15 +01:00
SysConf.h
System.cpp System: Use forward declarations in System.h 2026-03-14 10:53:45 -07:00
System.h System: Use forward declarations in System.h 2026-03-14 10:53:45 -07:00
TimePlayed.cpp
TimePlayed.h
TitleDatabase.cpp Added Triforce support 2026-02-15 20:14:14 -06:00
TitleDatabase.h Added Triforce support 2026-02-15 20:14:14 -06:00
USBUtils.cpp Remove unused imports 2026-01-25 16:12:15 +01:00
USBUtils.h USBUtils: Refactor USB device handling 2025-07-23 03:26:25 +02:00
WC24PatchEngine.cpp
WC24PatchEngine.h
WiiRoot.cpp Remove unused imports 2026-01-25 16:12:15 +01:00
WiiRoot.h
WiiUtils.cpp Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
WiiUtils.h Remove unused imports 2026-01-25 16:12:15 +01:00