Bug 462405 - subtitlecomposer crashes when choosing a different audio stream
Summary: subtitlecomposer crashes when choosing a different audio stream
Status: RESOLVED FIXED
Alias: None
Product: subtitlecomposer
Classification: Applications
Component: general (show other bugs)
Version: 0.7.1
Platform: Neon Linux
: NOR crash
Target Milestone: ---
Assignee: Mladen Milinkovic, Max
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2022-11-29 19:17 UTC by Franco Pellegrini
Modified: 2024-10-20 12:35 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
New crash information added by DrKonqi (3.29 KB, text/plain)
2023-04-17 21:32 UTC, Freedim
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Franco Pellegrini 2022-11-29 19:17:05 UTC
Application: subtitlecomposer (0.7.1)

Qt Version: 5.15.7
Frameworks Version: 5.100.0
Operating System: Linux 5.15.0-53-generic x86_64
Windowing System: X11
Distribution: KDE neon 5.26
DrKonqi: 5.26.3 [KCrashBackend]

-- Information about the crash:
I don't know which debug symbols I need to install in order to get better stack traces... for some reason the KDE Crash Handler fails to do so automatically. In any case, the way to reproduce it is super easy:

1) open a subtitle file for a MKV video with multiple audio streams
2) Right-click the video
3) Under the "Audio Streams" menu, choose the second stream

After this, the program just crashes

The crash can be reproduced every time.

-- Backtrace:
Application: Subtitle Composer (subtitlecomposer), signal: Segmentation fault

[KCrash Handler]
#4  0x000055ac053473ae in SubtitleComposer::FFPlayer::activeAudioStream (streamIndex=1, this=0x55ac076b1810) at ./src/videoplayer/backend/ffplayer.cpp:291
#5  SubtitleComposer::VideoPlayer::selectAudioStream (streamIndex=1, this=0x55ac071f5b90) at ./src/videoplayer/videoplayer.cpp:204
#6  SubtitleComposer::VideoPlayer::selectAudioStream (this=0x55ac071f5b90, streamIndex=1) at ./src/videoplayer/videoplayer.cpp:197
#7  0x00007f6bbe4330f4 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f6bbf716735 in KSelectAction::indexTriggered(int) () from /lib/x86_64-linux-gnu/libKF5WidgetsAddons.so.5
#9  0x00007f6bbe4330f4 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#10 0x00007f6bbf716795 in KSelectAction::triggered(int) () from /lib/x86_64-linux-gnu/libKF5WidgetsAddons.so.5
#11 0x00007f6bbf71ae6a in KSelectAction::actionTriggered(QAction*) () from /lib/x86_64-linux-gnu/libKF5WidgetsAddons.so.5
#12 0x00007f6bbe4330f4 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#13 0x00007f6bbeff6b53 in QActionGroup::triggered(QAction*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#14 0x00007f6bbe433128 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#15 0x00007f6bbeff2c56 in QAction::triggered(bool) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#16 0x00007f6bbeff594c in QAction::activate(QAction::ActionEvent) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#17 0x00007f6bbf181902 in ?? () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#18 0x00007f6bbf1894d9 in ?? () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#19 0x00007f6bbf03c87e in QWidget::event(QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#20 0x00007f6bbeff9763 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#21 0x00007f6bbf0013a4 in QApplication::notify(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#22 0x00007f6bbe3fb09a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#23 0x00007f6bbefffe87 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#24 0x00007f6bbf056c13 in ?? () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#25 0x00007f6bbf0593a5 in ?? () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#26 0x00007f6bbeff9763 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#27 0x00007f6bbe3fb09a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#28 0x00007f6bbe8eea87 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5
#29 0x00007f6bbe8c2a6c in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5
#30 0x00007f6bb24e6c8e in ?? () from /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#31 0x00007f6bbaed5d1b in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#32 0x00007f6bbaf2a6f8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#33 0x00007f6bbaed33c3 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#34 0x00007f6bbe454af8 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#35 0x00007f6bbe3f99bb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#36 0x00007f6bbe401f54 in QCoreApplication::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#37 0x000055ac052b9af7 in main (argc=<optimized out>, argv=<optimized out>) at ./src/main.cpp:239
[Inferior 1 (process 11883) detached]

Reported using DrKonqi
Comment 1 Freedim 2023-04-17 21:32:29 UTC
Created attachment 158177 [details]
New crash information added by DrKonqi

subtitlecomposer (0.7.1) using Qt 5.15.8

Additionally, if one wants to switch the audio stream WHILE THE VIDEO IS PAUSED, then the application hangs.

-- Backtrace (Reduced):
#7  0x00007f6085785601 in KSelectAction::indexTriggered(int) () at /lib/x86_64-linux-gnu/libKF5WidgetsAddons.so.5
[...]
#9  0x00007f60857855a1 in KSelectAction::triggered(int) () at /lib/x86_64-linux-gnu/libKF5WidgetsAddons.so.5
#10 0x00007f60857881ec in KSelectAction::actionTriggered(QAction*) () at /lib/x86_64-linux-gnu/libKF5WidgetsAddons.so.5
[...]
#12 0x00007f6084f6053f in QActionGroup::triggered(QAction*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
[...]
#14 0x00007f6084f5c782 in QAction::triggered(bool) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
Comment 2 Mladen Milinkovic, Max 2024-10-20 12:35:43 UTC
This was likely solved with

* 88a6cf4e Fix deadlock/crash while changing audio stream on paused/stopped media #71