Commit Graph

9030 Commits

Author SHA1 Message Date
Pengfei Zhu
de3d7cf49f
kernel/thread: Change owner_process to std::weak_ptr (#5325)
* kernel/thread: Change owner_process to std::weak_ptr

Previously this leaked almost all kernel objects. In short, Threads own Processes which own HandleTables which own maps of Objects which include Threads.

Changing this to weak_ptr at least got the camera interfaces to destruct properly. Did not really check the other objects though, and I think there are probably more leaks.

* hle/kernel: Lock certain objects while deserializing

When deserializing other kernel objects, these objects (`MemoryRegion`s and `VMManager`s) can possibly get modified. To avoid inconsistent state caused by destructor side-effects, we may as well simply lock them until loading is fully completed.

* Fix silly typo

Somehow this didn't break?!
2020-11-15 12:59:45 +01:00
Hamish Milne
80c9f9abbb
Keep keyboard state independent of acquired buttons (#5255)
* Keep keyboard state independent of acquired buttons

* Review changes

* Address review comments

Co-authored-by: zhupengfei <zhupf321@gmail.com>
2020-11-15 12:58:12 +01:00
gal20
8b82a228f0
change result back to std::optional 2020-11-14 21:46:29 +02:00
gal20
5055212063
Update src/video_core/renderer_opengl/gl_shader_manager.cpp
Co-authored-by: Marshall Mohror <mohror64@gmail.com>
2020-11-14 21:45:30 +02:00
gal20
5683f86ed3
Remove pessimistic sanity check
This check creates false positive when using the flatpak runtime library
2020-11-14 20:06:25 +02:00
gal20
d870651df7
Enable fdk decoder in flatpak version 2020-11-14 20:02:36 +02:00
gal20
c4ac36b9b2
change ENABLE_FDK to option 2020-11-14 20:01:04 +02:00
gal20
03c002ee2a
make result not optional
This fixes crash when hardware shader is enabled in the flatpak version
2020-11-14 19:58:12 +02:00
liushuyu
bf03fb83ae
ci: fix mingw folder name (#5607) 2020-11-12 15:57:20 -08:00
Ben
045efe8268
Merge pull request #5596 from zhaobot/tx-update-20201101011705
Update translations (2020-11-01)
2020-11-12 10:03:32 +01:00
liushuyu
0133ebe0bc
Use GitHub Actions as CI service (#5602)
* ci: migrate to GitHub Actions

* ci: linux-mingw: use lief for parsing PE files

* ci: fix left-over issues with clang-format check

* ci: workaround libc++ issue on macOS

* appveyor: remove build scripts

* README: add GitHub Actions badge and ...

remove Travis CI and Appveyor badges
2020-11-12 06:21:35 +01:00
Lioncash
8f7ac4d8cc microprofile: Silence warning in headers
Silences a truncation warning by making the truncation explicit and
documenting the reason for it.
2020-11-11 01:02:10 +01:00
Lioncash
f2ccc8482f externals: Update fmt to 7.1.2
Updates to the latest bugfix release of fmt.

Co-Authored-By: LC <712067+lioncash@users.noreply.github.com>
2020-11-11 00:58:39 +01:00
tywald
2e0ce86c9e
Band-aid solution for 'Disk Shader Cache' (#5188)
* Enable 'Accurate Multiplication' by default.

* Move 'Disk Shader Cache' to the 'Advanced' tab

* Prevent enabling 'Disk Shader Cache' when 'Enable Hardware Shader' or 'Accurate Multiplication' is disabled.

* Do not load 'Disk Shader Cache' when 'Accurate Multiplication' is disabled.

* Add a tooltip for 'Disk Shader Cache'.
2020-11-06 10:07:59 -08:00
The Citra Community
652a87f210 Update translations (2020-11-01) 2020-11-01 01:17:46 +00:00
OneUp03
33d233fffa Add reverse_interlaced uniform flag 2020-10-21 12:27:02 -05:00
Vitor Kiguchi
1efe80bd10 Update cubeb and request a persistent stream session 2020-10-20 11:19:58 -03:00
OneUp03
a4f57e6910 Implement Reverse Interlaced 3D 2020-10-16 11:41:08 -05:00
Pengfei Zhu
1bb20571b1
Merge pull request #5574 from FearlessTobi/port-4733
Port yuzu-emu/yuzu#4733: "qt/game_list: Give GameListSearchField::KeyReleaseEater a parent"
2020-10-14 10:09:45 -05:00
Pengfei Zhu
1c8461fdea
Merge pull request #5570 from FearlessTobi/port-4698
Port yuzu-emu/yuzu#4698: "General: Make use of std::nullopt where applicable"
2020-10-04 06:01:51 -05:00
FearlessTobi
e12ee55faa qt/game_list: Give GameListSearchField::KeyReleaseEater a parent
This fixes a memory leak as KeyReleaseEater's destructor was never
called.

Co-Authored-By: Rodrigo Locatti <reinuseslisp@airmail.cc>
2020-10-04 05:14:49 +02:00
FearlessTobi
51d348b087 General: Make use of std::nullopt where applicable
Allows some implementations to avoid completely zeroing out the internal
buffer of the optional, and instead only set the validity byte within
the structure.

This also makes it consistent how we return empty optionals.

Co-Authored-By: LC <712067+lioncash@users.noreply.github.com>
2020-10-03 17:25:54 +02:00
Pengfei Zhu
aced133a3d
Merge pull request #5565 from scarabeusiv/patch-1
Fix compilation with boost 1.74.0
2020-09-30 22:03:01 -05:00
Weiyi Wang
1032b60d9b
Bump kernel version for 3DSX (#5446) 2020-10-01 09:54:42 +08:00
Vitor K
ff9c3b0531
Make sure some things are logged (#5515)
* sdl_impl.cpp: actually log the sdl error

* Log cpu slider and vsync
2020-10-01 09:23:37 +08:00
Vitor K
a26b466ac8
Use unique_ptr on all ui objects from .ui files (#5511)
* Forward declare ui and use unique_ptr

* ConfigureEnhancements: use unique_ptr for ui

* Use make_unique instead of new where applicable

* Move some of the ui includes that already used unique_ptr

* main.cpp: also make use of make_unique on Config

* Address review comments
2020-10-01 09:23:01 +08:00
zhupengfei
faf9162dbd
layered_fs: Make LoadFile and LoadDirectory less recursive
The deep recursion has caused issues in certain games with large numbers of files, especially with MSVC builds.

Previously the recursion depth is about equal to the number of files present. With this the depth should be about equal to the maximum depth of the directory structure of the RomFS.
2020-10-01 00:32:40 +08:00
Tomáš Chvátal
860ccf2a41
Fix compilation with boost 1.74.0
The serialization module was heavily changed and it now this header needs to be included as it is relied in many other parts of citra.
2020-09-30 11:29:06 +02:00
Tobias
a576eb633f
game_list_p: Mark some constants as constexpr (#5550)
Consistency change with how we mark constants in the rest of the
codebase.

Co-Authored-By: LC <712067+lioncash@users.noreply.github.com>

Co-authored-by: LC <712067+lioncash@users.noreply.github.com>
2020-09-19 18:42:36 +02:00
Tobias
017631e51b
Port yuzu-emu/yuzu#4587 and yuzu-emu/yuzu#4588: Fix data races (#5545)
Co-authored-by: ReinUsesLisp <reinuseslisp@airmail.cc>
2020-09-19 18:42:21 +02:00
Pengfei Zhu
df9e230d63
Merge pull request #5541 from zhaobot/tx-update-20200901011709
Update translations (2020-09-01)
2020-09-10 22:47:58 +08:00
Pengfei Zhu
df83449d21
Merge pull request #5549 from xperia64/squash_reg_warnings
Silence some noisy switch case warning
2020-09-10 22:26:45 +08:00
FearlessTobi
84c42bf581 game_list_p: Mark some constants as constexpr
Consistency change with how we mark constants in the rest of the
codebase.

Co-Authored-By: LC <712067+lioncash@users.noreply.github.com>
2020-09-09 17:06:15 +02:00
xperia64
1128f5f8ee Silence some noisy switch case warning 2020-09-06 16:22:48 -04:00
Marshall Mohror
e97ecdc2b8
Merge pull request #5544 from FearlessTobi/port-4461
Port yuzu-emu/yuzu#4461: "Fix thread naming on Linux, which limits names to 15 bytes."
2020-09-06 12:48:43 -05:00
Tobias
316a64961c
Port yuzu-emu/yuzu#4605: "bootmanager: Prevent unnecessary copies in TouchUpdateEvent()" (#5539)
The list of points is returned by const reference, so we don't need to
make a copy of every element in the list.

Co-authored-by: Lioncash <mathew1800@gmail.com>
2020-09-05 06:09:31 +02:00
comex
2ba35cab73 Fix thread naming on Linux, which limits names to 15 bytes.
- In `SetCurrentThreadName`, when on Linux, truncate to 15 bytes, as (at
  least on glibc) `pthread_set_name_np` will otherwise return `ERANGE` and
  do nothing.
- Also, add logging in case `pthread_set_name_np` returns an error
  anyway.  This is Linux-specific, as the Apple and BSD versions of
  `pthread_set_name_np return `void`.
- Change the name for CPU threads in multi-core mode from
  "yuzu:CoreCPUThread_N" (19 bytes) to "yuzu:CPUCore_N" (14 bytes) so it
  fits into the Linux limit.  Some other thread names are also cut off,
  but I didn't bother addressing them as you can guess them from the
  truncated versions.  For a CPU thread, truncation means you can't see
  which core it is!
2020-09-03 03:15:14 +02:00
Pengfei Zhu
6a77547bde
Minor frontend fixes to savestates (#5430) 2020-09-03 00:04:23 +02:00
Tobias
66846836bc
Port yuzu-emu/yuzu#4577: "common/assert: Make use of C++ attribute syntax" (#5529)
Co-authored-by: Lioncash <mathew1800@gmail.com>
2020-09-02 17:25:31 +02:00
Pengfei Zhu
2f01046f77
Merge pull request #5504 from xperia64/savestate_locale_fix
Don't translate save/load state hotkey text for the map
2020-09-01 22:42:17 +08:00
Pengfei Zhu
a39e0ea3b1
Merge pull request #5516 from encounter/qdropevent-fix
Avoid incorrect casts to QDropEvent
2020-09-01 22:27:37 +08:00
The Citra Community
5d4a3a2d46 Update translations (2020-09-01) 2020-09-01 01:17:46 +00:00
Tobias
f4be733355
citra_qt: Backport review comments from the yuzu translation PR (#5465) 2020-08-31 21:13:24 +02:00
Tobias
f6b543886c
Port yuzu-emu/yuzu#4528: "common: Make use of [[nodiscard]] where applicable" (#5535)
Co-authored-by: LC <712067+lioncash@users.noreply.github.com>
2020-08-31 21:06:16 +02:00
Marshall Mohror
e48110bdf4
Merge pull request #5512 from vitor-k/untangle-includes
Forward declare some classes and remove some unnecessary includes
2020-08-29 22:02:25 -05:00
Tobias
4135a12cb5
CMakeLists: Download Clang-Format from the Citra repo instead of yuzus (#5534)
This problem seems to have slipped through the cracks in the original PR. (https://github.com/citra-emu/citra/pull/3410)
2020-08-29 21:58:20 +02:00
Tobias
08e508e846
Port yuzu-emu/yuzu#4472: "perf_stats: Mark GetMeanFrametime() as const" (#5498)
The general pattern is to mark mutexes as mutable when it comes to
matters of constness, given the mutex acts as a transient member of a
data structure.

Co-Authored-By: LC <lioncash@users.noreply.github.com>
2020-08-29 17:29:20 +02:00
Schplee
a5fd11c213
Merge pull request #5500 from FearlessTobi/port-4464-4505
Port yuzu-emu/yuzu#4464 and yuzu-emu/yuzu#4505: Update clang format to version 10.0
2020-08-28 12:13:30 -07:00
Lioncash
1255d82b67 General: Tidy up clang-format warnings 2020-08-28 21:10:42 +02:00
Marshall Mohror
855dc9f0fc
Merge pull request #5518 from tywald/change-log-level
cubeb_sink: Change a log from INFO to DEBUG level
2020-08-28 13:54:36 -05:00