Bug 26371 - obs-studio segfaults when validating parameters
Summary: obs-studio segfaults when validating parameters
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: Cauldron
Hardware: All Linux
Priority: Normal normal
Target Milestone: ---
Assignee: All Packagers
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-03-22 13:11 CET by Thomas Bigot
Modified: 2020-03-22 20:26 CET (History)
3 users (show)

See Also:
Source RPM: obs-studio-25.0.0-1.mga8.tainted.src.rpm
CVE:
Status comment:


Attachments
running log (5.09 KB, text/plain)
2020-03-22 14:20 CET, Thomas Bigot
Details
gdb log (10.62 KB, text/plain)
2020-03-22 14:22 CET, Thomas Bigot
Details

Description Thomas Bigot 2020-03-22 13:11:09 CET
Description of problem:
When clicking «ok» on the parameters panel, obs segfaults.

Version-Release number of selected component (if applicable):
25.0.0-1

How reproducible:
Always

Steps to Reproduce:
1. urpmi obs-studio
2. obs
3. skip the assistant
4. click on parameters (bottom-right)
5. just click on ok in the parameters panel (no change needed)

#0  QAbstractButton::isChecked (this=0x0) at widgets/qabstractbutton.cpp:664
#1  0x00000000004e9d14 in OBSBasicSettings::SaveSettings (this=0x7fffffffc180) at /usr/include/c++/9/bits/unique_ptr.h:360
#2  0x00000000004ec168 in OBSBasicSettings::on_buttonBox_clicked (this=0x7fffffffc180, button=<optimized out>) at /usr/src/debug/obs-studio-25.0.1-1.mga8.x86_64/UI/window-basic-settings.cpp:3616
#3  0x000000000046278d in OBSBasicSettings::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>)
    at /usr/src/debug/obs-studio-25.0.1-1.mga8.x86_64/build/UI/obs_autogen/EWIEGA46WW/moc_window-basic-settings.cpp:518
#4  0x0000000000466d83 in OBSBasicSettings::qt_metacall (this=0x7fffffffc180, _c=QMetaObject::InvokeMetaMethod, _id=10, _a=0x7fffffffb3f0)
    at /usr/src/debug/obs-studio-25.0.1-1.mga8.x86_64/build/UI/obs_autogen/EWIEGA46WW/moc_window-basic-settings.cpp:636
#5  0x00007ffff55f5f8d in doActivate<false> (sender=0x22be7c0, signal_index=7, argv=<optimized out>) at /usr/include/c++/9.2.1/bits/atomic_base.h:734
#6  0x00007ffff55f0d8f in QMetaObject::activate (sender=sender@entry=0x22be7c0, m=m@entry=0x7ffff65d8820 <QDialogButtonBox::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fffffffb3f0)
    at kernel/qobject.cpp:3930
#7  0x00007ffff6277f0f in QDialogButtonBox::clicked (this=this@entry=0x22be7c0, _t1=<optimized out>, _t1@entry=0x22bfac0) at .moc/moc_qdialogbuttonbox.cpp:281
#8  0x00007ffff62785e5 in QDialogButtonBoxPrivate::_q_handleButtonClicked (this=<optimized out>) at widgets/qdialogbuttonbox.cpp:869
#9  0x00007ffff55f6265 in doActivate<false> (sender=0x22bfac0, signal_index=9, argv=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:391
#10 0x00007ffff55f0d8f in QMetaObject::activate (sender=sender@entry=0x22bfac0, m=m@entry=0x7ffff65cf700 <QAbstractButton::staticMetaObject>, local_signal_index=local_signal_index@entry=2, argv=argv@entry=0x7fffffffb520)
    at kernel/qobject.cpp:3930
