Commit Graph
100 Commits
Author SHA1 Message Date
Léo Lam 17b11cf4a4 Merge pull request #9095 from JosJuice/android-reset-setting
Android: Long press a setting to reset it
2020-11-23 02:50:40 +01:00
Léo Lam b555f0fb93 Merge pull request #9265 from lioncash/core-log3
Core: Convert logging over to fmt pt.3
2020-11-23 02:46:58 +01:00
Léo Lam 5d9eb8f6ce Merge pull request #9271 from leoetlino/warnings
Fix several warnings and only enable extra warnings for our own code
2020-11-22 02:04:53 +01:00
Léo Lam f53a7a2b66 CMake: Pass various /Zc flags to MSVC for consistency with Base.props
https://github.com/dolphin-emu/dolphin/pull/9037/commits/969ea6e4f54f1021edaa8f565e20b17a78f6f753

Fixes non-conformant handling of __VA_ARGS__.
2020-11-21 14:43:26 +01:00
Léo Lam 608dd6a37b Merge pull request #9122 from Pokechu22/pr-4601-test
Fix Super Mario Sunshine debug cubes (originally PR #4601 by stenzek)
2020-11-21 02:55:50 +01:00
Léo Lam 9efc81ae98 Fix variable shadowing warnings 2020-11-21 02:08:09 +01:00
Léo Lam 7840f61524 Silence "missing switch cases" warnings 2020-11-21 02:08:09 +01:00
Léo Lam 6ab1ab1f12 Fix -Wmaybe-uninitialized warnings 2020-11-21 02:08:09 +01:00
Léo Lam 82f1e6204d Fix -Wsign-compare warnings 2020-11-21 02:08:09 +01:00
Léo Lam 4b7f784d1b Disable -Wstringop-truncation warnings
Disable -Wstringop-truncation warnings as they result in many false
positives.

In most (all?) cases where std::strncpy is used, we want to fill the
entire buffer or match emulated code that also ignores the null
terminator, so the warnings are not useful.

Given that Dolphin itself mostly uses std::string, they do not
really help catch any bugs.
2020-11-21 02:08:08 +01:00
Léo Lam 83b9feff90 Core/Movie: Fix a likely out-of-bounds read for PanicAlertT
gameID isn't null terminated since it is just an std::array<char, 6>
and .data() returns a char* so {fmt} would go way beyond the bounds of
the array when it attempts to determine the length of the string.

The fix is to pass a std::string_view to {fmt}. This commit adds
a GetGameID() function that can also be used to simplify
string comparisons.
2020-11-21 01:30:02 +01:00
Léo Lam ade9f92a63 Enable extra warnings in Source CMakeLists, not in root CMakeLists
Having extra warnings enabled for everything including external
libraries produces an overwhelming amount of warnings in code that
isn't even part of our codebase.

Move the various warning flags to Source/CMakeLists.txt to get rid
of those useless warnings.

Note that the Source CMakeLists.txt is already where the MSVC warnings
are defined, so this commit improves consistency as well.
2020-11-21 00:59:17 +01:00
Léo Lam fa73b1a23f Merge pull request #9269 from JosJuice/fmt-positional-checks
Common: Assert that translatable strings use positional arguments
2020-11-21 00:29:43 +01:00
Léo Lam 33f15f22e2 Merge pull request #9266 from JosJuice/android-startup-illegalstate
Android: Fix IllegalStateException on startup
2020-11-20 22:13:30 +01:00
Léo Lam 542c49bab0 Core: Fix invalid lambda captures
PR #9260 made the MsgAlert macros use lambdas so that local
constexpr variables can be added while keeping the ability to
return a boolean from the macros.

Unfortunately, C++17 forbids referring to structured bindings in lambda
captures. This is fixed in P1091R3 but we cannot rely on C++20 yet...
2020-11-20 18:27:56 +01:00
Léo Lam f45a4a5916 Merge pull request #9263 from lioncash/core-log2
Core: Convert logging over to fmt pt.2
2020-11-20 16:36:47 +01:00
Léo Lam 88cc1b7c8a DSP: Fix one DEBUG_LOG call 2020-11-20 16:21:05 +01:00
Léo Lam 419dfe4be4 Merge pull request #9260 from leoetlino/fmt-checks
Common/Log: Add compile-time format string checks
2020-11-20 16:05:25 +01:00
Léo Lam 1d4672455c Merge pull request #9130 from flto/master
Vulkan: fix validation error in bSupportsGeometryShaders=false case
2020-11-20 12:35:40 +01:00
Léo Lam c580a70a12 Merge pull request #9210 from Dentomologist/regions-show-hide-all
DolphinQt: Add Show/Hide All options to gamelist region menu
2020-11-20 11:35:22 +01:00
Léo Lam a4aec0556b Merge pull request #9212 from nf6429/master-diff
Game INI Changes
2020-11-20 11:10:52 +01:00
Léo Lam 858d7612ef Merge pull request #9170 from JosJuice/android-extension-hack-2
Android: Remove hacks for Wii Remote extension setting, round 2
2020-11-20 02:47:23 +01:00
Léo Lam 30bffca5c3 Merge pull request #9193 from JosJuice/android-clear-motioncontrolsenabled
Android: Re-add motionControlsEnabled to clearWiimoteNewIniLinkedPreferences
2020-11-20 02:37:51 +01:00
Léo Lam 7f7fd4d8d3 Merge pull request #9220 from jordan-woyak/ext-crypto
WiimoteEmu: Implement extension encryption edge case.
2020-11-20 02:28:17 +01:00
Léo Lam bca82bb942 Merge pull request #9239 from altimumdelta/FFDUMP_Separate_Logging
FrameDump Logging: Separate log type and migrate to fmt
2020-11-20 02:21:57 +01:00
Léo Lam 5921a93d71 Merge pull request #9247 from Dentomologist/fix-updater-temporary-folder
Fix updater not always cleaning up temp directory
2020-11-20 02:01:43 +01:00
Léo Lam eff566b318 Merge pull request #9258 from lioncash/core-log
Core: Convert logging over to fmt pt. 1
2020-11-19 20:32:19 +01:00
Léo Lam e3247b567d Merge pull request #9185 from Losuc/skipEFBaccessHotkey
Add a Skip EFB Access Hotkey
2020-11-19 17:28:45 +01:00
Léo Lam c724447f80 Merge pull request #9259 from Strum355/utf8-source
Fixed non-UTF8 chars in PeakFinder.cpp
2020-11-19 17:23:00 +01:00
Léo Lam dde6090e98 Common/MsgHandler: Add compile-time format string checks 2020-11-19 17:09:24 +01:00
Léo Lam 62eeb05519 Common: Validate the number of {} fields in format strings
Unfortunately, {fmt} allows passing too many arguments to a format call
without raising any runtime or compile-time error [1].

As this is a common source of bugs since we started migrating to {fmt},
this commit adds some custom logic to validate the number of
replacement fields in format strings in addition to {fmt}'s own checks.

[1] https://github.com/fmtlib/fmt/issues/492
2020-11-19 17:09:24 +01:00
Léo Lam 47c91696ee Common/Log: Check format strings
Helps with catching incorrect format strings.

PanicAlertFmt already uses FMT_STRING and fmt::make_args_checked.
2020-11-19 17:09:24 +01:00
Léo Lam 7e9a2dcc72 Merge pull request #9261 from AdmiralCurtiss/shop-logs
WiiUtils: Create Wii Shop log files when installing a WAD.
2020-11-19 16:49:34 +01:00
Léo Lam 4eecb8fd11 Merge pull request #9248 from lioncash/video-fmt
VideoCommon: Migrate over to fmt
2020-11-18 11:10:48 +01:00
Léo Lam eb1581bbcc Merge pull request #9246 from JosJuice/translation-eot
DolphinQt: Don't return 0x04 bytes from tr
2020-11-18 02:31:13 +01:00
Léo Lam 31d7be521c Merge pull request #7714 from cristian64/avoid_leaking_gamelistmodel
DolphinQt: Avoid leaking the GameListModel instance to gracefully shutdown the GameTracker and prevent a crash on exit
2020-11-18 02:14:51 +01:00
Léo Lam 0339889806 Merge pull request #9251 from sepalani/sockopt
IP/Top: Add missing sockopt
2020-11-18 02:10:37 +01:00
Léo Lam b8bc6c3c86 Merge pull request #9256 from JosJuice/android-keep
Android: Add @Keep annotation to things accessed using JNI
2020-11-18 01:01:34 +01:00
Léo Lam 8119318907 Merge pull request #9257 from JosJuice/redundant-i18n
Remove a redundant i18n comment
2020-11-18 00:56:58 +01:00
Léo Lam 07be82d64f Merge pull request #9253 from JosJuice/positional-arguments
Use positional arguments in all translatable fmt strings
2020-11-17 18:02:39 +01:00
Léo Lam 8a621c2d5e Merge pull request #9236 from lioncash/log-backend
VideoBackends: Migrate logging over to fmt
2020-11-12 14:51:28 +01:00
Léo Lam ec5313fe24 Merge pull request #9204 from fbastos1/master
fix emulator issue #12139
2020-11-12 14:43:35 +01:00
Léo Lam c991f00479 Merge pull request #9244 from lioncash/input-panic
InputCommon: Migrate over to fmt-capable panic alerts
2020-11-12 14:41:50 +01:00
Léo Lam cbaf8f82ec Merge pull request #9214 from OatmealDome/macos-bind
Top: Set port when connecting a socket to find the default interface
2020-11-02 22:17:38 +01:00
Léo Lam 5b9cd83137 Merge pull request #8758 from sepalani/so-shutdown
Socket: Abort pending operations on shutdown
2020-11-02 21:52:28 +01:00
Léo Lam 060040e909 Merge pull request #9216 from JosJuice/android-load-time
Android: Don't reset savestate time on load
2020-11-02 21:37:33 +01:00
Léo Lam f665ddae51 Merge pull request #9202 from WamWooWam/patch-http-requests
Fix logger related crash when HTTP response is empty.
2020-10-29 22:07:24 +01:00
Léo Lam 650638c069 Merge pull request #9091 from shuffle2/pch
Add some files to pch
2020-10-29 21:29:28 +01:00
Léo Lam 52d8b51f56 Merge pull request #9199 from lioncash/fmt
Externals: Update fmt to 7.1.0
2020-10-27 21:56:06 +01:00
Léo Lam 2d921da860 FileUtil: Fix format string
Fixes a recent regression: https://github.com/dolphin-emu/dolphin/pull/9187#issuecomment-716835091
2020-10-26 22:47:56 +01:00
Léo Lam d2a2ec870d Merge pull request #9171 from lioncash/pixel
PixelShaderGen: Migrate over to fmt
2020-10-26 20:35:47 +01:00
Léo Lam 07e6d008bd Merge pull request #9187 from lioncash/commonlog
Common: Migrate logging to fmt
2020-10-26 19:01:26 +01:00
Léo Lam 7f66de062c Merge pull request #9188 from jordan-woyak/stop-caring-about-old-avcodec-versions
VideoCommon/FrameDump: Remove code for older versions of avcodec.
2020-10-26 18:55:48 +01:00
Léo Lam aae72c3e75 Merge pull request #9195 from jordan-woyak/mem-warning
DolphinQt: Add a warning to the MEM1/MEM2 override setting description.
2020-10-26 18:49:33 +01:00
Léo Lam 23c9179fb6 Merge pull request #9071 from orbea/cmake
cmake: Silence warnings.
2020-10-26 18:48:42 +01:00
Léo Lam 1719e634b2 Merge pull request #9190 from iwubcode/enable_vulkan_windows_solution
VideoCommon: enable vulkan in windows solution, update CMake vulkan option to match opengl
2020-10-24 21:01:39 +02:00
Léo Lam 8b9a0c9e09 IOS/USB: Fix -Winvalid-offset warnings
Unfortunately, compilers will issue warnings when using offsetof with
non-standard layout types even when offsetof actually works fine here;
just having a virtual function is enough to trigger the warning...

Let's just stop the scan threads explicitly in destructors instead of
relying on member destruction order.
2020-10-24 14:02:38 +02:00
Léo Lam 285b926e92 Merge pull request #8782 from Pokechu22/missing-serial-version-data
Explain how to fix "Serial and/or version data is missing"
2020-10-23 20:44:06 +02:00
Léo Lam e89db89d9e Merge pull request #9098 from jordan-woyak/wm-report-duplication
WiimoteReal: Only duplicate data reports when speaker data is enabled.
2020-10-23 20:38:25 +02:00
Léo Lam 271676a7c8 Merge pull request #7395 from mazes-80/11374
Cmake option to enable/disable vulkan video backend
2020-10-23 20:31:36 +02:00
Léo Lam ce6eda7c71 Merge pull request #9184 from lioncash/inputlog
InputCommon: Migrate logging over to fmt
2020-10-23 19:59:22 +02:00
Léo Lam 64f7a4448b Merge pull request #9178 from lioncash/disclog
DiscIO: Migrate logging over to fmt
2020-10-22 22:07:53 +02:00
Léo Lam 89b01cd6d3 Merge pull request #9169 from lioncash/uber-vert
UberShaderVertex: Migrate over to fmt
2020-10-22 01:21:31 +02:00
Léo Lam 83b80b289b Merge pull request #9134 from SpaceXCheeseWheel/patch-1
Shaders: Remove AsciiArt shader
2020-10-22 01:14:01 +02:00
Léo Lam 08f9ed043b Merge pull request #8846 from nyanpasu64/fix-cmake-zlib
Fix Windows CMake builds with shared zlib
2020-10-22 01:11:27 +02:00
Léo Lam 96ce3e5f49 Merge pull request #9176 from lioncash/audiofmt
AudioCommon: Migrate logging over to fmt
2020-10-22 01:03:16 +02:00
Léo Lam 3176f4d790 Merge pull request #9180 from lioncash/mat-cexpr
Common/Matrix: Allow TVec classes to be used in constexpr contexts
2020-10-22 00:31:59 +02:00
Léo Lam e553197c67 Merge pull request #8880 from AdmiralCurtiss/gcmemcard-sketchy-code-cleanup
Sketchy code cleanup in GCMemcard and GCMemcardDirectory.
2020-10-21 23:13:22 +02:00
Léo Lam a8b7c3b577 Merge pull request #8893 from JosJuice/android-jni-declarations
Android: Remove unnecessary JNI function declarations
2020-10-21 22:46:58 +02:00
Léo Lam 7b9a464c93 Merge pull request #8895 from sepalani/card
GCMemcard: Rename unknown field to m_dtv_status
2020-10-21 22:32:09 +02:00
Léo Lam 18b2553538 Merge pull request #9078 from JosJuice/android-metadata-from-core
Android: Get game metadata from core
2020-10-21 22:29:21 +02:00
Léo Lam 548bfbe2a2 Merge pull request #8917 from jwsharpe/require/zstd
Pushed required version of lib-zstd to 1.4.0 or higher
2020-10-21 22:27:50 +02:00
Léo Lam d08b80828d VideoCommon: Simplify VideoBackendBase::GetDefaultBackendName
Now we can just call GetDefaultVideoBackend to get the default backend
and get its name by calling GetName.
2020-10-21 22:00:10 +02:00
Léo Lam aaaa3896c0 VideoCommon: Get rid of the global g_available_video_backends
Replace it with a function-local static that is initialized on first
use. This gets rid of a global variable and removes the need for
manual initialization in UICommon.

This commit also replaces the weird find_if that looks for a non-null
unique_ptr with a simple "is vector empty" check considering that
none of the pointers can be null by construction.
2020-10-21 22:00:10 +02:00
Léo Lam fd5f9f4c26 Merge pull request #8927 from Filoppi/wiimote-pan-fix
Fixed volume of emulated wii mote speakers not being native.
2020-10-21 21:02:39 +02:00
Léo Lam 97de366b0f Merge pull request #9160 from jordan-woyak/xinput2-stuck-keys
Linux/XInput2: Fix keys being stuck pressed on focus loss.
2020-10-21 20:47:32 +02:00
Léo Lam 43d11ca3eb Merge pull request #8962 from JosJuice/android-saf-wad
Android: Use storage access framework for importing WADs
2020-10-21 19:16:10 +02:00
Léo Lam 09e87b79f1 Merge pull request #9173 from lioncash/fmtlog
Common/Log: Add basic fmt-capable functions to the interface.
2020-10-21 19:11:19 +02:00
Léo Lam f265c412b4 Merge pull request #9152 from Ebola16/SP1
Android: Convert SharedPreferences to INI Settings (simple cases)
2020-10-21 16:48:18 +02:00
Léo Lam 642eccbfd0 Merge pull request #9174 from lioncash/os
Common: Move OSThreads into Core
2020-10-21 15:39:29 +02:00
Léo Lam eb5e1e6151 Merge pull request #9175 from lioncash/action
ARDecrypt: Resolve seedtable at compile-time
2020-10-21 15:35:10 +02:00
Léo Lam 47059f6388 Merge pull request #9113 from ShiftaDeband/ini/FixPSOTrials
Add .ini configuration files for Phantasy Star Online Episode I&II Trial Edition and Episode III Trial Edition
2020-10-20 15:34:39 +02:00
Léo Lam ce59b026c0 Merge pull request #9168 from lioncash/ifconst
DataReader: Make use of if constexpr where applicable
2020-10-20 14:56:24 +02:00
Léo Lam 299adf537d Merge pull request #9021 from AdmiralCurtiss/gui-memcard-format-sram
Qt/GCMemcardCreateNewDialog: Use zero values for formatting instead of accessing g_SRAM.
2020-10-20 14:55:23 +02:00
Léo Lam 70ab3bf7b3 Merge pull request #9025 from cyrozap/fix-build-with-older-cmake
Fix builds with system LZMA when using versions of CMake before 3.14
2020-10-20 14:51:15 +02:00
Léo Lam dc5ae5ee66 Merge pull request #9165 from lioncash/ubercommon
UberShaderCommon: Migrate over to fmt
2020-10-20 14:42:19 +02:00
Léo Lam f653bd7559 Merge pull request #9142 from jordan-woyak/expose-fov
WiimoteEmu: Expose IR camera FOV to adjust IMU pointing sensitivity.
2020-10-20 14:32:02 +02:00
Léo Lam b2709b81a0 Merge pull request #9166 from JosJuice/encryption-cache-move
DiscIO: Make WiiEncryptionCache moveable
2020-10-20 14:29:46 +02:00
Léo Lam 96cb27842a Merge pull request #9048 from shuffle2/msvc-version
require msvc 19.27.29111 and Windows SDK 10.0.19041
2020-10-20 13:35:18 +02:00
Léo Lam 2e86e1a998 Merge pull request #9146 from JosJuice/android-disable-cover-download
Android: Allow disabling cover downloading
2020-10-20 13:31:01 +02:00
Léo Lam 49b7f10b39 Merge pull request #9163 from lioncash/fbgen
FramebufferShaderGen: Migrate over to fmt
2020-10-20 13:25:50 +02:00
Léo Lam 05194bc67e Merge pull request #9149 from altimumdelta/readme_add_buildbot_link
Readme: Add Buildbot header link
2020-10-20 12:24:04 +02:00
Léo Lam 7b1e0dba9b Merge pull request #9164 from lioncash/geoshader
GeometryShaderGen: Migrate over to fmt
2020-10-20 11:59:45 +02:00
Léo Lam 409230e088 Merge pull request #9061 from Ebola16/Fixes3
Android: Improve WRITE_EXTERNAL_STORAGE denial
2020-10-20 02:15:08 +02:00
Léo Lam fc3b474cce Merge pull request #8318 from iwubcode/dynamic_input_textures
InputCommon: Dynamic Input Textures
2020-10-20 02:10:29 +02:00
Léo Lam b26c2e7adb Merge pull request #9094 from Pokechu22/wii-fit-ini-note
Add INI note for Wii Fit and Wii Fit Plus
2020-10-20 02:07:52 +02:00
Léo Lam 911704611e Merge pull request #9096 from jordan-woyak/calibration-cleanup
ControllerEmu: Improve and simplify UpdateCalibrationData.
2020-10-20 02:01:16 +02:00
Léo Lam 98875346bd Merge pull request #9104 from JosJuice/cmd-unicode
DolphinQt: Handle non-ASCII characters in Windows cmd arguments
2020-10-20 01:45:28 +02:00
Léo Lam 680ff4d168 Merge pull request #9136 from JosJuice/volumeverifier-partition-invalid-override
VolumeVerifier: Make "no valid data in partition" hide some other errors
2020-10-20 01:39:18 +02:00
Léo Lam 8a8dc3db83 Merge pull request #8613 from jordan-woyak/expose-disable-ss
Config: Expose "DisableScreenSaver" in the UI and default it to true.
2020-10-20 01:20:24 +02:00