Léo Lam
7c46497f04
Fix a race condition when shutting down audio stream
...
The main EmuThread (in Core) is responsible for both initialising the
audio stream and shutting it down properly.
When the core is shutting down (when state is State::PowerDown), it is
possible that the CPU or CPU-GPU thread and the UI thread will both
try to stop the audio stream at the same time, which is an issue
because some audio backends such as cubeb are not thread-safe.
This commit prevents the race from ever happening in the first place
by removing the call to AudioCommon::SetSoundStreamRunning from
CPU::RunAdjacentSystems, which is actually completely unnecessary when
shutting down because Core::EmuThread is going to stop the stream and
perform more cleanup anyway.
Should fix https://bugs.dolphin-emu.org/issues/11722
2019-05-11 16:36:42 +02:00
Léo Lam
a0a0a68801
Merge pull request #7972 from Miksel12/cubeb-standard
...
Set Cubeb as default on Windows
2019-05-11 14:31:42 +02:00
Miksel12
ee8226cc1b
Set Cubeb as default on Windows
...
Cubeb and Xaudio2 are identical in features while Cubeb has lower
latency and is still actively being worked on.
2019-05-11 14:22:03 +02:00
Léo Lam
2f89a50318
Merge pull request #7778 from jordan-woyak/wheel-accel-brake
...
SI/GCSteeringWheel: Allow simultaneous use of accelerator and brake.
2019-05-11 12:24:19 +02:00
Léo Lam
57743637de
Merge pull request #8088 from Pokechu22/modal-control-mapping
...
Allow interacting with the render window while configuring controllers
2019-05-11 10:45:28 +02:00
Léo Lam
e35ccd5a9a
Merge pull request #8091 from leoetlino/traversal-chrono
...
TraversalServer: use C++ <chrono> instead of gettimeofday
2019-05-11 10:44:49 +02:00
Anthony
3ab06dcd02
Merge pull request #8016 from jordan-woyak/emu-wm-ir-rename
...
WiimoteEmu/DolphinQt: Rename "IR" to "Point" and eliminate redundant Forward/Backward actions.
2019-05-10 19:16:40 -07:00
Anthony
46561cc242
Merge pull request #8092 from leoetlino/double-switcheroo
...
Core/AddressSpace & Qt/Debugger: Fix parameter order mixup
2019-05-10 19:11:01 -07:00
Anthony
e66d25312e
Merge pull request #8090 from stenzek/video-buffer-reset
...
CommandProcessor: Don't reset the video buffer when FIFO distance is changed
2019-05-10 19:10:39 -07:00
Léo Lam
e66547d6e5
Qt: Fix AddressSpace::WriteXXX parameter order mixup
2019-05-11 00:16:27 +02:00
Léo Lam
d00711b34f
AddressSpace: Fix PowerPC::HostWrite_XXX parameter order mixup
2019-05-11 00:15:15 +02:00
Jordan Woyak
f74f49383c
SI/GCSteeringWheel: Allow simultaneous use of accelerator and brake.
2019-05-10 17:11:43 -05:00
Michael M
916a97b869
TraversalServer: use C++ <chrono> instead of gettimeofday
2019-05-10 21:33:26 +02:00
Pokechu22
7c80fcde53
Allow interacting with the render window while configuring controllers
...
WindowModal allows alt+tabing to the render window, but prohibits interaction
with parent windows (controller settings window and the main dolphin window).
2019-05-10 11:27:36 -07:00
Léo Lam
e7bc86881d
Merge pull request #8056 from JosJuice/more-enums-to-constexpr
...
Turn more enum constants into constexpr
2019-05-10 18:52:52 +02:00
Stenzek
3e29fdb4a7
CommandProcessor: Don't reset the video buffer when FIFO distance is changed
...
This prevents partially-processed commands from being lost when switching buffers.
2019-05-11 00:31:37 +10:00
Léo Lam
672e8d78c6
Merge pull request #7994 from faxx1080/qt_adddebuglog
...
DolphinQt: Add debug log option in GUI for debug builds
2019-05-10 15:33:33 +02:00
JosJuice
8e2277e1f2
Turn more enum constants into constexpr
...
https://bugs.dolphin-emu.org/issues/11692#note-7
2019-05-10 15:04:16 +02:00
Léo Lam
123bbbca2c
Merge pull request #8073 from vladfi1/re-frame-mw
...
Bring back MemoryWatcher, but without CoreTiming
2019-05-10 14:55:27 +02:00
Connor McLaughlin
d60b0c6b37
Merge pull request #8089 from weihuoya/minor-fx
...
Some minor fix
2019-05-09 23:38:53 +10:00
weihuoya
e98f43d2af
bbox minor fx
2019-05-09 17:30:17 +08:00
Jordan Woyak
374585f128
WiimoteEmu/DolphinQt: Rename "IR" to "Point" and eliminate redundant Forward/Backward mappings.
2019-05-08 20:27:41 -05:00
Léo Lam
1030dec340
DolphinQt: Use LogTypes::LOG_LEVELS instead of magic numbers
...
Also gets rid of two unnecessary casts.
2019-05-08 14:54:30 +02:00
Frank
57c64e57ef
DolphinQt: Add debug log option in GUI for debug builds
2019-05-08 14:47:34 +02:00
Vlad Firoiu
239af3cdf9
Step MemoryWatcher at end of each video frame.
2019-05-08 11:20:59 +01:00
Léo Lam
5ca9933307
Merge pull request #8072 from Craftyawesome/r3m-ini
...
Fix loading screens on Metroid Prime Trilogy
2019-05-08 11:18:03 +02:00
Léo Lam
6607d9512f
Merge pull request #8081 from jordan-woyak/structured-binding
...
DolphinQt: Use a structured binding.
2019-05-08 10:37:15 +02:00
Léo Lam
a2e4b722f9
Merge pull request #8080 from jordan-woyak/drawsome-tablet
...
WiimoteEmu: Implement "Drawsome" tablet.
2019-05-08 10:20:54 +02:00
Jordan Woyak
0de6b5f7fa
WiimoteEmu: Implement "Drawsome" tablet.
2019-05-07 18:07:24 -05:00
JosJuice
91f5d577cc
Merge pull request #8084 from leoetlino/wiisave-sign
...
WiiSave: Fix save signing
2019-05-07 14:43:50 +02:00
Léo Lam
2740ff9a9d
WiiSave: Fix save signing
...
The system menu is passing the SHA1 hash of the save data to ES
to sign, not the save data itself.
Fixes save import in the System Menu for saves that were exported
by Dolphin.
2019-05-07 01:09:48 +02:00
Léo Lam
6cc1e7cfdb
Merge pull request #8054 from jordan-woyak/emu-wm-determinism-check
...
WiimoteEmu: Report game quirk on direct read of EXT/IR input.
2019-05-06 23:20:17 +02:00
Jordan Woyak
f055d37346
WiimoteEmu: Add game quirk report for reading of EXT/IR input directly, which will fail with TAS/NetPlay.
2019-05-06 15:36:05 -05:00
Jordan Woyak
6ebd35d511
DolphinQt: Use a structured binding.
2019-05-06 15:33:57 -05:00
Léo Lam
6f6c7e5df0
Merge pull request #8083 from Techjar/clang-7-format
...
Reformat repo to clang-format 7.0 rules
2019-05-06 21:42:07 +02:00
Techjar
ff972e3673
Reformat repo to clang-format 7.0 rules
2019-05-06 18:48:04 +00:00
Léo Lam
d347867f2e
Merge pull request #8082 from Techjar/update-lint
...
Update lint.sh to clang-format 7.0
2019-05-06 20:46:28 +02:00
Techjar
a72f56f558
Update lint.sh to clang-format 7.0
2019-05-05 19:25:42 -04:00
Vlad Firoiu
f4d950f4e2
Revert "Core: Remove MemoryWatcher"
...
This reverts commit 0c02e77eee
.
2019-05-05 21:43:45 +01:00
Mat M
7aa591bbd8
Merge pull request #8079 from Qyriad/docs/contributing-use-c++17
...
Document that the codebase now uses C++17 in Contributing.md
2019-05-05 16:14:38 -04:00
Mikaela Szekely
0c38943ee1
Document that the codebase uses C++17 in Contributing.md
2019-05-05 10:03:39 -06:00
Léo Lam
4fdd403562
Merge pull request #8078 from JosJuice/fallthrough
...
Use [[fallthrough]] in DiscExtractor
2019-05-05 10:44:10 +02:00
JosJuice
bb1ed46753
Use [[fallthrough]] in DiscExtractor
...
This was missed in PR 6273 because the fallthrough was added to
DiscExtractor after that PR was created.
2019-05-05 10:35:45 +02:00
Léo Lam
5d52b6ff09
Merge pull request #6273 from leoetlino/c++17
...
Enable C++17
2019-05-05 10:24:18 +02:00
Léo Lam
9133e8f1be
Require CMake 3.10 and use CMAKE_CXX_STANDARD
...
Removes the need to add -std= flags manually. CMake 3.10 is available
in Ubuntu 18.04, which is the oldest LTS version we support.
2019-05-05 00:13:13 +02:00
Léo Lam
ab9ece9bca
Replace MathUtil::Clamp with std::clamp
2019-05-04 23:12:17 +02:00
Léo Lam
6f84984b7b
Use attribute [[fallthrough]]
2019-05-04 23:04:18 +02:00
Léo Lam
cb168f22d6
Replace custom UNUSED macro with [[maybe_unused]]
2019-05-04 23:04:18 +02:00
Léo Lam
c40ae4508d
Bump minimum GCC version to 7.0
...
GCC 7.0 is the first version with full support for C++17.
Also fixes some bugs like https://stackoverflow.com/questions/32097759
2019-05-04 23:04:18 +02:00
Léo Lam
04c8201c32
Enable C++17
...
All supported platforms now have easy access to a compiler with C++17
support.
C++17 potentially allows for some nice cleanups and removes the need
for standard library backports (optional/variant).
See discussion at https://dolp.in/pr6264#discussion_r158134178
2019-05-04 23:04:18 +02:00