#11 0x00007ffff61da882 in QAbstractButton::clicked (this=this@entry=0x22bfac0, _t1=<optimized out>) at .moc/moc_qabstractbutton.cpp:313
#12 0x00007ffff61daa6a in QAbstractButtonPrivate::emitClicked (this=this@entry=0x22bfe30) at widgets/qabstractbutton.cpp:415
#13 0x00007ffff61dbd4f in QAbstractButtonPrivate::click (this=0x22bfe30) at widgets/qabstractbutton.cpp:408
#14 0x00007ffff61dbef0 in QAbstractButton::mouseReleaseEvent (this=0x22bfac0, e=0x7fffffffb9a0) at widgets/qabstractbutton.cpp:1012
#15 0x00007ffff612a996 in QWidget::event (this=0x22bfac0, event=0x7fffffffb9a0) at kernel/qwidget.cpp:8675
#16 0x00007ffff60ea67f in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x22bfac0, e=0x7fffffffb9a0) at kernel/qapplication.cpp:3684
#17 0x00007ffff60f355a in QApplication::notify(QObject*, QEvent*) () at kernel/qapplication.cpp:3128
#18 0x00007ffff55c321a in QCoreApplication::notifyInternal2 (receiver=0x22bfac0, event=0x7fffffffb9a0) at ../../include/QtCore/5.14.1/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:325
#19 0x00007ffff60f26c0 in QApplicationPrivate::sendMouseEvent (receiver=receiver@entry=0x22bfac0, event=event@entry=0x7fffffffb9a0, alienWidget=alienWidget@entry=0x22bfac0, nativeWidget=0x7fffffffc180, 
    buttonDown=buttonDown@entry=0x7ffff65f99a0 <qt_button_down>, lastMouseReceiver=..., spontaneous=true, onlyDispatchEnterLeave=false) at kernel/qapplication.cpp:2614
#20 0x00007ffff6144e2f in QWidgetWindow::handleMouseEvent (this=0x1772fd0, event=0x7fffffffbd90) at /usr/include/c++/9.2.1/bits/atomic_base.h:413
#21 0x00007ffff6147b4c in QWidgetWindow::event (event=0x7fffffffbd90, this=0x1772fd0) at kernel/qwidgetwindow.cpp:295
#22 QWidgetWindow::event (this=0x1772fd0, event=0x7fffffffbd90) at kernel/qwidgetwindow.cpp:238
#23 0x00007ffff60ea67f in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x1772fd0, e=0x7fffffffbd90) at kernel/qapplication.cpp:3684
#24 0x00007ffff60f3300 in QApplication::notify(QObject*, QEvent*) () at kernel/qapplication.cpp:3430
#25 0x00007ffff55c321a in QCoreApplication::notifyInternal2 (receiver=0x1772fd0, event=0x7fffffffbd90) at ../../include/QtCore/5.14.1/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:325
#26 0x00007ffff59b3688 in QGuiApplicationPrivate::processMouseEvent (e=e@entry=0x1eed8c0) at kernel/qguiapplication.cpp:2209
#27 0x00007ffff59b4d09 in QGuiApplicationPrivate::processWindowSystemEvent (e=0x1eed8c0) at kernel/qguiapplication.cpp:1941
#28 0x00007ffff598fb8b in QWindowSystemInterface::sendWindowSystemEvents (flags=flags@entry=...) at kernel/qwindowsysteminterface.cpp:1163
#29 0x00007fffef52cb2a in xcbSourceDispatch (source=source@entry=0x73eb10) at qxcbeventdispatcher.cpp:105
#30 0x00007ffff2463318 in g_main_dispatch (context=0x7fffe8005000) at ../glib/gmain.c:3309
#31 g_main_context_dispatch (context=context@entry=0x7fffe8005000) at ../glib/gmain.c:3974
#32 0x00007ffff2463670 in g_main_context_iterate (context=context@entry=0x7fffe8005000, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4047
#33 0x00007ffff24636ff in g_main_context_iteration (context=0x7fffe8005000, may_block=may_block@entry=1) at ../glib/gmain.c:4108
#34 0x00007ffff56172de in QEventDispatcherGlib::processEvents (this=0x745870, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#35 0x00007ffff55c1f0b in QEventLoop::exec (this=this@entry=0x7fffffffc100, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:136
#36 0x00007ffff62da77d in QDialog::exec (this=0x7fffffffc180) at ../../include/QtCore/../../src/corelib/global/qflags.h:118
#37 0x00000000004af69f in OBSBasic::on_action_Settings_triggered() () at /usr/src/debug/obs-studio-25.0.1-1.mga8.x86_64/UI/window-basic-main.cpp:4086
#38 0x0000000000464b0f in OBSBasic::qt_static_metacall (_o=0x7fc850, _c=<optimized out>, _id=<optimized out>, _a=0x7fffffffc550) at /usr/src/debug/obs-studio-25.0.1-1.mga8.x86_64/build/UI/obs_autogen/EWIEGA46WW/moc_window-basic-main.cpp:1179
#39 0x0000000000468cdb in OBSBasic::qt_metacall (this=0x7fc850, _c=QMetaObject::InvokeMetaMethod, _id=163, _a=0x7fffffffc550) at /usr/src/debug/obs-studio-25.0.1-1.mga8.x86_64/build/UI/obs_autogen/EWIEGA46WW/moc_window-basic-main.cpp:1345
#40 0x00007ffff55f5f8d in doActivate<false> (sender=0xb878c0, signal_index=9, argv=<optimized out>) at /usr/include/c++/9.2.1/bits/atomic_base.h:734
#41 0x00007ffff55f0d8f in QMetaObject::activate (sender=sender@entry=0xb878c0, m=m@entry=0x7ffff65cf700 <QAbstractButton::staticMetaObject>, local_signal_index=local_signal_index@entry=2, argv=argv@entry=0x7fffffffc550) at kernel/qobject.cpp:3930
#42 0x00007ffff61da882 in QAbstractButton::clicked (this=this@entry=0xb878c0, _t1=<optimized out>) at .moc/moc_qabstractbutton.cpp:313
#43 0x00007ffff61daa6a in QAbstractButtonPrivate::emitClicked (this=this@entry=0xb87e30) at widgets/qabstractbutton.cpp:415
#44 0x00007ffff61dbd4f in QAbstractButtonPrivate::click (this=0xb87e30) at widgets/qabstractbutton.cpp:408
#45 0x00007ffff61dbef0 in QAbstractButton::mouseReleaseEvent (this=0xb878c0, e=0x7fffffffc9d0) at widgets/qabstractbutton.cpp:1012
#46 0x00007ffff612a996 in QWidget::event (this=0xb878c0, event=0x7fffffffc9d0) at kernel/qwidget.cpp:8675
#47 0x00007ffff60ea67f in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0xb878c0, e=0x7fffffffc9d0) at kernel/qapplication.cpp:3684
#48 0x00007ffff60f355a in QApplication::notify(QObject*, QEvent*) () at kernel/qapplication.cpp:3128
#49 0x00007ffff55c321a in QCoreApplication::notifyInternal2 (receiver=0xb878c0, event=0x7fffffffc9d0) at ../../include/QtCore/5.14.1/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:325
#50 0x00007ffff60f26c0 in QApplicationPrivate::sendMouseEvent (receiver=receiver@entry=0xb878c0, event=event@entry=0x7fffffffc9d0, alienWidget=alienWidget@entry=0xb878c0, nativeWidget=0xb79b30, buttonDown=buttonDown@entry=0x7ffff65f99a0 <qt_button_down>, lastMouseReceiver=..., spontaneous=true, onlyDispatchEnterLeave=false) at kernel/qapplication.cpp:2614
#51 0x00007ffff6144e2f in QWidgetWindow::handleMouseEvent (this=0x14a4160, event=0x7fffffffcdc0) at /usr/include/c++/9.2.1/bits/atomic_base.h:413
#52 0x00007ffff6147b4c in QWidgetWindow::event (event=0x7fffffffcdc0, this=0x14a4160) at kernel/qwidgetwindow.cpp:295
#53 QWidgetWindow::event (this=0x14a4160, event=0x7fffffffcdc0) at kernel/qwidgetwindow.cpp:238
#54 0x00007ffff60ea67f in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x14a4160, e=0x7fffffffcdc0) at kernel/qapplication.cpp:3684
#55 0x00007ffff60f3300 in QApplication::notify(QObject*, QEvent*) () at kernel/qapplication.cpp:3430
#56 0x00007ffff55c321a in QCoreApplication::notifyInternal2 (receiver=0x14a4160, event=0x7fffffffcdc0) at ../../include/QtCore/5.14.1/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:325
#57 0x00007ffff59b3688 in QGuiApplicationPrivate::processMouseEvent (e=e@entry=0x17db200) at kernel/qguiapplication.cpp:2209
#58 0x00007ffff59b4d09 in QGuiApplicationPrivate::processWindowSystemEvent (e=0x17db200) at kernel/qguiapplication.cpp:1941
#59 0x00007ffff598fb8b in QWindowSystemInterface::sendWindowSystemEvents (flags=flags@entry=...) at kernel/qwindowsysteminterface.cpp:1163
#60 0x00007fffef52cb2a in xcbSourceDispatch (source=source@entry=0x73eb10) at qxcbeventdispatcher.cpp:105
#61 0x00007ffff2463318 in g_main_dispatch (context=0x7fffe8005000) at ../glib/gmain.c:3309
#62 g_main_context_dispatch (context=context@entry=0x7fffe8005000) at ../glib/gmain.c:3974
#63 0x00007ffff2463670 in g_main_context_iterate (context=context@entry=0x7fffe8005000, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4047
#64 0x00007ffff24636ff in g_main_context_iteration (context=0x7fffe8005000, may_block=may_block@entry=1) at ../glib/gmain.c:4108
#65 0x00007ffff56172de in QEventDispatcherGlib::processEvents (this=0x745870, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#66 0x00007ffff55c1f0b in QEventLoop::exec (this=this@entry=0x7fffffffd130, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:136
#67 0x00007ffff55c98a8 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:118
#68 0x00007ffff59a7e3c in QGuiApplication::exec () at kernel/qguiapplication.cpp:1866
#69 0x00007ffff60ea5f5 in QApplication::exec () at kernel/qapplication.cpp:2824
#70 0x0000000000460384 in run_program (argv=0x7fffffffd9d8, argc=<optimized out>, logFile=...) at /usr/src/debug/obs-studio-25.0.1-1.mga8.x86_64/UI/obs-app.cpp:1871
#71 main (argc=<optimized out>, argv=0x7fffffffd9d8) at /usr/src/debug/obs-studio-25.0.1-1.mga8.x86_64/UI/obs-app.cpp:2472
Comment 1 Frank Griffin 2020-03-22 13:56:11 CET
Please also include the stdout/stderr from running this from a terminal window, as well as the error messages from gdb prior to issuing the bt.

