Age | Commit message (Collapse) | Author |
|
Resolves a few -Wmissing-initializer warnings.
|
|
- Fixes a shutdown crash when we try to submit telemetry if there is a service issue.
|
|
|
|
service: Update function tables
|
|
hle/kernel: Remove unused registered_core_threads to fix data races
|
|
common/fiber: Take shared_ptr<Fiber> by copy in YieldTo
|
|
tests: Fix data race in fibers test
|
|
video_core: Enforce -Werror=type-limits
|
|
Silence three warnings and make them errors to avoid introducing more in the future.
|
|
Silences one warning and avoids introducing more in the future.
|
|
YieldTo does not intend to modify the passed shared_ptrs.
Pass it by copy to keep a reference count while this function executes.
|
|
Previous to this commit, the tests were using operator[] from
unordered_map to query elements but this silently inserts empty elements
when they don't exist. If all threads were executed without concurrency,
this wouldn't be an issue, but the same unordered_map could be written
from two threads at the same time. This is a data race and makes some
previously inserted elements invisible for a short period of time,
causing them to insert and return an empty element. This default
constructed element (a zero) was used to index an array of fibers that
asserted when one of them was nullptr, shutting the test session off.
To address this issue, lock on thread id reads and writes. This could be
a shared mutex to allow concurrent reads, but the definition of
std::this_thread::get_id is fuzzy when using non-standard techniques
like fibers. I opted to use a standard mutex.
While we are at it, fix the included headers.
|
|
Updates function tables according to info on SwitchBrew.
|
|
* A regression was in 39c8d18 and token verification function was
broken.
* The reason being `httplib` now requires OpenSSL 1.1+ API while
LibreSSL 2.x provided OpenSSL 1.0 compatible API.
* The bundled LibreSSL has been updated to 3.2.2 so it now provides
OpenSSL 1.1 compatible API now.
* Also the path hint has been added so that it will find the correct
path to the CA certs on *nix systems.
* An option is provided so that *nix system distributions/providers can
use their own SSL implementations when compiling Yuzu/Citra to
(hopefully) complies with their maintenance guidelines.
* LURLParse is also removed since `httplib` can handle
`scheme:host:port` string itself now.
|
|
- In general, this is now the preferred settings for most games.
# Conflicts:
# src/yuzu/configuration/config.cpp
|
|
video_core: NVDEC Implementation
|
|
This member was only used on asserts and it triggered data races.
Remove it to fix them.
|
|
core: cpu_manager: Add missing call to MicroProfileOnThreadExit().
|
|
hle: services: TimeZoneContentManager: This can be made explicit.
|
|
This commit aims to implement the NVDEC (Nvidia Decoder) functionality, with video frame decoding being handled by the FFmpeg library.
The process begins with Ioctl commands being sent to the NVDEC and VIC (Video Image Composer) emulated devices. These allocate the necessary GPU buffers for the frame data, along with providing information on the incoming video data. A Submit command then signals the GPU to process and decode the frame data.
To decode the frame, the respective codec's header must be manually composed from the information provided by NVDEC, then sent with the raw frame data to the ffmpeg library.
Currently, H264 and VP9 are supported, with VP9 having some minor artifacting issues related mainly to the reference frame composition in its uncompressed header.
Async GPU is not properly implemented at the moment.
Co-Authored-By: David <25727384+ogniK5377@users.noreply.github.com>
|
|
controller: Pass ControllerParameters by reference in ReconfigureControllers()
|
|
Prevents unnecessary copies and heap reallocations from occurring.
|
|
|
|
- Fixes an occasional crash when trying to launch subsequent games.
|
|
controller: Convert led_patterns integer literals to bool literals
|
|
general: Use template deduction guides for lock_guard
|
|
Same behavior, less code.
|
|
'bool' isn't always guaranteed to be the same size as an int, so this
can technically cause truncation warnings if we support other platforms.
|
|
Resolves a warning where not all control paths return a value.
|
|
main/profile_select: Don't ask for profile when there's only one.
|
|
sdl_impl: Fix controller reconnection issues
|
|
video_core: Fix instances where msbuild always regenerated host shaders
|
|
service: time: Update current time with changes to RTC setting.
|
|
|
|
Should finally resolve building with clang.
|
|
It turns out that after a controller is disconnected, there is a chance that events from the previous controller are sent/processed after it has been disconnected.
This causes the previously disconnected controller to reappear as connected due to GetSDLJoystickBySDLID() emplacing this controller back to the map.
Fix this by only returning an SDLJoystick if and only if it exists in the map.
|
|
video_core: Conditially activate relevant compiler warnings
|
|
Resolves the clang build issue in a more unintrusive way.
|
|
|
|
These compiler flags aren't shared with clang, so specifying these flags
unconditionally can lead to a bit of warning spam.
While we're in the area, we can also enable -Wunused-but-set-parameter
given this is almost always a bug.
|
|
This slipped through the cracks due to another change being merged
before the compiler flag changes.
|
|
gl_arb_decompiler: Implement robust buffer operations
|
|
core: Fix clang build
|
|
nifm: GetAppletInfo stub
|
|
configure_input_player: Fix modifier buttons
|
|
sdl_impl: Erase the SDLJoystick entry after removing a controller
|
|
Fix them for real this time, now they finally work.
|
|
This emulates the behavior we get on GLSL with regular SSBOs with a
pointer + length pair. It aims to be consistent with the crashes we
might get.
Out of bounds stores are ignored. Atomics are ignored and return zero.
Reads return zero.
|
|
|
|
Fixes crash for Catherine Full Body
|