From eb335f51ca15774330219a9c65778db39cdebac1 Mon Sep 17 00:00:00 2001 From: Lioncash Date: Mon, 18 Mar 2019 11:32:49 -0400 Subject: [PATCH] input_common/sdl: Correct return values within implementations of GetPollers() In both cases, we weren't actually returning anything, which is undefined behavior. --- src/input_common/sdl/sdl.h | 4 +++- src/input_common/sdl/sdl_impl.cpp | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/input_common/sdl/sdl.h b/src/input_common/sdl/sdl.h index 940ca7f1ba..d7f24c68a7 100644 --- a/src/input_common/sdl/sdl.h +++ b/src/input_common/sdl/sdl.h @@ -34,7 +34,9 @@ public: class NullState : public State { public: - Pollers GetPollers(Polling::DeviceType type) override {} + Pollers GetPollers(Polling::DeviceType type) override { + return {}; + } }; std::unique_ptr Init(); diff --git a/src/input_common/sdl/sdl_impl.cpp b/src/input_common/sdl/sdl_impl.cpp index f44a4a3321..b132d77f5d 100644 --- a/src/input_common/sdl/sdl_impl.cpp +++ b/src/input_common/sdl/sdl_impl.cpp @@ -652,6 +652,7 @@ private: SDLState::Pollers SDLState::GetPollers(InputCommon::Polling::DeviceType type) { Pollers pollers; + switch (type) { case InputCommon::Polling::DeviceType::Analog: pollers.emplace_back(std::make_unique(*this)); @@ -659,8 +660,9 @@ SDLState::Pollers SDLState::GetPollers(InputCommon::Polling::DeviceType type) { case InputCommon::Polling::DeviceType::Button: pollers.emplace_back(std::make_unique(*this)); break; - return pollers; } + + return pollers; } } // namespace SDL