CC: (none) => ftg

Comment 2 Thomas Bigot 2020-03-22 14:20:54 CET
Created attachment 11562 [details]
running log

Here is the ouput.
Comment 3 Thomas Bigot 2020-03-22 14:22:21 CET
Created attachment 11563 [details]
gdb log

Here is the GDB message before the trace.
Comment 4 Frank Griffin 2020-03-22 14:37:48 CET
Thanks for posting this info.

Assigning globally as this is another akien package that can't be assigned to him/her specifically.  It needs an opinion as to whether this is specific to MGA or needs to go upstream.  The fault seems to occur in widgets/qabstractbutton.cpp:664 which suggests QT, and there have been a few recent bugs related to the way we handle QT.

Assignee: bugsquad => pkg-bugs

David Walser 2020-03-22 17:09:15 CET

CC: (none) => geiger.david68210, smelror

Comment 5 Stig-Ørjan Smelror 2020-03-22 19:33:52 CET
Looks like they're about to release 25.0.2.

OBS Studio 25.0.2
25.0.2 Hotfix Changes (Linux)
-----------------------------
* Fixed a crash when changing settings on Linux

I'll update it shortly.

Cheers,
Stig
Comment 6 Stig-Ørjan Smelror 2020-03-22 19:57:42 CET
obs-studio 25.0.2 has been pushed to Cauldron.

Please test and report back to me.

Cheers,
Stig
Comment 7 Thomas Bigot 2020-03-22 20:06:57 CET
Solved for me.

Thanks a lot!
Thomas
Comment 8 Stig-Ørjan Smelror 2020-03-22 20:26:55 CET
Version 25.0.2 fixed the issue. See Comment 7.

Resolution: (none) => FIXED
Status: NEW => RESOLVED


Note You need to log in before you can comment on or make changes to this bug.