Admiral H. Curtiss
46e38d28fa
Merge pull request #14821 from SuperSamus/mmu-try-read-non-integral-fixup
...
MMU: Fix non-integral HostTryRead not passing space
2026-08-19 23:26:06 +02:00
Martino Fontana
591aa07b93
MMU.h: Remove useless consts in declarations
...
Since the issue solved by the previous commit was spotted with clang-tidy, let's also fix its other complaints.
https://clang.llvm.org/extra/clang-tidy/checks/readability/avoid-const-params-in-decls.html
2026-08-19 21:14:58 +02:00
Martino Fontana
2944fd26e3
MMU: Fix non-integral HostTryRead not passing space
...
Randomly spotted. Didn't test, but it was obviously wrong.
Fixes regression from 8a97ce9124 .
2026-08-19 21:12:10 +02:00
Martino Fontana
e407f178ba
Debugger: Fix symbol search speed
...
Having Qt query a setting for every symbol isn't efficient.
Fixes regression introduced by #13216 .
2026-08-19 10:21:48 +02:00
DacoTaco
aabde19114
DolReader: Don't error on dol section alignment on Wii
2026-08-18 23:03:17 +02:00
JosJuice
a9c36ee2ef
Merge pull request #14735 from tom-pratt/dual-core-warning
...
Android: Dual core warning when hosting netplay
2026-08-16 11:05:39 +02:00
Dr. Dystopia
f65180fa91
DSP: Fix Off-by-one clamping error
2026-08-13 08:41:37 +02:00
OatmealDome
4ff214cdd2
Merge pull request #14808 from phire/ZeldaHLE_overflow
...
Fix stack overflow in ZeldaHLE
2026-08-10 21:45:52 -04:00
Scott Mansell
53cd8ffa3f
Fix stack overflow in ZeldaHLE
...
Independently spotted by both @Dentomologist and me while reviewing
PR #14805
The previous limit was correct for valid VPBs, but an invalid VPB
controlled by a malicious game could contain a non-fractional value
in current_pos_frac, which would allow writing an extra 15 samples
(30 bytes) into the stack. With AFC encoding, this is rounded up to 16
samples, but with much less control over which bytes are written.
Maybe we should be doing some validation, or bounds checking, but I'm
pretty sure this issue was copied from the original ucode, and we kinda
want to stay compatible.
The simpler fix is to just increase the size of raw_input_samples.
I've checked other code paths, and 0x514 samples seems to be the limit.
2026-08-11 12:30:54 +12:00
Tillmann Karras
ce85da6b96
DSPHLE/Zelda: prevent out-of-bounds stack read
...
Reported by @RickdeJager.
2026-08-09 15:56:21 +01:00
Scott Mansell
216ffb4581
Merge pull request #14803 from Andy1210/fix/bbox-memorybarrier-mainline
...
VideoBackends/OGL: Don't call glMemoryBarrier without ARB_shader_image_load_store
2026-08-09 15:12:01 +12:00
JosJuice
cd3ea81462
Merge pull request #14767 from JosJuice/state-nand-open-file
...
IOS/FS: Fix loading savestate when files are open
2026-08-08 13:02:54 +02:00
Dentomologist
f42c349c32
Merge pull request #14802 from phire/fallthrough_warnings
...
Enable Fallthrough warnings
2026-08-08 01:21:25 -07:00
Scott Mansell
02bffba368
Enable implicit fallthrough warnings for gcc/clang
2026-08-08 13:18:32 +12:00
Scott Mansell
a6cf98332b
Fix fallthough in CodeView/MemoryView widgets
...
This slightly changes the behaviour, but I think this is more correct.
2026-08-08 13:18:32 +12:00
Scott Mansell
7de31b291e
Fix missing break in BluetoothRealDevice
...
Minor behaviour change, prevents an erroreous error log
2026-08-08 13:16:57 +12:00
Scott Mansell
ca33c38afd
Add missing breaks (no behaviour change)
2026-08-08 13:14:06 +12:00
Andy1210
21ace56160
VideoBackends/OGL: Don't call glMemoryBarrier without ARB_shader_image_load_store
...
glMemoryBarrier comes from ARB_shader_image_load_store, so on a desktop context
below GL 4.2 the pointer is null. bSupportsBBox is set from
bSupportsFragmentStoresAndAtomics, which such a driver can still have, so saving
a state reads the bounding box and calls a null pointer.
UsePersistentStagingBuffers() in OGLTexture.cpp already guards the same call with
bSupportsImageLoadStore.
2026-08-07 17:09:46 +02:00
Scott Mansell
1c4208e1fb
Add fallthroughs to OpenGL InitExtentionList
2026-08-07 20:41:59 +12:00
Scott Mansell
4a10a9c634
Add fallthroughs to GetMurmurHash3
2026-08-07 19:27:41 +12:00
Sepalani
6496d6c0c9
Common/BitCastPtr: Prevent destination type to be a pointer
2026-08-05 00:15:16 +04:00
Scott Mansell
9c5ff6b248
Mach exception thread: Fix msg alignment
...
msg_in and msg_out were ending up with only 4-byte alignment, which
is undefined behaviour, since they contain 64-bit fields. Probably
doesn't cause any issues, but it showed up in ubsan.
2026-08-03 22:46:45 +12:00
JosJuice
f5be1c30e5
VideoCommon: Fix custom texture count in OSD message
...
83dc468 broke the OSD message that shows the number of custom textures.
If Prefetch Custom Textures was disabled, the number would always be 0.
2026-08-02 10:11:15 +02:00
Dr. Dystopia
be3ad38ec7
Use designated constructors
2026-08-01 21:37:43 +02:00
Scott Mansell
5c6dcce721
Merge pull request #14758 from JoshuaVandaele/egl-platform-nowayland
...
Forbid EGL_PLATFORM to be "wayland"
2026-08-02 02:57:00 +12:00
JosJuice
ad7e793548
Merge pull request #14768 from phire/security/gcz_overflows
...
Better validation and handling of GCZ
2026-08-01 12:26:10 +02:00
Scott Mansell
3c63788e01
Merge pull request #14776 from tygyh/Core/Use-static-cast
...
Replace functional cast with `static_cast`
2026-08-01 22:17:15 +12:00
Scott Mansell
463bcb8aeb
Merge pull request #14781 from sepalani/gai-error
...
IP/Top: Add getaddrinfo() error log message
2026-08-01 22:15:10 +12:00
Sepalani
a3a43f9bd2
IP/Top: Add getaddrinfo() error log message
2026-07-31 18:25:54 +04:00
Joshua Vandaële
1c2b7fbf7f
EGLX11: Forbid EGL_PLATFORM to be "wayland"
2026-07-31 10:34:00 +02:00
Scott Mansell
f1b4345d08
Merge pull request #14755 from JoshuaVandaele/cmakeupd-qt-useless-dlls
...
windeployqt: Disable uneeded DLLs
2026-07-31 18:00:43 +12:00
Scott Mansell
3bd410c4c5
Merge pull request #14775 from tygyh/Replace-zero-constants-with-nullptr
...
Replace zero constants with `nullptr`
2026-07-31 13:49:48 +12:00
Scott Mansell
74c51895c8
Merge pull request #13452 from tygyh/Use-structured-binding-DolphinQt-FifoAnalyzer
...
DolphinQt/FIFO/FifoAnalyzer: Use structured bindings
2026-07-31 01:02:32 +12:00
Scott Mansell
5e1e4dbc4c
Merge pull request #14778 from JoshuaVandaele/about-enable-sdl
...
AboutDialog: Fix compilation with ENABLE_SDL=OFF
2026-07-31 00:57:12 +12:00
Dr. Dystopia
a5552e612c
Replace functional cast with static_cast
2026-07-30 14:18:47 +02:00
Scott Mansell
20fea85b53
Merge pull request #14765 from slick-daddy/opt-6
...
InputCommon: return the device list directly in GetAllDevices
2026-07-30 21:10:41 +12:00
Joshua Vandaële
d5e3c2bcfc
AboutDialog: Fix compilation with ENABLE_SDL=OFF
2026-07-29 21:27:06 +02:00
Dr. Dystopia
61e97c9a09
Replace zero constants with nullptr
2026-07-29 18:15:38 +02:00
Scott Mansell
e9317dbe48
Merge pull request #14115 from techflashYT/elf-loader-fix
...
Core/Boot: Fix ELF load address semantics
2026-07-29 18:12:24 +12:00
Scott Mansell
c863abc0d3
Merge pull request #14770 from JoshuaVandaele/gen-approved-hash
...
AchievementApprovedHash: Automatically generate hash using CMake
2026-07-29 17:49:48 +12:00
Scott Mansell
9b726fd56b
Merge pull request #13543 from tygyh/DiscIO-Use-views-keys
...
DiscIO: Use views::keys
2026-07-29 17:49:24 +12:00
Scott Mansell
a3a5834100
Merge pull request #14766 from phire/security/dol_reader
...
DolReader: Fix integer wraparound
2026-07-29 13:30:04 +12:00
Scott Mansell
1c10b9e9ab
Merge pull request #14738 from tygyh/Replace-concatination-with-stdformat
...
Replace string concatination with `fmt::format`
2026-07-29 13:28:58 +12:00
Scott Mansell
475f35e2fa
Merge pull request #14747 from AdmiralCurtiss/dsp-hle-oob
...
HW/DSPHLE/AXVoice: Check array bounds in ApplyUpdatesForMs()
2026-07-29 13:26:27 +12:00
Scott Mansell
bc6688c0aa
Merge pull request #14752 from JoshuaVandaele/about-sdl
...
AboutDialog: Report the SDL version being used
2026-07-29 13:23:16 +12:00
Dr. Dystopia
08e183d322
Replace string concatination with fmt::format
2026-07-28 12:39:54 +02:00
Scott Mansell
4782a04c20
GCZ: use 64-bit for m_data_offset
...
A malicious GCZ file could probably force this to be negative.
Shouldn't cause any issues other than file read failures, but need to fix
because it is causing errors on MSVC.
2026-07-28 19:44:49 +12:00
Scott Mansell
feeb36bf07
GCZ: validate while loading
2026-07-28 19:44:49 +12:00
Scott Mansell
ffb0e2c594
GCZ: Don't trust block_num either
...
SectorReader::ReadChunk does do some validation on it, but it only
checks against the original disc size (reported by the GCZ file).
It has no idea how many blocks the header claimed the disc had.
A maliciously crafted GCZ file could trigger read overflows off the end
of the m_block_pointers/m_hashes arrays.
2026-07-28 19:44:49 +12:00
Scott Mansell
a3740b5f71
GCZ: Don't trust GetBlockCompressedSize
...
It comes unverified from the file, and a maliciously crafted file could
trigger not one, but two buffer overflows in the heap.
2026-07-28 19:44:49 +12:00