dolphin/Source/Core/InputCommon
Joshua Vandaële 5a6dc310c0
DITConfiguration: Prevent a crash if images fail to load
Recently came across a strange issue where Dolphin would hard crash in most games with this error:

```sh
/usr/include/c++/15.2.1/optional:1165: constexpr const _Tp* std::optional<_Tp>::operator->() const [with _Tp = InputCommon::ImagePixelData]: Assertion 'this->_M_is_engaged()' failed.
```

The culprit turned out to be accessing `host_key_image` which is an `std::optional` thay may return `std::nullopt`. I'm not sure why this issue started occuring for me since I've had no issue with my Dynamic Input Textures in the past? But this fixes a crash if the image fails to load.
2025-11-29 23:54:48 +01:00
..
ControllerEmu WiimoteEmu: Require IRPassthrough has any bound inputs to operate. Users get confused and mistakenly enable it. 2025-10-04 14:34:49 -05:00
ControllerInterface Common: Remove the string parameters from the HookableEvent interface. 2025-11-06 22:34:40 -06:00
ControlReference Source: Remove redundant lambda parameter lists 2025-06-14 10:19:31 +02:00
DynamicInputTextures DITConfiguration: Prevent a crash if images fail to load 2025-11-29 23:54:48 +01:00
CMakeLists.txt InputCommon: Update to use SDL3 and bump the SDL submodule in Externals to release-3.2.16. 2025-06-07 16:27:54 -05:00
DynamicInputTextureManager.cpp Core / DolphinQt / InputCommon: reduce the number disk writes when using DynamicInputTextures 2025-03-22 14:53:02 -05:00
DynamicInputTextureManager.h Common/IniFile: Move interface into Common namespace 2023-04-13 10:19:28 -04:00
GCAdapter.cpp Revert "Android/GCAdapter: Don't join current thread" 2025-07-27 11:21:04 +02:00
GCAdapter.h GCAdapter: Process pad state in read thread and other general cleanups. 2022-10-22 00:38:59 -05:00
GCPadStatus.h Fix all uninitialized variable warnings (C26495) 2021-10-13 12:32:16 -07:00
ImageOperations.cpp DITConfiguration: Prevent a crash if images fail to load 2025-11-29 23:54:48 +01:00
ImageOperations.h C++20: Synthesize operator!= From operator== 2024-10-10 20:23:55 -07:00
InputConfig.cpp Common: Remove the string parameters from the HookableEvent interface. 2025-11-06 22:34:40 -06:00
InputConfig.h InputCommon: Make ControllerInterface RegisterDevicesChangedCallback use Common::HookableEvent. 2025-11-05 17:12:56 -06:00
InputProfile.cpp Modernize std::set_intersection with ranges 2024-10-10 00:53:48 -07:00
InputProfile.h treewide: convert GPLv2+ license info to SPDX tags 2021-07-05 04:35:56 +02:00
KeyboardStatus.h treewide: convert GPLv2+ license info to SPDX tags 2021-07-05 04:35:56 +02:00