summaryrefslogtreecommitdiff
path: root/Source/Core
AgeCommit message (Collapse)Author
2026-06-04Merge pull request #14667 from JosJuice/nand-import-path-traversalAdmiral H. Curtiss
Prevent path traversal in NANDImporter::ProcessEntry
2026-05-31JitArm64: Fix twxJosJuice
The conditions were in reverse order (maybe someone was reading the PowerPC manual and forgot about IBM's bit numbering), and additionally the two conditions for unsigned comparison were wrong. Fixes https://bugs.dolphin-emu.org/issues/14054.
2026-05-30Prevent path traversal in NANDImporter::ProcessEntryJosJuice
Reported by MrSynAckster. A specifically crafted NAND dump could use path traversal to overwrite files on the host file system. This is also an accuracy fix for importing NAND dumps that contain file names that Dolphin is supposed to escape. Some games' save files are affected.
2026-05-30Rework NANDImporter::GetPath slash handlingJosJuice
GetPath has two special cases where it doesn't add a slash. The first is for the root entry's special name "/". The next commit will be neater if we can skip calling GetPath for the root entry, because '/' is one of the characters that Common::EscapeFileName replaces with an escape sequence. Let's check for entry number 0 instead. The second is for parent paths that already end in a slash. There's no actual need to check for this - double slashes are harmless, and for comparison, NANDImporter::ExtractCertificates already appends slashes without checking if there already is one. Let's remove this check.
2026-05-29Fix uninitialized variable warning in ZeldaAudioRenderer::ApplyReverbJosJuice
If CopyFromEmuSwapped considers the address to be invalid, nothing will be written to the passed-in pointer.
2026-05-25Merge pull request #14607 from elyashue/internal-resolution-displayDentomologist
VideoCommon: Added option for showcasing internal resolution
2026-05-24Reimplement custom cropping by adjusting the source aspect ratioAdmiral H. Curtiss
2026-05-24Revert the Presenter logic changes from #14506Admiral H. Curtiss
2026-05-23Approve Xenoblade Chronicles 60 FPS Gecko codeChase Harkcom
2026-05-23Merge pull request #14506 from adamscott/crop-that-screenAdmiral H. Curtiss
Add screen crop feature
2026-05-23Address minor nits in new cropping logicAdmiral H. Curtiss
2026-05-19lint formattingTom Pratt
2026-05-19Separate out GetExternalIPAddress helper functionTom Pratt
De-duplicates the two inline implementations and prepares it for use from Android.
2026-05-15IOS/Network: reduce log verbosity of SO_EAGAIN to info levelTillmann Karras
Otherwise IOCTL_SO_ACCEPT is very noisy until a client connects.
2026-05-14AudioCommon: Add individual Wiimote audio mixerWeston Heard
Also incremented STATE_VERSION.
2026-05-13fixes: make dolreader validate section addresses and sizesDacoTaco
IOS and IPL reject non-32byte aligned sections
2026-05-12PPCAnalyst: Split "in use" analysis into reads and writesJosJuice
If the last write to a register comes before the last read of it, we can write the register to ppcState after the last write instead of after the last read. This will hopefully help spread out m_ppc_state writes across a code block, improving pipelining. Also, if there's a conditional branch that's after the last write but before the last read, instead of needing to emit one m_ppc_state write on each side of the branch, we now only need to emit one m_ppc_state write. A note about the changes made to stmw and mfcr: These instructions don't write to any GPRs or CRs respectively – they only read from them. With this commit, there are no longer any cases where registers get written back to m_ppc_state after an instruction that just reads from them, so we can get rid of all STP logic from these two instructions. lmw still needs its STP logic, since that one does write to registers.
2026-05-11Merge pull request #14592 from jordan-woyak/memcard-manager-scrollingAdmiral H. Curtiss
DolphinQt/GCMemcardManager: Set ScrollMode::ScrollPerPixel to make scrolling behavior less annoying.
2026-05-11Merge pull request #14613 from JosJuice/wad-tmd-checksAdmiral H. Curtiss
DiscIO: Add extra IsValid checks for VolumeWAD::m_tmd
2026-05-07Merge pull request #14634 from JosJuice/jitarm64-msr-dr-bitDentomologist
JitArm64: Fix DR check in MSRUpdated
2026-05-07Merge pull request #14645 from ↵JosJuice
Dentomologist/msghandler_use_more_suitable_log_levels MsgHandler: Use LogLevel matching MsgType for alerts
2026-05-07Core: Implement automatic symbol demanglingAmber Brault
2026-05-06Merge pull request #14644 from tom-pratt/fix_do_all_players_have_gameDentomologist
DoAllPlayersHaveSameGame returns correct result instead of always true
2026-05-06Merge pull request #14632 from vladfi1/upstream-pipe-inputs-fixDentomologist
Unconditionally lock in ControllerInterface::UpdateInput
2026-05-06Unconditionally lock in ControllerInterface::UpdateInput.Vlad Firoiu
2026-05-06MsgHandler: Use log level matching MsgType for alertsDentomologist
When calling `ShowMessageAlert` with a given `MsgType`, log the alert with a `LogLevel` matching the `MsgType` instead of always using `LogLevel::LERROR`.
2026-05-06DoAllPlayersHaveSameGame returns correct result instead of always trueTom Pratt
SendGameStatus() was writing SyncIdentifierComparison as a u32 but the server reads it as a u8 enum, so the server always gets 0 (SameGame). This bug was introduced in commit 66276ac.
2026-05-05Merge pull request #14532 from Dentomologist/autoupdatechecker_fix_edge_casesDentomologist
AutoUpdateChecker: Fix Edge Cases
2026-05-05Merge pull request #14642 from SuperSamus/cpp-move-fixup-nocubebJordan Woyak
Fixup #14565 (compilation with `-DENABLE_CUBEB=OFF`)
2026-05-05Fixup #14565 (compilation with `-DENABLE_CUBEB=OFF`)Martino Fontana
2026-05-03Replace some [[maybe_unused]] annotations with commented namesDentomologist
Remove the [[maybe_unused]] annotation from various parameters that are unconditionally unused and comment out their names instead. This makes it unambiguous that the variables are unused, while making the remaining [[maybe_unused]] annotations more reliable indicators that those variables are in fact used in some contexts. These parameters are mostly in overridden functions where the override doesn't need that particular variable.
2026-05-01JitArm64: Fix DR check in MSRUpdatedJosJuice
TBZ takes the index of the bit to test, not a LogicalImm.
2026-04-30Merge pull request #14384 from ethanuppal/editdsuserversJordan Woyak
Config: Add Edit button to DSU server menu
2026-04-30Config: Add Edit button to DSU server menuEthan Uppal
Signed-off-by: Ethan Uppal <113849268+ethanuppal@users.noreply.github.com>
2026-04-29Add Classic Controller support cheats for Animal Crossing (all regions)spaceage64
2026-04-28Merge pull request #13505 from tygyh/Replace-find-with-containsDentomologist
Source/Core: Replace `find(x) != npos` with `contains(x)`
2026-04-28Merge pull request #14602 from jordan-woyak/show-file-in-folderDentomologist
QtUtils: Add ShowFileInFolder function and make GameList right-click menu actions use it.
2026-04-27Merge pull request #14601 from jordan-woyak/mkgp-wheel-fixJMC47
HW/Triforce/MarioKartGP: Tweak the steering wheel FFB device responses to prevent "Wheel Error" screens.
2026-04-27Merge pull request #13931 from SuperSamus/pikmin-squared-60fpsJMC47
GameINI: Add 60 FPS code for Pikmin Squared
2026-04-27HW/Triforce/MarioKartGP: Tweak the steering wheel FFB device responses to ↵Jordan Woyak
prevent "Wheel Error" screens.
2026-04-25Merge pull request #14308 from jordan-woyak/character-encodingJordan Woyak
StringUtil: Make UTF16ToUTF8 and UTF8ToUTF16 use custom encoding/decoding implementation.
2026-04-25GCAdapter: Fix data racesDentomologist
Make `s_is_adapter_wanted` and the elements of `s_config_rumble_enabled` atomic. The CPU thread reads `s_is_adapter_wanted` and `s_config_rumble_enabled` in `Output`, while the host thread writes to them in `RefreshConfig`. The simplest way to trigger this race is to close the `Settings` window while playing a game with the adapter active.
2026-04-25Merge pull request #14618 from ↵Jordan Woyak
Dentomologist/stereomode_unabbreviate_variable_names StereoMode: Unabbreviate enum names
2026-04-25DirectoryBlob: fix data alignment for GC/Triforce and skip Triforce DIMM ↵naari3
memory range The 0x8000 alignment in DirectoryBlob is needed for Wii disc group encryption, but for GC/Triforce it inflates file offsets unnecessarily. Use 0x20 alignment for Triforce (matching original disc layout) while keeping 0x8000 for GC due to DTK audio streaming requirements. On Triforce games with many files, the inflated offsets can land in the AMMediaboard DIMM memory range (0x1F000000-0x1F800000). Reads from that region return SRAM data instead of disc data, causing the game to hang. Skip the DIMM range when assigning per-file data offsets if any portion of the file would overlap [0x1F000000, 0x1F800000).
2026-04-25GameINI: Add 60 FPS code for Pikmin SquaredMartino Fontana
2026-04-24Merge pull request #14608 from JosJuice/gcadapter-auto-startDentomologist
GCAdapter: Automatically start and stop thread
2026-04-24QtUtils: Add ShowFileInFolder function and make GameList right-click menu ↵Jordan Woyak
actions use it.
2026-04-24VideoConfig: Rename StereoMode::TAB to StereoMode::TopAndBottomDentomologist
2026-04-23VideoConfig: Rename StereoMode::SBS to StereoMode::SideBySideDentomologist
2026-04-23HotkeyManager: Unabbreviate HK_TOGGLE_STEREO_TABDentomologist
Rename HK_TOGGLE_STEREO_TAB to HK_TOGGLE_STEREO_TOP_AND_BOTTOM.