diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/common/logging/backend.cpp | 18 | ||||
-rw-r--r-- | src/common/logging/backend.h | 4 | ||||
-rw-r--r-- | src/core/hle/service/glue/arp.cpp | 10 | ||||
-rw-r--r-- | src/core/hle/service/hid/controllers/npad.cpp | 2 | ||||
-rw-r--r-- | src/core/hle/service/hid/controllers/npad.h | 1 | ||||
-rw-r--r-- | src/core/hle/service/set/set.cpp | 3 | ||||
-rw-r--r-- | src/core/hle/service/time/time_zone_service.cpp | 6 | ||||
-rw-r--r-- | src/core/hle/service/vi/vi.cpp | 8 | ||||
-rw-r--r-- | src/input_common/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/input_common/sdl/sdl_impl.cpp | 10 | ||||
-rw-r--r-- | src/video_core/texture_cache/util.cpp | 2 | ||||
-rw-r--r-- | src/yuzu_cmd/config.cpp | 10 | ||||
-rw-r--r-- | src/yuzu_cmd/emu_window/emu_window_sdl2.cpp | 9 | ||||
-rw-r--r-- | src/yuzu_cmd/emu_window/emu_window_sdl2_gl.cpp | 10 | ||||
-rw-r--r-- | src/yuzu_cmd/emu_window/emu_window_sdl2_vk.cpp | 8 |
15 files changed, 79 insertions, 24 deletions
diff --git a/src/common/logging/backend.cpp b/src/common/logging/backend.cpp index bc82905c0..96efa977d 100644 --- a/src/common/logging/backend.cpp +++ b/src/common/logging/backend.cpp @@ -56,10 +56,10 @@ public: void RemoveBackend(std::string_view backend_name) { std::lock_guard lock{writing_mutex}; - const auto it = - std::remove_if(backends.begin(), backends.end(), - [&backend_name](const auto& i) { return backend_name == i->GetName(); }); - backends.erase(it, backends.end()); + + std::erase_if(backends, [&backend_name](const auto& backend) { + return backend_name == backend->GetName(); + }); } const Filter& GetGlobalFilter() const { @@ -148,12 +148,14 @@ void ColorConsoleBackend::Write(const Entry& entry) { PrintColoredMessage(entry); } -FileBackend::FileBackend(const std::string& filename) : bytes_written(0) { - if (FS::Exists(filename + ".old.txt")) { - FS::Delete(filename + ".old.txt"); +FileBackend::FileBackend(const std::string& filename) { + const auto old_filename = filename + ".old.txt"; + + if (FS::Exists(old_filename)) { + FS::Delete(old_filename); } if (FS::Exists(filename)) { - FS::Rename(filename, filename + ".old.txt"); + FS::Rename(filename, old_filename); } // _SH_DENYWR allows read only access to the file for other programs. diff --git a/src/common/logging/backend.h b/src/common/logging/backend.h index 84a544ea4..9dd2589c3 100644 --- a/src/common/logging/backend.h +++ b/src/common/logging/backend.h @@ -94,8 +94,8 @@ public: void Write(const Entry& entry) override; private: - Common::FS::IOFile file; - std::size_t bytes_written; + FS::IOFile file; + std::size_t bytes_written = 0; }; /** diff --git a/src/core/hle/service/glue/arp.cpp b/src/core/hle/service/glue/arp.cpp index 322125135..7b1c6677c 100644 --- a/src/core/hle/service/glue/arp.cpp +++ b/src/core/hle/service/glue/arp.cpp @@ -157,9 +157,9 @@ class IRegistrar final : public ServiceFramework<IRegistrar> { friend class ARP_W; public: - explicit IRegistrar( - Core::System& system_, - std::function<ResultCode(u64, ApplicationLaunchProperty, std::vector<u8>)> issuer) + using IssuerFn = std::function<ResultCode(u64, ApplicationLaunchProperty, std::vector<u8>)>; + + explicit IRegistrar(Core::System& system_, IssuerFn&& issuer) : ServiceFramework{system_, "IRegistrar"}, issue_process_id{std::move(issuer)} { // clang-format off static const FunctionInfo functions[] = { @@ -238,9 +238,9 @@ private: rb.Push(RESULT_SUCCESS); } - std::function<ResultCode(u64, ApplicationLaunchProperty, std::vector<u8>)> issue_process_id; + IssuerFn issue_process_id; bool issued = false; - ApplicationLaunchProperty launch; + ApplicationLaunchProperty launch{}; std::vector<u8> control; }; diff --git a/src/core/hle/service/hid/controllers/npad.cpp b/src/core/hle/service/hid/controllers/npad.cpp index 783386fcf..113a41254 100644 --- a/src/core/hle/service/hid/controllers/npad.cpp +++ b/src/core/hle/service/hid/controllers/npad.cpp @@ -147,7 +147,7 @@ bool Controller_NPad::IsDeviceHandleValid(const DeviceHandle& device_handle) { device_handle.device_index < DeviceIndex::MaxDeviceIndex; } -Controller_NPad::Controller_NPad(Core::System& system) : ControllerBase(system), system(system) { +Controller_NPad::Controller_NPad(Core::System& system) : ControllerBase(system) { latest_vibration_values.fill({DEFAULT_VIBRATION_VALUE, DEFAULT_VIBRATION_VALUE}); } diff --git a/src/core/hle/service/hid/controllers/npad.h b/src/core/hle/service/hid/controllers/npad.h index 14d0ac067..c3b07bd41 100644 --- a/src/core/hle/service/hid/controllers/npad.h +++ b/src/core/hle/service/hid/controllers/npad.h @@ -587,6 +587,5 @@ private: std::array<ControllerPad, 10> npad_pad_states{}; std::array<TriggerState, 10> npad_trigger_states{}; bool is_in_lr_assignment_mode{false}; - Core::System& system; }; } // namespace Service::HID diff --git a/src/core/hle/service/set/set.cpp b/src/core/hle/service/set/set.cpp index bc7dc776f..fbdc4793d 100644 --- a/src/core/hle/service/set/set.cpp +++ b/src/core/hle/service/set/set.cpp @@ -104,9 +104,10 @@ void GetKeyCodeMapImpl(Kernel::HLERequestContext& ctx) { layout = key_code->second; } + ctx.WriteBuffer(layout); + IPC::ResponseBuilder rb{ctx, 2}; rb.Push(RESULT_SUCCESS); - ctx.WriteBuffer(layout); } } // Anonymous namespace diff --git a/src/core/hle/service/time/time_zone_service.cpp b/src/core/hle/service/time/time_zone_service.cpp index 3117627cf..19d7a1a0c 100644 --- a/src/core/hle/service/time/time_zone_service.cpp +++ b/src/core/hle/service/time/time_zone_service.cpp @@ -140,11 +140,12 @@ void ITimeZoneService::ToPosixTime(Kernel::HLERequestContext& ctx) { return; } + ctx.WriteBuffer(posix_time); + // TODO(bunnei): Handle multiple times IPC::ResponseBuilder rb{ctx, 3}; rb.Push(RESULT_SUCCESS); rb.PushRaw<u32>(1); // Number of times we're returning - ctx.WriteBuffer(posix_time); } void ITimeZoneService::ToPosixTimeWithMyRule(Kernel::HLERequestContext& ctx) { @@ -163,10 +164,11 @@ void ITimeZoneService::ToPosixTimeWithMyRule(Kernel::HLERequestContext& ctx) { return; } + ctx.WriteBuffer(posix_time); + IPC::ResponseBuilder rb{ctx, 3}; rb.Push(RESULT_SUCCESS); rb.PushRaw<u32>(1); // Number of times we're returning - ctx.WriteBuffer(posix_time); } } // namespace Service::Time diff --git a/src/core/hle/service/vi/vi.cpp b/src/core/hle/service/vi/vi.cpp index 348360b51..7ae07d072 100644 --- a/src/core/hle/service/vi/vi.cpp +++ b/src/core/hle/service/vi/vi.cpp @@ -1129,9 +1129,11 @@ private: } NativeWindow native_window{*buffer_queue_id}; + const auto buffer_size = ctx.WriteBuffer(native_window.Serialize()); + IPC::ResponseBuilder rb{ctx, 4}; rb.Push(RESULT_SUCCESS); - rb.Push<u64>(ctx.WriteBuffer(native_window.Serialize())); + rb.Push<u64>(buffer_size); } void CloseLayer(Kernel::HLERequestContext& ctx) { @@ -1173,10 +1175,12 @@ private: } NativeWindow native_window{*buffer_queue_id}; + const auto buffer_size = ctx.WriteBuffer(native_window.Serialize()); + IPC::ResponseBuilder rb{ctx, 6}; rb.Push(RESULT_SUCCESS); rb.Push(*layer_id); - rb.Push<u64>(ctx.WriteBuffer(native_window.Serialize())); + rb.Push<u64>(buffer_size); } void DestroyStrayLayer(Kernel::HLERequestContext& ctx) { diff --git a/src/input_common/CMakeLists.txt b/src/input_common/CMakeLists.txt index c3cfe7efc..de53e1fda 100644 --- a/src/input_common/CMakeLists.txt +++ b/src/input_common/CMakeLists.txt @@ -62,7 +62,7 @@ else() ) endif() -if(SDL2_FOUND) +if (ENABLE_SDL2) target_sources(input_common PRIVATE sdl/sdl_impl.cpp sdl/sdl_impl.h diff --git a/src/input_common/sdl/sdl_impl.cpp b/src/input_common/sdl/sdl_impl.cpp index 9418e78fa..f682a6db4 100644 --- a/src/input_common/sdl/sdl_impl.cpp +++ b/src/input_common/sdl/sdl_impl.cpp @@ -17,7 +17,17 @@ #include <unordered_map> #include <utility> #include <vector> + +// Ignore -Wimplicit-fallthrough due to https://github.com/libsdl-org/SDL/issues/4307 +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wimplicit-fallthrough" +#endif #include <SDL.h> +#ifdef __clang__ +#pragma clang diagnostic pop +#endif + #include "common/logging/log.h" #include "common/param_package.h" #include "common/settings_input.h" diff --git a/src/video_core/texture_cache/util.cpp b/src/video_core/texture_cache/util.cpp index 0ab297413..8c4a5523b 100644 --- a/src/video_core/texture_cache/util.cpp +++ b/src/video_core/texture_cache/util.cpp @@ -1139,7 +1139,7 @@ void DeduceBlitImages(ImageInfo& dst_info, ImageInfo& src_info, const ImageBase* dst_info.format = src->info.format; } if (!src && dst && GetFormatType(dst->info.format) != SurfaceType::ColorTexture) { - src_info.format = src->info.format; + src_info.format = dst->info.format; } } diff --git a/src/yuzu_cmd/config.cpp b/src/yuzu_cmd/config.cpp index 2f984d1b8..7e1d5f379 100644 --- a/src/yuzu_cmd/config.cpp +++ b/src/yuzu_cmd/config.cpp @@ -4,7 +4,17 @@ #include <memory> #include <sstream> + +// Ignore -Wimplicit-fallthrough due to https://github.com/libsdl-org/SDL/issues/4307 +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wimplicit-fallthrough" +#endif #include <SDL.h> +#ifdef __clang__ +#pragma clang diagnostic pop +#endif + #include <inih/cpp/INIReader.h> #include "common/file_util.h" #include "common/logging/log.h" diff --git a/src/yuzu_cmd/emu_window/emu_window_sdl2.cpp b/src/yuzu_cmd/emu_window/emu_window_sdl2.cpp index ce8b7c218..3bb555a6b 100644 --- a/src/yuzu_cmd/emu_window/emu_window_sdl2.cpp +++ b/src/yuzu_cmd/emu_window/emu_window_sdl2.cpp @@ -2,7 +2,16 @@ // Licensed under GPLv2 or any later version // Refer to the license.txt file included. +// Ignore -Wimplicit-fallthrough due to https://github.com/libsdl-org/SDL/issues/4307 +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wimplicit-fallthrough" +#endif #include <SDL.h> +#ifdef __clang__ +#pragma clang diagnostic pop +#endif + #include "common/logging/log.h" #include "common/scm_rev.h" #include "core/core.h" diff --git a/src/yuzu_cmd/emu_window/emu_window_sdl2_gl.cpp b/src/yuzu_cmd/emu_window/emu_window_sdl2_gl.cpp index a765fa7b3..3c49a300b 100644 --- a/src/yuzu_cmd/emu_window/emu_window_sdl2_gl.cpp +++ b/src/yuzu_cmd/emu_window/emu_window_sdl2_gl.cpp @@ -5,8 +5,18 @@ #include <algorithm> #include <cstdlib> #include <string> + #define SDL_MAIN_HANDLED +// Ignore -Wimplicit-fallthrough due to https://github.com/libsdl-org/SDL/issues/4307 +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wimplicit-fallthrough" +#endif #include <SDL.h> +#ifdef __clang__ +#pragma clang diagnostic pop +#endif + #include <fmt/format.h> #include <glad/glad.h> #include "common/assert.h" diff --git a/src/yuzu_cmd/emu_window/emu_window_sdl2_vk.cpp b/src/yuzu_cmd/emu_window/emu_window_sdl2_vk.cpp index dfd53e285..3401ad4b4 100644 --- a/src/yuzu_cmd/emu_window/emu_window_sdl2_vk.cpp +++ b/src/yuzu_cmd/emu_window/emu_window_sdl2_vk.cpp @@ -16,7 +16,15 @@ #include "yuzu_cmd/emu_window/emu_window_sdl2_vk.h" // Include these late to avoid polluting everything with Xlib macros +// Ignore -Wimplicit-fallthrough due to https://github.com/libsdl-org/SDL/issues/4307 +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wimplicit-fallthrough" +#endif #include <SDL.h> +#ifdef __clang__ +#pragma clang diagnostic pop +#endif #include <SDL_syswm.h> EmuWindow_SDL2_VK::EmuWindow_SDL2_VK(InputCommon::InputSubsystem* input_subsystem) |