Simple DirectMedia Layer https://libsdl.org
Find a file
Christian Semmler 581c18f693 emscripten: Fix crash on Safari when probing gamepad rumble support
Safari's older Gamepad API exposes `vibrationActuator` with `playEffect`
and `reset` but no `effects` enumeration array. The probe added in
651136ac7 dereferences `vibrationActuator['effects']['includes']`
unconditionally, throwing `TypeError: undefined is not an object` on
every Safari client that opens a connected gamepad. Add the missing
`['effects']` null check so the probe returns false on Safari instead
of aborting.

(cherry picked from commit db7ac820f9)
2026-05-16 15:48:06 -07:00
.github
android-project
build-scripts
cmake
docs
examples
include
src emscripten: Fix crash on Safari when probing gamepad rumble support 2026-05-16 15:48:06 -07:00
test
VisualC
VisualC-GDK
wayland-protocols
Xcode
.clang-format
.clang-tidy
.editorconfig
.gitignore
.wikiheaders-options
AGENTS.md
Android.mk
BUGS.txt
CLAUDE.md
CMakeLists.txt
CREDITS.md
INSTALL.md
LICENSE.txt
README.md
WhatsNew.txt

Simple DirectMedia Layer (SDL for short) is a cross-platform library designed to make it easy to write multi-media software, such as games and emulators.

You can find the latest release and additional information at: https://www.libsdl.org/

Installation instructions and a quick introduction is available in INSTALL.md

This library is distributed under the terms of the zlib license, available in LICENSE.txt.

Enjoy!

Sam Lantinga (slouken@libsdl.org)