Skip to content
This repository has been archived by the owner on Aug 31, 2020. It is now read-only.

Crash when assigning a keyboard button to a trigger #36

Closed
kinodont opened this issue Oct 17, 2018 · 2 comments
Closed

Crash when assigning a keyboard button to a trigger #36

kinodont opened this issue Oct 17, 2018 · 2 comments
Labels
bug Something isn't working

Comments

@kinodont
Copy link

Distribution: Arch Linux
Version: 910b7b4

Steps to reproduce:

  1. connect a gamepad that has analog trigger buttons
  2. start AntiMicro
  3. click on L or R Trigger
  4. click on either "[NO KEY]" buttons
  5. the dialog is not show and AntiMicro crashes

Backtrace:

Thread 1 "antimicro" received signal SIGSEGV, Segmentation fault.
JoyControlStick::getParentSet (this=0x0) at /usr/src/debug/antimicro-910b7b40749d49716c92ed44be091e62e2f0cf48/src/joycontrolstick.cpp:2527
(gdb) bt
#0  JoyControlStick::getParentSet (this=0x0) at /usr/src/debug/antimicro-910b7b40749d49716c92ed44be091e62e2f0cf48/src/joycontrolstick.cpp:2527
#1  0x00005555555ff240 in AxisEditDialog::openAdvancedPDialog (this=0x7fffe800ac30) at /usr/src/debug/antimicro-910b7b40749d49716c92ed44be091e62e2f0cf48/src/axiseditdialog.cpp:368
#2  0x00007ffff66e7bd0 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQt5Core.so.5
#3  0x00007ffff7b4e803 in QAbstractButton::clicked(bool) () from /usr/lib/libQt5Widgets.so.5
#4  0x00007ffff7b4ea1c in ?? () from /usr/lib/libQt5Widgets.so.5
#5  0x00007ffff7b4fe12 in ?? () from /usr/lib/libQt5Widgets.so.5
#6  0x00007ffff7b4ffe6 in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/libQt5Widgets.so.5
#7  0x00007ffff7aa3658 in QWidget::event(QEvent*) () from /usr/lib/libQt5Widgets.so.5
#8  0x00007ffff7a63e14 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#9  0x00007ffff7a6b92a in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#10 0x00007ffff66bdc39 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#11 0x00007ffff7a6ac11 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib/libQt5Widgets.so.5
#12 0x00007ffff7abe98c in ?? () from /usr/lib/libQt5Widgets.so.5
#13 0x00007ffff7ac15d5 in ?? () from /usr/lib/libQt5Widgets.so.5
#14 0x00007ffff7a63e14 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#15 0x00007ffff7a6b6e1 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#16 0x00007ffff66bdc39 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#17 0x00007ffff74940dc in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () from /usr/lib/libQt5Gui.so.5
#18 0x00007ffff7496066 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () from /usr/lib/libQt5Gui.so.5
#19 0x00007ffff746fa3c in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Gui.so.5
#20 0x00007ffff1d22e1d in ?? () from /usr/lib/libQt5XcbQpa.so.5
#21 0x00007ffff66bc8cc in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#22 0x00007ffff66c4bc6 in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#23 0x00005555555a7713 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/antimicro-910b7b40749d49716c92ed44be091e62e2f0cf48/src/main.cpp:814
(gdb) f 1
#1  0x00005555555ff240 in AxisEditDialog::openAdvancedPDialog (this=0x7fffe800ac30) at /usr/src/debug/antimicro-910b7b40749d49716c92ed44be091e62e2f0cf48/src/axiseditdialog.cpp:368  
(gdb) p m_axis->getControlStick()
$2 = (JoyControlStick *) 0x0
(gdb) p *m_axis
$3 = {<QObject> = {<No data fields>}, static staticMetaObject = {d = {superdata = 0x7ffff693e100 <QObject::staticMetaObject>, stringdata = 0x55555572f020 <qt_meta_stringdata_JoyAxis>, data = 0x55555572ede0 <qt_meta_data_JoyAxis>, 
      static_metacall = 0x5555555b5430 <JoyAxis::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, static DEFAULTTHROTTLE = JoyAxis::NormalThrottle, paxisbutton = 0x55555589cf00, naxisbutton = 0x55555589b420, axisName = {static null = {<No data fields>}, 
    d = 0x7ffff677b640 <QArrayData::shared_null>}, defaultAxisName = {static null = {<No data fields>}, d = 0x555555933690}, throttle = 0, deadZone = 6000, maxZoneValue = 32000, currentRawValue = 0, currentThrottledValue = 0, currentThrottledDeadValue = 0, m_index = 5, axis_center_cal = -1, axis_min_cal = -1, 
  axis_max_cal = -1, isActive = false, eventActive = false, activeButton = 0x0, m_originset = 0, m_stick = 0x0, m_parentSet = 0x5555558dfe30, lastKnownThottledValue = 0, lastKnownRawValue = 0, pendingValue = 0, pendingEvent = false, pendingIgnoreSets = false}

This is a regression (not present in version 2.23).

@juliagoda juliagoda reopened this Oct 17, 2018
@juliagoda
Copy link
Owner

How does it work?

@kinodont
Copy link
Author

The dialog itself now works, although I found two other bugs. I'll open separate bug reports for them.

@juliagoda juliagoda added the bug Something isn't working label Oct 19, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants