summaryrefslogtreecommitdiff
path: root/Source
AgeCommit message (Collapse)Author
2026-06-24Merge pull request #14687 from JoshuaVandaele/realtek-linux-listOatmealDome
RealtekFirmwareLoader: Update list from Linux source
2026-06-24TAPServerConnection: Fix builds with LLVM toolchainJoshua Vandaële
On an Alpine system using a full LLVM toolchain, building fails because `fd_set`/`timeval` are undefined.
2026-06-23ICCardReader: Fix macro collisionJoshua Vandaële
On Alpine Linux, Dolphin fails to build due to PAGE_SIZE being already defined somewhere in the system includes.
2026-06-23Add missing includesJoshua Vandaële
2026-06-23fmt: Allow building with version >=12.2.0Joshua Vandaële
This change was causing some issues: > Made FMT_STRING a no-op when FMT_USE_CONSTEVAL is enabled, since the consteval format-string constructor already provides compile-time validation (#4611, #4612). Thanks @friedkeenan.
2026-06-22VolumeVerifier: Remove SystemNotAvailableJosJuice
We had some code in VolumeVerifier to catch the error message that Redump.org used to show when trying to access the Wii datfile without logging in. This restriction was removed from Redump.org around the start of 2022, and the code has been unnecessary ever since.
2026-06-22Don't send Dolphin version in user agent to RedumpJosJuice
When we added the RetroAchievements integration, we had a discussion about whether sending version information in the user agent was fine from a privacy standpoint. We reached the conclusion that it was okay, but it was conditional on the website having a privacy policy. Neither incarnation of Redump has that, and Redump also never asked us to send version information like RetroAchievements did, so let's use a user agent that just says "Dolphin" when connecting to Redump.
2026-06-22Use redump.info instead of redump.orgJosJuice
All the staff of Redump (except the absentee sysadmin) have decided to start a new version of the website at redump.info. It has every disc from the old site, it has HTTPS, it isn't buckling under the load of AI scrapers, and moving forward, all adding and verifying of discs is going to be happening on the new website only. Let's move over. I've taken the unusual step of updating the translation files manually. This is because we're very close to a release and because the change is simple enough that I feel confident about making the change to languages I don't speak. (I double checked that the Korean translation doesn't ever follow "Redump.org" by a particle that has a different form depending on whether there's a final consonant.)
2026-06-21Merge pull request #14692 from JosJuice/netplay-memory-safetyJosJuice
NetPlay: Fix memory safety issues
2026-06-21Merge pull request #14691 from JosJuice/bba-memory-safetyJosJuice
EXI/BBA: Fix tx_fifo memory safety issues
2026-06-21Merge pull request #14668 from JosJuice/state-nand-path-traversalJosJuice
IOS/FS: Rewrite NAND savestating
2026-06-20NetPlay: Fix chunked data buffer overflowJosJuice
Reported by MrSynAckster.
2026-06-20NetPlay: Fix Wii save banner buffer overflowJosJuice
Reported by MrSynAckster.
2026-06-20EXI/BBA: Add null check in CEXIETHERNET::DirectFIFOWriteJosJuice
Just in case. DMAWrite calls DirectFIFOWrite with the result of a GetPointerForRange call without first checking if it's null.
2026-06-20EXI/BBA: Fix tx_fifo memory safety issuesJosJuice
Reported by MrSynAckster.
2026-06-19State: Fix Use After Move In LoadAsFromCoreAmon Neander
This use-after-move error inhibits the use of savestates during the Dolphin TAS Movie creation process.
2026-06-17Merge pull request #14685 from JosJuice/netplayclient-pad-indexDentomologist
NetPlayClient: Check for invalid pad indices
2026-06-15RealtekFirmwareLoader: Update list from Linux sourceJoshua Vandaële
2026-06-14NetPlayClient: Check for invalid pad indicesJosJuice
Like 29e577d but for the client instead of the server.
2026-06-14Merge pull request #14677 from ↵JosJuice
doldol22312/netplay-validate-controller-packet-indices NetPlayServer: Fix remote crash via invalid pad index
2026-06-13DolphinTool: fix crash when listing partition without filesystemTillmann Karras
We were also passing the wrong partition name.
2026-06-11NetPlay: Stop game when mapped Wii Remote disconnectsagalq13
2026-06-11NetPlay: Validate controller packet indicesagalq13
2026-06-10IOS/FS: Rewrite NAND savestatingJosJuice
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-04NANDImporter: Abort extraction if a NAND FST entry is visited more than onceAdmiral H. Curtiss
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 #14631 from ↵Dentomologist
Simonx22/android/convert-directoryinitialization-to-kotlin Android: Convert DirectoryInitialization to Kotlin
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-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-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-12Merge pull request #14635 from JosJuice/android-panic-log-crashDentomologist
Android: Move alert message log from Kotlin to C++
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-08Android: Move alert message log from Kotlin to C++JosJuice
For some reason, NativeLibrary.kt calling Log for the alert message text makes Dolphin die with a JNI error. Supposedly the jstring passed to the logging function is invalid. I don't understand why, because the dialog that we show right afterwards is able to read the string just fine. The error happens even if I pass the string directly to Log without prepending any extra text. There's no real downside to having the logging in C++ instead of Kotlin, so let's move it to C++ to avoid the JNI error.
2026-05-07Merge pull request #14634 from JosJuice/jitarm64-msr-dr-bitDentomologist
JitArm64: Fix DR check in MSRUpdated
2026-05-07Merge pull request #14629 from Simonx22/android/convert-tvutil-to-kotlinDentomologist
Android: Convert TvUtil to Kotlin
2026-05-07Merge pull request #14645 from ↵JosJuice
Dentomologist/msghandler_use_more_suitable_log_levels MsgHandler: Use LogLevel matching MsgType for alerts
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.