Opened 7 years ago
Closed 7 years ago
#582 closed баг (fixed)
Падение при выключении теста звука
Reported by: | alx | Owned by: | alx |
---|---|---|---|
Priority: | major | Milestone: | 1 очередь |
Component: | ПО MC04-Dispatcher. Пульт диспетчера/техника | Keywords: | |
Cc: |
Description
В настройках устройств вывода звука есть функция теста, который включается/выключается кнопками "Начать тест"/"Остановить тест".
Если при нажатии кнопки "Начать тест" возникает ошибка (например "ErrorPanel::setAudioDevice(): supported format for card "default" not found"), то при последующем нажатии "Остановить тест" программа падает.
Вот стек при падении:
#0 0x00007ffff7f47a00 in QAudioOutput::stop() () from /usr/lib/x86_64-linux-gnu/libQt5Multimedia.so.5 #1 0x0000000000427f06 in MainAppFrameWindow3::systemStopSoundTest() () #2 0x00000000004a69f7 in MainAppFrameWindow3::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () #3 0x00007ffff5c99d2a in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #4 0x00007ffff67b4ff7 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #5 0x00007ffff67b5151 in QAbstractButton::mousePressEvent(QMouseEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #6 0x00007ffff66fb40f in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #7 0x00007ffff66b805c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #8 0x00007ffff66bdc19 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #9 0x00007ffff5c6b38b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #10 0x00007ffff66bcb32 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #11 0x00007ffff67155bb in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #12 0x00007ffff6717b7b in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #13 0x00007ffff66b805c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #14 0x00007ffff66bd516 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #15 0x00007ffff5c6b38b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #16 0x00007ffff61074e1 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5 #17 0x00007ffff61091a5 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5 #18 0x00007ffff60ecf08 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5 #19 0x00007fffe789d200 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5 #20 0x00007ffff2241197 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #21 0x00007ffff22413f0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #22 0x00007ffff224149c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #23 0x00007ffff5cc17cf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #24 0x00007ffff5c68b4a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #25 0x00007ffff5c70bec in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #26 0x00000000004266b8 in main ()
Note:
See TracTickets
for help on using tickets.
Если при установке аудио-устройства для него не удается найти поддерживаемый устройством формат (когда в журнал выдается сообщение "supported format for card "default" not found"),
audioOutput
остается равным NULL. Очевидно, что падение в момент нажатия "Остановить тест" вызвано обращением по NULL-указателю (см. первую строчку стека).