Electronicks / JoyShockMapper

A tool for PC gamers to play games with DualShock 4s, JoyCons, and Pro Controllers. Gyro aiming, flick stick.
Other
343 stars 20 forks source link

Segmentation fault (core dumped) on linux Arch #24

Closed dodgypast closed 2 years ago

dodgypast commented 3 years ago

Here's everything from the terminal: [duncanm@arch ~]$ JoyShockMapper Welcome to JoyShockMapper version v3.2.1! AUTOLOAD is available. Files in /home/duncanm/.config/JoyShockMapper/AutoLoad/ folder will get loaded automatically when a matching application is in focus. DS4 DS 1 device connected Resetting all mappings to defaults There is no OnReset.txt file to load. There is no OnStartup.txt file to load. [AUTOLOAD] "~ : bash" in focus: create AutoLoad\konsole.txt to autoload for this application. Segmentation fault (core dumped)

Coredump file attached. core.JoyShockMapper.1000.be72b90ced184d7ea0d206ab9569c6d8.58019.1626411286000000.zst.log

mmmaisel commented 3 years ago

Is /dev/uinput writable for your user account? If not, this crash is replaced with an error message with #23.

dodgypast commented 3 years ago

I should have added it's a PS5 controller and I have noticed none of the rules mention that specifically.

I've double checked it's writeable, but still get the same error: image If it helps here is the output from udevadm monitor when I run it: image Just tried with a Nintendo Switch controller and it was slightly different: image image

Yamakaky commented 3 years ago

I have the same problem. Backtrace from the thread in gdb:

Thread 3 (Thread 0x7ffff5561640 (LWP 421468) "JoyShockMapper"):
#0  0x00007ffff70f7d22 in raise () at /usr/lib/libc.so.6
#1  0x00007ffff70e1862 in abort () at /usr/lib/libc.so.6
#2  0x00007ffff747f802 in __gnu_cxx::__verbose_terminate_handler() () at /build/gcc/src/gcc/libstdc++-v3/libsupc++/vterminate.cc:95
#3  0x00007ffff748bc8a in __cxxabiv1::__terminate(void (*)()) (handler=<optimized out>) at /build/gcc/src/gcc/libstdc++-v3/libsupc++/eh_terminate.cc:48
#4  0x00007ffff748bcf7 in std::terminate() () at /build/gcc/src/gcc/libstdc++-v3/libsupc++/eh_terminate.cc:58
#5  0x00007ffff748bf8e in __cxxabiv1::__cxa_throw(void*, std::type_info*, void (*)(void*)) (obj=<optimized out>, tinfo=0x7ffff75ef350 <typeinfo for std::bad_function_call>, dest=0x7ffff74b6a20 <std::bad_function_c
all::~bad_function_call()>) at /build/gcc/src/gcc/libstdc++-v3/libsupc++/eh_throw.cc:95
#6  0x00007ffff74826d3 in  () at /usr/lib/libstdc++.so.6
#7  0x000055555564d9dc in  ()
#8  0x00007ffff74b93c4 in std::execute_native_thread_routine(void*) (__p=0x555555703480) at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:82
#9  0x00007ffff7615259 in start_thread () at /usr/lib/libpthread.so.0
#10 0x00007ffff71b95e3 in clone () at /usr/lib/libc.so.6
Electronicks commented 2 years ago

Linux is not officially supported. Feel free to contact the community and propose a fix as a Pull Request.