diff options
Diffstat (limited to 'platform')
-rw-r--r-- | platform/osx/audio_driver_osx.cpp | 3 | ||||
-rw-r--r-- | platform/windows/detect.py | 2 | ||||
-rw-r--r-- | platform/windows/os_windows.cpp | 1 | ||||
-rw-r--r-- | platform/winrt/os_winrt.cpp | 1 | ||||
-rw-r--r-- | platform/x11/joystick_linux.cpp | 8 | ||||
-rw-r--r-- | platform/x11/os_x11.cpp | 1 |
6 files changed, 9 insertions, 7 deletions
diff --git a/platform/osx/audio_driver_osx.cpp b/platform/osx/audio_driver_osx.cpp index a74303e6c2..d9d91b22fb 100644 --- a/platform/osx/audio_driver_osx.cpp +++ b/platform/osx/audio_driver_osx.cpp @@ -172,6 +172,9 @@ void AudioDriverOSX::unlock() { void AudioDriverOSX::finish() { + if (active) + AudioOutputUnitStop(audio_unit); + memdelete_arr(samples_in); }; diff --git a/platform/windows/detect.py b/platform/windows/detect.py index 0d7ee64d80..397ca078fb 100644 --- a/platform/windows/detect.py +++ b/platform/windows/detect.py @@ -262,7 +262,7 @@ def configure(env): env.Append(CCFLAGS=["/I"+DIRECTX_PATH+"/Include"]) env.Append(LIBPATH=[DIRECTX_PATH+"/Lib/x86"]) env['ENV'] = os.environ; - env["x86_opt_vc"]=env["bits"]!="64" + env["x86_opt_vc"]=True else: # Workaround for MinGW. See: diff --git a/platform/windows/os_windows.cpp b/platform/windows/os_windows.cpp index 886c43d116..20f417ccc6 100644 --- a/platform/windows/os_windows.cpp +++ b/platform/windows/os_windows.cpp @@ -47,7 +47,6 @@ #include "tcp_server_winsock.h" #include "packet_peer_udp_winsock.h" #include "stream_peer_winsock.h" -#include "os/pc_joystick_map.h" #include "lang_table.h" #include "os/memory_pool_dynamic_prealloc.h" #include "globals.h" diff --git a/platform/winrt/os_winrt.cpp b/platform/winrt/os_winrt.cpp index f507c1aae7..b6ce7f950d 100644 --- a/platform/winrt/os_winrt.cpp +++ b/platform/winrt/os_winrt.cpp @@ -43,7 +43,6 @@ #include "servers/audio/audio_server_sw.h" #include "servers/visual/visual_server_wrap_mt.h" -#include "os/pc_joystick_map.h" #include "os/memory_pool_dynamic_prealloc.h" #include "globals.h" #include "io/marshalls.h" diff --git a/platform/x11/joystick_linux.cpp b/platform/x11/joystick_linux.cpp index 5007976f0d..1a11876d5d 100644 --- a/platform/x11/joystick_linux.cpp +++ b/platform/x11/joystick_linux.cpp @@ -38,8 +38,9 @@ #include <fcntl.h> #include <errno.h> -#define test_bit(nr, addr) (((1UL << ((nr) % (sizeof(long) * 8))) & ((addr)[(nr) / (sizeof(long) * 8)])) != 0) -#define NBITS(x) ((((x)-1)/(sizeof(long) * 8))+1) +#define LONG_BITS (sizeof(long) * 8) +#define test_bit(nr, addr) (((1UL << ((nr) % LONG_BITS)) & ((addr)[(nr) / LONG_BITS])) != 0) +#define NBITS(x) ((((x)-1)/LONG_BITS)+1) static const char* ignore_str = "/dev/input/js"; @@ -304,13 +305,14 @@ void joystick_linux::open_joystick(const char *p_path) { if ((ioctl(fd, EVIOCGBIT(0, sizeof(evbit)), evbit) < 0) || (ioctl(fd, EVIOCGBIT(EV_KEY, sizeof(keybit)), keybit) < 0) || (ioctl(fd, EVIOCGBIT(EV_ABS, sizeof(absbit)), absbit) < 0)) { + close(fd); return; } //check if the device supports basic gamepad events, prevents certain keyboards from //being detected as joysticks if (!(test_bit(EV_KEY, evbit) && test_bit(EV_ABS, evbit) && - ((test_bit(ABS_X, absbit) || test_bit(ABS_Y, absbit)) || + ((test_bit(ABS_X, absbit) || test_bit(ABS_Y, absbit) || test_bit(ABS_HAT0X, absbit)) && (test_bit(BTN_A, keybit) || test_bit(BTN_THUMBL, keybit))))) { close(fd); return; diff --git a/platform/x11/os_x11.cpp b/platform/x11/os_x11.cpp index 89c674d537..34abfc1078 100644 --- a/platform/x11/os_x11.cpp +++ b/platform/x11/os_x11.cpp @@ -65,7 +65,6 @@ #include <X11/Xatom.h> -//#include "os/pc_joystick_map.h" #undef CursorShape |