Age | Commit message (Collapse) | Author |
|
general: Silence -Wshadow{,-uncaptured-local} warnings
|
|
Mark SetIdleTimeDetectionExtension logging as debug
|
|
|
|
API changes necessitate an update here.
|
|
|
|
These occur in the latest commits in LLVM Clang.
|
|
|
|
network: Fix compilation with ENABLE_WEB_SERVICE=OFF
|
|
|
|
|
|
|
|
|
|
|
|
cmake: allow using system VMA library
|
|
android: fix links to re-dumping guides
|
|
Implement SSL service
|
|
|
|
|
|
There are still some other issues not addressed here, but it's a start.
Workarounds for false-positive reports:
- `RasterizerAccelerated`: Put a gigantic array behind a `unique_ptr`,
because UBSan has a [hardcoded limit](https://stackoverflow.com/questions/64531383/c-runtime-error-using-fsanitize-undefined-object-has-a-possibly-invalid-vp)
of how big it thinks objects can be, specifically when dealing with
offset-to-top values used with multiple inheritance. Hopefully this
doesn't have a performance impact.
- `QueryCacheBase::QueryCacheBase`: Avoid an operation that UBSan thinks
is UB even though it at least arguably isn't. See the link in the
comment for more information.
Fixes for correct reports:
- `PageTable`, `Memory`: Use `uintptr_t` values instead of pointers to
avoid UB from pointer overflow (when pointer arithmetic wraps around
the address space).
- `KScheduler::Reload`: `thread->GetOwnerProcess()` can be `nullptr`;
avoid calling methods on it in this case. (The existing code returns
a garbage reference to a field, which is then passed into
`LoadWatchpointArray`, and apparently it's never used, so it's
harmless in practice but still triggers UBSan.)
- `KAutoObject::Close`: This function calls `this->Destroy()`, which
overwrites the beginning of the object with junk (specifically a free
list pointer). Then it calls `this->UnregisterWithKernel()`. UBSan
complains about a type mismatch because the vtable has been
overwritten, and I believe this is indeed UB. `UnregisterWithKernel`
also loads `m_kernel` from the 'freed' object, which seems to be
technically safe (the overwriting doesn't extend as far as that
field), but seems dubious. Switch to a `static` method and load
`m_kernel` in advance.
|
|
|
|
|
|
|
|
|
|
|
|
Protects against invalid hour offsets during transitions to years
following leap years.
|
|
|
|
k_server_session: translate special header for non-HLE requests
|
|
android: Visualize disabled home options
|
|
Allow for displaying options in the home options that are disabled with messages that explain why they are disabled.
This includes reasoning for the GPU driver installation button.
|
|
Use spans over guest memory where possible instead of copying data
|
|
input_common: set `SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS` to 0
|
|
This path always results in Etc/UTC on MinGW, which often is not
close to the local time zone.
|
|
MinGW's strftime implementation does not work and cannot be used to
determine the time zone. Besides that, the string operations are
actually unnecessary since we can get the offset from
std::localtime.
Compare localtime to gmtime to find the zone offset on all platforms.
|
|
android: Don't prompt to save user data on uninstall
|
|
ci/mingw: Remove pefile installation step
|
|
settings: Catch runtime error from STL
|
|
While this can be convenient in some scenarios, this will be a big problem for users trying to sideload different APK versions. If they forget the last one they had installed, they could have problems installing a new copy.
|
|
arm_interface: correct breakpoint rewind condition
|
|
This is unnecessary here: pefile is already installed on the container.
This step also causes issues in coming changes to the container.
|
|
|
|
This function throws a runtime error we can catch on old Windows 10
installs, so we can catch it here rather than disable this path for
everybody.
|
|
settings: Disable C++20 time zone path on MSVC
|
|
|
|
github: Remove dependence on chocolatey for buildcache
|
|
This allows to share the mappings between Nintendo and non-Nintendo controllers.
Breaks the controller configuration for existing users who are using a Nintendo controller.
(Documentation of the hint https://github.com/libsdl-org/SDL/blob/92b3c53c92971e685254fd89f89ce6bde8cea60e/include/SDL_hints.h#L512-L532)
|
|
|
|
|
|
ci: Download and install Vulkan SDK directly from LunarG
|
|
Latest as of this commit
|
|
|