Admiral H. Curtiss
a7d358a97b
Merge pull request #11003 from sepalani/decode-error
...
Move SocketManager's DecodeError to Common
2022-08-24 17:01:07 +02:00
Pokechu22
0cced44142
Use `__VA_OPT__(, ) __VA_ARGS__` instead of `##__VA_ARGS__`
...
Per https://en.cppreference.com/w/cpp/preprocessor/replace#.23_and_.23.23_operators the `##` behavior is a nonstandard extension; this extension seems to be supported by all compilers we care about, but IntelliSense in visual studio doesn't correctly handle it, resulting in false errors in the IDE (but not when compiling).
Per https://en.cppreference.com/w/cpp/preprocessor/replace#Function-like_macros C++20 introduced a workaround, where `__VA_OPT__(, )` generates a comma if and only if `__VA_ARGS__` is non-empty.
This PR replaces all occurrences, with the exception of Externals, DSPSpy (which is not likely to be edited in MSVC and does not target C++20 currently), and JitArm64_Integer.cpp (which uses `Function(__VA_ARGS__)`, and thus does not ever need a comma).
2022-08-23 12:09:57 -07:00
Sepalani
597fb9ff6d
Move SocketManager's DecodeError to Common
...
Fix thread safety issue
2022-08-22 14:02:26 +04:00
Mai
e9e2c741a2
Merge pull request #10953 from JosJuice/aarch64-add-encoding
...
Arm64Emitter: Fix encoding of size for ADD (vector)
2022-08-09 18:13:50 -04:00
Shawn Hoffman
6e94c20abd
add TODO for chrono in GetLocalTimeSinceJan1970
2022-08-06 22:25:30 -07:00
Shawn Hoffman
292724b228
Revert "msvc: use std::chrono for GetLocalTimeSinceJan1970"
...
This reverts commit 86da6c98fb
.
2022-08-06 22:22:14 -07:00
Shawn Hoffman
9bb8315441
ResourcePack: dont scan for individual files
...
walking the zip prevents minizip from re-reading the same
data repeatedly from the actual backing filesystem.
also improves most usages of minizip to allow for >4GB,
files altho we probably don't need it
2022-08-06 15:38:46 -07:00
Tilka
3595c8b295
Merge pull request #10952 from JosJuice/bitutils-remove-unused
...
Common: Remove unused stuff from BitUtils.h
2022-08-05 21:08:02 +01:00
JosJuice
52661dcc76
Arm64Emitter: Fix encoding of size for ADD (vector)
...
This was causing a bug in the rounding of paired single multiplication
operands. If Force25BitPrecision was called for quad registers, the
element size of its ADD instruction would get treated as if it was 16
instead of the intended 64, which would cause the result of the
calculation to be incorrect if the carry had to pass a 16-bit boundary.
Fixes one of the two bugs reported in
https://bugs.dolphin-emu.org/issues/12998 .
2022-08-05 21:49:28 +02:00
JosJuice
c00008e3cd
Common: Remove unused stuff from BitUtils.h
2022-08-05 17:54:51 +02:00
JosJuice
939fa1ed1c
Merge pull request #10941 from shuffle2/crypto-cleanup
...
Crypto cleanup
2022-08-05 12:12:34 +02:00
Mai
f59f1a2a35
Merge pull request #10740 from Tilka/cxx20
...
Move to C++20 for non-MSVC compilers
2022-08-04 09:31:31 -04:00
Mai
a8b2174ce6
Merge pull request #10872 from shuffle2/timer
...
Timer improvements
2022-08-03 14:30:29 -04:00
Shawn Hoffman
bf5076eb01
crypto/sha1: add real workaround for msvc/arm64 bad codegen
2022-08-02 23:05:45 -07:00
Shawn Hoffman
78142e30cc
crypto/sha1: simplify enablement of sha insns on non-msvc
2022-08-02 23:05:07 -07:00
Shawn Hoffman
4e6aa28da4
crypto/aes: silence warning on godforsaken android gcc
2022-08-02 23:03:51 -07:00
Shawn Hoffman
fec61f89a3
Timer: protect usages of ms timers from rollover
2022-08-02 22:24:06 -07:00
Shawn Hoffman
86da6c98fb
msvc: use std::chrono for GetLocalTimeSinceJan1970
2022-08-02 22:24:06 -07:00
Shawn Hoffman
b473c35873
windows: mark as HighQoS, ensure timer resolution is honored
2022-08-02 22:24:06 -07:00
Shawn Hoffman
3384b1385e
move "double time" code into State from Timer
...
Ideally the statesave format could be changed
to just store a u64 in the future
2022-08-02 22:24:06 -07:00
Shawn Hoffman
09089eeee0
Common::Timer: use chrono::steady_clock internally
2022-08-02 22:24:06 -07:00
Shawn Hoffman
8d16971a6f
LogManager: use own timestamp function
2022-08-02 22:24:05 -07:00
Shawn Hoffman
d71797154a
VolumeVerifier: enable fast hash functions by default
...
sets defaults based on cpu support.
2022-08-02 22:23:49 -07:00
Tilka
7d2d5d914b
Merge pull request #10903 from shuffle2/hash-reorg
...
Common/Hash: use zlib-ng for adler32. small cleanups.
2022-08-02 18:29:04 +01:00
Shawn Hoffman
17c554c165
Common/Hash: use zlib-ng for adler32. small cleanups.
2022-08-01 10:07:27 -07:00
Shawn Hoffman
46ad8b9d68
Implement hw accelerated AES
2022-08-01 10:00:42 -07:00
Tillmann Karras
d033d92b05
Move to C++20 for non-MSVC compilers
2022-07-30 23:35:53 +01:00
Shawn Hoffman
97ff757a74
SHA1/arm64: fix casting warning on certain gcc
2022-07-30 12:06:21 -07:00
Admiral H. Curtiss
a9d9f5c0da
Merge pull request #10899 from shuffle2/sha1
...
add hw-accelerated SHA1
2022-07-30 14:11:37 +02:00
Shawn Hoffman
25462f4a3c
SavePNG: make sure to finalize image file
2022-07-28 10:12:36 -07:00
Shawn Hoffman
8939210d8a
Common/Crypto/SHA1: implement accelerated versions
2022-07-27 01:07:48 -07:00
Shawn Hoffman
dd29a54cf6
introduce wrapper for SHA1 functionality
2022-07-26 22:16:37 -07:00
Josh
7e75bcd36f
Use Dynamic last Log Type
2022-07-27 00:07:53 +02:00
Admiral H. Curtiss
a9edf129e3
Merge pull request #10889 from shuffle2/spng
...
replace libpng with libspng
2022-07-26 12:53:04 +02:00
Admiral H. Curtiss
6b419c7ca3
Merge pull request #10876 from shuffle2/cpudetect
...
CPUDetect: improve win/arm64 support
2022-07-26 12:52:50 +02:00
Shawn Hoffman
76b4318b88
CPUDetect: improve win/arm64 support
...
read brand_string on macos/arm64
remove unused flags
report family/model info instead of vendor name
2022-07-25 21:21:11 -07:00
Shawn Hoffman
f92541fbd9
StripSpaces: only strip spaces
...
StripWhitespace maintains old behavior
2022-07-25 18:40:12 -07:00
Shawn Hoffman
acb10f0006
replace libpng with libspng
2022-07-25 18:32:16 -07:00
Shawn Hoffman
0a15d2fcec
cubeb: fix logged source file paths
2022-07-18 09:52:54 -07:00
Admiral H. Curtiss
2d8d3358c4
FatFsUtil: Skip past entries with invalid filenames.
2022-07-11 23:11:42 +02:00
Admiral H. Curtiss
de9c9f2281
FatFsUtil: Improve error handling and error reporting.
2022-07-11 23:11:42 +02:00
Admiral H. Curtiss
f40eeebcf0
FatFsUtil: Add some path traversal attack protection when unpacking.
2022-07-11 23:11:42 +02:00
Admiral H. Curtiss
a621fdf857
Core: In deterministic mode, build SD cards with a consistent filename order and dummy timestamps.
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss
a5b1bfef68
Common: Change default path for Wii SD cards to not be inside the Wii NAND.
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss
77d4591fb4
Core: If configured, sync SD card image with SD card folder on emulation start and end.
...
Co-authored-by: Pablo Stebler <pablo@stebler.xyz>
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss
b66cc1caf6
Config and UICommon: Add config option and user path for Wii SD card sync folder.
2022-07-11 23:11:40 +02:00
Admiral H. Curtiss
96751c4457
Treewide: Rename references to SD Card image path to clarify they mean the image file, not the folder.
2022-07-11 23:11:40 +02:00
Admiral H. Curtiss
fdc327c252
Externals/FatFs: Build as part of Dolphin.
...
Co-authored-by: Pablo Stebler <pablo@stebler.xyz>
2022-07-11 23:11:37 +02:00
Admiral H. Curtiss
32523f155b
Merge pull request #10825 from Rudolchr/fix_build_with_libfmt-9
...
MsgHandler: Add a check for libfmt version to fix build with libfmt-9
2022-07-11 23:02:08 +02:00
Admiral H. Curtiss
20059776d9
Merge pull request #10831 from sepalani/BBA-cleanup
...
Common/Network+BBA/Builtin: Cleanup
2022-07-11 23:00:21 +02:00
TellowKrinkle
3d34a20105
Common: Fix CountTrailingZeros for weird compilers
2022-07-10 17:35:47 -05:00
JMC47
38cb76dea5
Merge pull request #10807 from merryhime/LogicalImm
...
Arm64Emitter: Simplify LogicalImm logic
2022-07-10 17:27:47 -04:00
Merry
0d947ed6fe
Arm64Emitter: Simplify LogicalImm further
...
h/t @dougallj
2022-07-10 22:17:09 +01:00
Merry
20ccc38f0f
BitUtils: Implement CountTrailingZeros
2022-07-10 22:17:09 +01:00
Sepalani
b950d038b9
Common/Network: Update IP checksum since total_len might have changed
2022-07-10 20:56:07 +04:00
Sepalani
5fdf255a2d
Common/Network: Make Build() methods const
2022-07-10 20:12:07 +04:00
Sepalani
d902b04ae0
Common/Network: Remove unused offset variables
2022-07-10 14:11:50 +04:00
Sepalani
b206f98261
Common/Network: Remove unnecessary size checks
2022-07-10 14:04:03 +04:00
Sepalani
6238834c05
Common/Network: Add InsertObj helper
2022-07-10 13:56:33 +04:00
Sepalani
4efe1e7ca7
Common/Network: Ensure offsetof is valid
2022-07-10 12:48:12 +04:00
Sepalani
b7bd2a4001
Common/Network: Use member initializer list
2022-07-10 12:31:59 +04:00
Sepalani
13957a627c
Common/Network: Remove unused constructors
2022-07-10 11:42:58 +04:00
Admiral H. Curtiss
5a7759e359
Merge pull request #10690 from schthack/BBA-tapless
...
BBA: Added BuiltIn device that allow BBA emulation without the need o…
2022-07-09 23:20:53 +02:00
schthack
087020b23a
Refactoring of the code to match dolphin style
...
Changed access for offsetof + some clean up
2022-07-09 17:01:22 -04:00
Christopher Rudolph
66f330e573
Add a check for libfmt version so that in case libfmt-9 is used the function is_compile_string is called under it's new namespace
2022-07-09 17:02:09 +02:00
Merry
3092f40e9f
Arm64Emitter: Simplify LogicalImm logic
...
Heavily simplify logical immediate encoding.
This is based on the observation that if a valid repeating element
exists, it repeats through `value`. Thus it does not matter which
one you analyse. Thus we skip over the least significent element
if LSB = 1 by masking it out with `inverse_mask_from_trailing_ones`,
to avoid the degenerate case of a stretch of 1 bits going 'round
the end' of the word.
2022-07-07 22:53:36 +01:00
OatmealDome
c6eb5e2623
FileUtil: Only attempt to write to the destination in Copy if there is actually content to write
2022-07-05 15:13:20 -04:00
schthack
01ada3850f
BBA: Added BuiltIn device that allow BBA emulation without the need of a TapDevice Configuration include a dns server setting
2022-07-02 18:02:50 -04:00
JosJuice
07a15a3228
Merge pull request #10624 from Minty-Meeo/resolve-gcc-warnings
...
Resolve Linux GCC Warnings
2022-07-02 09:17:44 +02:00
JMC47
b5f4b0dffe
Merge pull request #10803 from Zopolis4/clangingaround
...
Resolve additional warnings generated by clang
2022-07-02 03:12:34 -04:00
Minty-Meeo
69e32dea52
Resolve GCC Warnings
2022-06-30 15:26:48 -05:00
JMC47
5d04e1e1de
Merge pull request #10518 from iwubcode/draw-mod
...
Introducing a 'GraphicsMod' system for creators
2022-06-28 13:35:39 -04:00
JMC47
e50e45f400
Merge pull request #10700 from sepalani/ssl-handshake
...
Socket: Fix some non-blocking connect edge cases
2022-06-27 21:39:36 -04:00
iwubcode
3857e1fa66
Core: add GraphicsMod directory
2022-06-26 21:53:21 -05:00
Zopolis4
5d2290ba3c
Removed unused variable MAX_MSGLEN in LogManager.cpp
2022-06-24 14:57:03 +10:00
Shawn Hoffman
29ddd0e6f0
windows: detect and warn if running x64 dolphin on arm64
2022-06-22 15:33:12 -07:00
JMC47
9315ac7071
Merge pull request #10587 from AdmiralCurtiss/memcard-path-unify
...
Raw Memory Card Path handling unification and consistency fixes.
2022-06-13 20:18:36 -04:00
Tillmann Karras
59dfc43949
Common: replace std::aligned_storage_t with alignas
...
C++23 deprecates std::aligned_storage_t while alignas works since C++11.
This fixes issue 12925.
2022-06-13 00:06:19 +01:00
Sepalani
cbadc6e81a
NetworkCaptureLogger: Move ErrorState struct to Common/Network
2022-06-08 19:06:42 +04:00
JMC47
daf8e3ddde
Merge pull request #10462 from OatmealDome/steam-runtime
...
DolphinQt: Add support for a Steam Runtime build
2022-06-06 20:18:06 -04:00
Tillmann Karras
79a7bf02eb
CMake: rename minizip to minizip-ng
...
minizip-ng is the new name used by the upstream project as well as all
distros other than Fedora (but it looks like it will be renamed there).
2022-06-06 14:21:43 +02:00
Admiral H. Curtiss
b1d1f2aa06
Common/StringUtil: Add convenience function for converting paths to use forward slashes on Windows.
2022-06-05 21:24:45 +02:00
Mai M
84944625df
Merge pull request #10714 from OatmealDome/macos-mojave-bump
...
BuildMacOSUniversalBinary: Bump minimum macOS to 10.14
2022-06-02 20:20:52 -04:00
OatmealDome
1cb3058abe
MemoryUtil: Remove __builtin_available for macOS 10.14
2022-06-01 22:57:56 -04:00
Dentomologist
e0c9ae16b9
FileUtil: Refactor CreateSysDirectoryPath()
2022-05-31 16:18:08 -07:00
Dentomologist
c2be78079c
FileUtil: Remove GetSysDirectory log spam
...
Create and log path the first time GetSysDirectory is called, then just
return the path on future calls.
2022-05-31 16:18:08 -07:00
Dentomologist
4d563ce4d1
Android: Ensure File::s_android_sys_directory is set only once
2022-05-31 16:18:08 -07:00
OatmealDome
e679502a5d
GLX: Guard against redefinition of PFNGLXSWAPINTERVALEXTPROC
...
This type is already declared in glxext.h in the Steam Runtime.
2022-05-29 13:50:32 -04:00
Dentomologist
c8e20c569b
Convert PointerWrap::Mode to enum class
2022-05-25 13:16:46 -07:00
Dentomologist
f6b9acccfc
Common: Refactor PointerWrap
2022-05-25 13:06:41 -07:00
Admiral H. Curtiss
f68c3b758e
Common/Network: Use std::array in IPv4Header.
2022-05-23 02:01:59 +02:00
JMC47
3a3357444e
Merge pull request #8067 from endrift/hsp
...
Preliminary HSP support
2022-05-22 13:42:27 -04:00
Vicki Pfau
6a26b0ce8a
HW: Initial HSP implementation with ARAM expansion
2022-05-21 17:05:49 -07:00
Admiral H. Curtiss
580c721c82
cmake: Don't use PCH with Qt6.
2022-05-22 01:19:44 +02:00
Scott Mansell
876f6651b4
cmake: fix PCH to work with msvc/ninja
...
Ninja puts way more effort into compiling targets in parallel, and
ignores dependenceis until link time.
So we need to jump though hoops to force ninja to compile
pch.cpp before any targets which depend on the PCH.
2022-05-22 00:29:47 +02:00
Scott Mansell
0909e00117
cmake: fix MSVC PCH support
...
I'm not sure if the previous implementation ever worked.
2022-05-22 00:29:47 +02:00
Scott Mansell
987f270083
cmake: fix buggy target sources on windows
...
I have no idea why cmake supports PUBLIC on target_sources,
but it does. It causes all targets that depend on this target
to try and include the files in their sources.
Except it doesn't take paths into account, so it breaks. Mabye
it would work if you used an abolute source? But I'm not sure
there is a sane usecase.
2022-05-22 00:29:46 +02:00
Pokechu22
5f9212dd84
Common/LogManager: Remove old printf-style logging functions
2022-05-19 12:41:58 -07:00
Shawn Hoffman
fa17153ebc
fmt: use make_format_args instead of make_args_checked
...
make_args_checked is deprecated
see https://github.com/fmtlib/fmt/pull/2760 and the linked comment
2022-05-10 19:25:48 -07:00
Tilka
ac643825ce
Merge pull request #10628 from Minty-Meeo/force_inline-minor-change
...
Change _WIN32 check to a _MSC_VER check in Inline.h
2022-05-03 23:07:40 +01:00
Minty-Meeo
9c22205ab1
Change _WIN32 check to a _MSC_VER check in Inline.h
...
This is compiler dependent, not OS dependent.
2022-05-02 01:57:36 -05:00
Shawn Hoffman
2808909a97
msbuild: simplify lang/scm projects a bit
2022-04-27 15:06:04 -07:00
Admiral H. Curtiss
ef760ee012
Common/PointerWrap: Prevent reads/writes past the end of the buffer.
2022-04-18 23:48:00 +02:00
Admiral H. Curtiss
853cf4f818
Common/PointerWrap: Hide internals.
2022-04-18 03:41:14 +02:00
Admiral H. Curtiss
0a4805c0b9
Merge pull request #10582 from AdmiralCurtiss/fmt-float
...
Common/StringUtil: Use simpler formatting for floats and doubles.
2022-04-16 03:42:55 +02:00
Admiral H. Curtiss
5c687fc2a3
Common/StringUtil: Use simpler formatting for floats and doubles.
2022-04-12 23:35:19 +02:00
Shawn Hoffman
ef8e461ca2
windows: buildfix if pch not used
2022-04-12 12:28:57 -07:00
Admiral H. Curtiss
36134abd0e
Common/LogManager: Add generic printf-style log function that takes a va_list instead of va_args.
2022-04-09 01:41:40 +02:00
Admiral H. Curtiss
23508cafb2
Merge pull request #7675 from TryTwo/Debugger_Code_Features
...
Debugger: Get target memory in load/store instructions
2022-04-08 05:28:22 +02:00
TryTwo
53cf78d413
Gekko constistancy changes. Add context item to codeview to show or copy a load/store target memory address from instructions at or near PC when paused.
2022-03-17 12:53:38 -07:00
Léo Lam
bf261f6144
Merge pull request #10493 from jordan-woyak/netplay-show-traversal-external-port
...
NetPlayDialog: Display external IP/Port as seen by the traversal server.
2022-03-15 16:03:28 +01:00
Léo Lam
da6f86f381
Merge pull request #10496 from JosJuice/mappingcommon-split
...
Move parts of MappingCommon out of DolphinQt
2022-03-15 15:54:04 +01:00
Jordan Woyak
c058c8e1a6
NetPlayDialog: Display external IP/Port as seen by the traversal server when it's used.
2022-03-15 01:56:16 -05:00
Pokechu22
0f3832dec6
Common/FileUtil: Change logging to debug level
...
These messages hid other, more important, ones often. I have left AttemptMaxTimesWithExponentialDelay and GetSysDirectory/SetSysDirectory as info, since those are called infrequently and can be useful to the end-user.
2022-03-08 14:07:37 -08:00
JosJuice
1bc057614e
Move parts of MappingCommon out of DolphinQt
...
Some of the functions in MappingCommon would be useful to use on
mobile in the future.
2022-03-06 14:30:49 +01:00
JosJuice
5446daaef9
Common: Make DynamicLibrary non-copyable
...
The default implementations of DynamicLibrary's copy and move
constructors and assignment operators are unsafe.
2022-03-05 23:40:41 +01:00
Léo Lam
bcc14d32b8
Merge pull request #10482 from Dentomologist/remove_redundant_statement
...
FileUtil: Remove redundant statement
2022-03-02 12:27:21 +01:00
JMC47
ea116fbbdf
Merge pull request #9834 from AdmiralCurtiss/fastmem-reserve-region-linux
...
MemArena: Keep fastmem memory region mapped on Linux to ensure nothing allocates within the fastmem space.
2022-02-28 12:46:34 -05:00
Dentomologist
01bd5e15ba
FileUtil: Remove redundant statement
2022-02-25 21:16:07 -08:00
JosJuice
128fa8aec3
Merge pull request #10388 from Dentomologist/android-fix-unused-variable-warning
...
[Android] Fix unused variable warning
2022-02-20 18:56:50 +01:00
JosJuice
35b436bd6b
Merge pull request #10377 from Pokechu22/warning-fixes-jan-2022
...
Fix several compile warnings on GCC
2022-02-18 21:05:42 +01:00
Merry
be81fe86e1
JitRegister: Use fmt
...
Prefer fmt to printf-style formatting.
2022-02-16 20:09:38 +00:00
Admiral H. Curtiss
ffbe6cb21f
MemArena: Keep fastmem region mapped on Linux.
2022-02-14 22:14:41 +01:00
Admiral H. Curtiss
4a9553bf6d
MemArena: Load UnmapViewOfFileEx dynamically to restore Windows 7 support.
2022-02-14 21:57:18 +01:00
Admiral H. Curtiss
3a4de2b306
MemArena: Use Common::DynamicLibrary for m_api_ms_win_core_memory_l1_1_6_handle.
2022-02-14 21:57:15 +01:00
Pokechu22
15f80f7234
MathUtil: Mark lo in SaturatingCast as [[maybe_unused]]
...
It's unused in the case that T is unsigned and dest is signed (e.g. SaturatingCast<int, size_t> which appears SetIsoPaths in MainSettings.cpp)
2022-02-13 14:38:59 -08:00
JosJuice
989bdb8d6d
Common/CodeBlock: Call ResetCodePtr when decreasing region_size
...
Fixes https://bugs.dolphin-emu.org/issues/12827 .
A description of what was going wrong:
JitArm64::Init first calls CodeBlock::AllocCodeSpace, after which
CodeBlock and Arm64Emitter consider us to have 96 MB of code space
available. JitArm64::Init then calls AddChildCodeSpace, which is
supposed to take 64 MiB of that space and give it to m_far_code.
CodeBlock's view of how much space there is gets updated from 96 MiB
to 32 MiB, but due to the missing call, Arm64Emitter keeps thinking
that it has 96 MiB of space available.
The last thing JitArm64::Init does is to call ResetFreeMemoryRanges.
This function asks Arm64Emitter how much code space is available and
stores a range of that size in m_free_ranges_near, meaning that
m_free_ranges_near ends up being backed by both nearcode and farcode!
This is a ticking time bomb; as soon as we grab memory from
m_free_ranges_near which is backed by farcode, we're in trouble.
The crash I ran into in my testing was caused by fastmem code being
allocated in farcode (our backpatch handler only handles accesses made
from nearcode), but you may as well get errors caused by code intended
for nearcode overwriting code intended for farcode or vice versa.
So why did NBA Live 2005 crash when most games had no problems,
and why was the bug bisected to the commit that increased the size
of far code from 16 MiB to 64 MiB? Well, as long as we're only
using the first 32 MiB of the big 96 MiB range, everything works.
What happens with NBA Live 2005 (I have not investigated exactly
through what mechanism this happens) is that at some point the range
in m_free_ranges_near gets split into two ranges, one which is
backed by nearcode and one which is backed by farcode. Dolphin
prefers to select the biggest range available (we don't want to
pick a tiny 1 KiB range that may not be able to fit the whole block
we're about to emit, after all), and after increasing the size of
farcode to 64 MiB, farcode is bigger than nearcode.
2022-02-12 17:51:32 +01:00
Admiral H. Curtiss
79405de103
MemArena: Use placeholders on Windows.
2022-02-06 18:06:04 +01:00
Admiral H. Curtiss
a336c4386c
IOFile: Rename Clear() to ClearError() for clarity.
2022-01-29 06:49:22 +01:00
Admiral H. Curtiss
36cfcb530f
IOFile: Make origin parameter to Seek() an enum class.
2022-01-29 06:49:21 +01:00
Dentomologist
d3ae1bd415
[Android] Fix unused variable warning
...
Add [[maybe_unused]] attribute to ConsoleListener's m_use_color
2022-01-25 14:15:18 -08:00
JosJuice
7b8e846d0a
Merge pull request #10367 from Pokechu22/fmt-8.1.1
...
Update to fmt 8.1.1
2022-01-20 21:14:41 +01:00
Pokechu22
6e5f4125e3
Use Common::ToLower and Common::ToUpper
2022-01-16 17:00:12 -08:00
Pokechu22
aaec64501a
Create Common::ToLower and Common::ToUpper
2022-01-16 16:56:53 -08:00
Pokechu22
fefde0481d
Use EnumFormatter to generate names for EXI devices
...
This simplifies the code in GameCubePane, and allows us to use the EXIDeviceType enum in error messages.
2022-01-14 20:24:53 -08:00
Léo Lam
83c5446d85
Fix static initialisation order fiasco issue for Version variables
...
Fixes a crash that could occur if the static constructor function for
the MainSettings.cpp TU happened to run before the variables in
Common/Version.cpp are initialised. (This is known as the static
initialisation order fiasco.)
By using wrapper functions, those variables are now guaranteed to be
constructed on first use.
2022-01-14 00:04:22 +01:00
Pokechu22
fd04f4f32d
Replace use of of unsigned char* with fmt
...
Using unsigned char* or signed char* results in a deprecation warning, which is treated as an error. It needs to be casted to regular char* for it to work.
2022-01-13 11:11:08 -08:00
Pokechu22
1a92699455
Cast to int for enums that are not formattable
2022-01-13 11:11:08 -08:00
Pokechu22
ac46b91673
Make all fmt::formatter constructors constexpr
2022-01-13 11:11:08 -08:00
Pokechu22
78e43a4404
Make all custom fmt::formatter's format functions const
...
fmt 8.0.0 requires this.
2022-01-13 11:11:08 -08:00
Pokechu22
cc592ab814
Use fmt::runtime in FmtFormatT
...
This format string is by definition dynamic and can't be checked at compile time. There are other similar strings in the log handler and in asserts, but they use vformat and thus don't need fmt::runtime. We might be able to do a similar thing where the untranslated string is compile-time checked, but FmtFormatT is used in so few places that I don't want to handle that in this PR.
2022-01-13 11:11:08 -08:00
Pokechu22
54cf8d030c
Add fmt/xchar includes where wstring is used
2022-01-13 11:11:08 -08:00
Pokechu22
140c8217f6
Common: Create HRWrap
...
HRWrap now allows HRESULT to be formatted, giving useful information beyond "it failed" or a hex code that isn't obvious to most users. This commit does not add any uses of it, though.
2022-01-09 12:44:15 -08:00
Pokechu22
c296c34e00
Common/MsgHandler: Use caller's file and line number in log messages
...
This will assist with finding the source of a panic alert based on logs; before, Common\MsgHandler.cpp:113 (or similar) was always used.
2022-01-09 12:44:14 -08:00
Pokechu22
f55571ee5d
Common/MsgHandler: Fix PanicAlertFmtT not actually being translated
2022-01-09 12:44:14 -08:00
Pokechu22
2a5016c2f8
Common/MsgHandler: Remove use of lambda, as it breaks __func__
...
Specifically, this meant that __func__ in macros (namely ASSERT) would always be evaluate to "operator ()".
2022-01-09 12:44:14 -08:00
Pokechu22
558de04cfc
Common/Assert: Actually use the ASSERT_MSG's log type parameter
...
Since it was unused, nonexistent values were used in a few places. I've replaced them.
2022-01-09 12:44:14 -08:00
Pokechu22
bab3ff0157
Common/MsgHandler: Remove non-format variants of PanicAlert
...
They're no longer used.
2022-01-09 12:44:14 -08:00
Pokechu22
44e93e91d7
Common/Assert: Switch to fmt
2022-01-09 12:43:11 -08:00
Pokechu22
1c0ca09e6f
Common/Assert: Include the condition and function in the message
2022-01-09 12:43:11 -08:00