Skip to content

Deadlock playing an audio time range #180

Description

@mateon1

No idea if this is reproducible, only happened once so far.
I was syncing up audio in karaoke mode, I believe I may have pressed two hotkeys at once or something similar

Version: 3.3.3 from nixpkgs unstable

Backtrace:

#0  __futex_lock_pi64 (futex_word=futex_word@entry=0x32aca10, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at futex-internal.c:180
#1  0x00007fb8206a2ce6 in __pthread_mutex_lock_full (mutex=0x32aca10) at pthread_mutex_lock.c:441
#2  0x00007fb81ddd588e in pa_mutex_lock () from /nix/store/6g70y8ayzq7s5gjry9cx54z8bma54p4p-libpulseaudio-16.1/lib/pulseaudio/libpulsecommon-16.1.so
#3  0x00000000008f4aba in (anonymous namespace)::PulseAudioPlayer::Play(long, long) ()
#4  0x000000000075a3a1 in AudioController::PlayRange(TimeRange const&) ()
#5  0x0000000000504eac in (anonymous namespace)::audio_play_begin::operator()(agi::Context*) ()
#6  0x00000000007dff3b in hotkey::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, agi::Context*, wxKeyEvent&) ()
#7  0x000000000075bebf in AudioDisplay::OnKeyDown(wxKeyEvent&) ()
#8  0x00007fb821c07dc2 in wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) ()
   from /nix/store/xmklpcjb4h9n3k4hjr5jwcvm5l7w9lfy-wxwidgets-3.2.2.1/lib/libwx_baseu-3.2.so.0
#9  0x00007fb821c0821e in wxEvtHandler::SearchDynamicEventTable(wxEvent&) ()
   from /nix/store/xmklpcjb4h9n3k4hjr5jwcvm5l7w9lfy-wxwidgets-3.2.2.1/lib/libwx_baseu-3.2.so.0
#10 0x00007fb821c08570 in wxEvtHandler::TryHereOnly(wxEvent&) () from /nix/store/xmklpcjb4h9n3k4hjr5jwcvm5l7w9lfy-wxwidgets-3.2.2.1/lib/libwx_baseu-3.2.so.0
#11 0x00007fb821c0861a in wxEvtHandler::ProcessEventLocally(wxEvent&) () from /nix/store/xmklpcjb4h9n3k4hjr5jwcvm5l7w9lfy-wxwidgets-3.2.2.1/lib/libwx_baseu-3.2.so.0
#12 0x00007fb821c08721 in wxEvtHandler::ProcessEvent(wxEvent&) () from /nix/store/xmklpcjb4h9n3k4hjr5jwcvm5l7w9lfy-wxwidgets-3.2.2.1/lib/libwx_baseu-3.2.so.0
#13 0x00007fb821c09e57 in wxEvtHandler::SafelyProcessEvent(wxEvent&) () from /nix/store/xmklpcjb4h9n3k4hjr5jwcvm5l7w9lfy-wxwidgets-3.2.2.1/lib/libwx_baseu-3.2.so.0
#14 0x00007fb8213b1dda in gtk_window_key_press_callback () from /nix/store/xmklpcjb4h9n3k4hjr5jwcvm5l7w9lfy-wxwidgets-3.2.2.1/lib/libwx_gtk3u_core-3.2.so.0
#15 0x00007fb81fe9d989 in _gtk_marshal_BOOLEAN__BOXED (closure=0x2ddb170, return_value=0x7ffde2d18810, n_param_values=<optimized out>, param_values=0x7ffde2d18870, 
    invocation_hint=<optimized out>, marshal_data=<optimized out>) at gtk/gtkmarshalers.c:84
#16 0x00007fb81fa244d0 in g_closure_invoke (closure=0x2ddb170, return_value=return_value@entry=0x7ffde2d18810, n_param_values=2, 
    param_values=param_values@entry=0x7ffde2d18870, invocation_hint=invocation_hint@entry=0x7ffde2d187f0) at ../gobject/gclosure.c:832
#17 0x00007fb81fa373a6 in signal_emit_unlocked_R (node=<optimized out>, detail=detail@entry=0, instance=instance@entry=0x2ddabd0, 
    emission_return=emission_return@entry=0x7ffde2d18960, instance_and_params=instance_and_params@entry=0x7ffde2d18870) at ../gobject/gsignal.c:3812
#18 0x00007fb81fa3dbfd in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7ffde2d18a10)
    at ../gobject/gsignal.c:3575
#19 0x00007fb81fa3e59f in g_signal_emit (instance=instance@entry=0x2ddabd0, signal_id=<optimized out>, detail=detail@entry=0) at ../gobject/gsignal.c:3622
#20 0x00007fb820151384 in gtk_widget_event_internal (widget=widget@entry=0x2ddabd0, event=event@entry=0x3380320) at ../gtk/gtkwidget.c:7812
#21 0x00007fb820153bf1 in gtk_widget_event_internal (event=0x3380320, widget=0x2ddabd0) at ../gtk/gtkwidget.c:7383
#22 0x00007fb820172d3b in gtk_window_propagate_key_event (window=0x20766c0, event=0x3380320) at ../gtk/gtkwindow.c:8259
#23 0x00007fb821398a31 in wxgtk_tlw_key_press_event () from /nix/store/xmklpcjb4h9n3k4hjr5jwcvm5l7w9lfy-wxwidgets-3.2.2.1/lib/libwx_gtk3u_core-3.2.so.0
#24 0x00007fb81fe9d989 in _gtk_marshal_BOOLEAN__BOXED (closure=0x21502b0, return_value=0x7ffde2d18d00, n_param_values=<optimized out>, param_values=0x7ffde2d18d60, 
    invocation_hint=<optimized out>, marshal_data=<optimized out>) at gtk/gtkmarshalers.c:84
#25 0x00007fb81fa244d0 in g_closure_invoke (closure=0x21502b0, return_value=return_value@entry=0x7ffde2d18d00, n_param_values=2, 
    param_values=param_values@entry=0x7ffde2d18d60, invocation_hint=invocation_hint@entry=0x7ffde2d18ce0) at ../gobject/gclosure.c:832
#26 0x00007fb81fa373a6 in signal_emit_unlocked_R (node=<optimized out>, detail=detail@entry=0, instance=instance@entry=0x20766c0, 
    emission_return=emission_return@entry=0x7ffde2d18e50, instance_and_params=instance_and_params@entry=0x7ffde2d18d60) at ../gobject/gsignal.c:3812
#27 0x00007fb81fa3dbfd in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7ffde2d18f00)
    at ../gobject/gsignal.c:3575
#28 0x00007fb81fa3e59f in g_signal_emit (instance=instance@entry=0x20766c0, signal_id=<optimized out>, detail=detail@entry=0) at ../gobject/gsignal.c:3622
#29 0x00007fb820151384 in gtk_widget_event_internal (widget=0x20766c0, event=0x3380320) at ../gtk/gtkwidget.c:7812
#30 0x00007fb82000532f in propagate_event (widget=widget@entry=0x20766c0, event=event@entry=0x3380320, captured=captured@entry=0, topmost=topmost@entry=0x0)
    at ../gtk/gtkmain.c:2681
#31 0x00007fb82000666c in gtk_propagate_event (widget=widget@entry=0x20766c0, event=event@entry=0x3380320) at ../gtk/gtkmain.c:2725
#32 0x00007fb820006d86 in gtk_main_do_event (event=0x3380320) at ../gtk/gtkmain.c:1921
#33 gtk_main_do_event (event=<optimized out>) at ../gtk/gtkmain.c:1691
#34 0x00007fb820aa9715 in _gdk_event_emit (event=event@entry=0x3380320) at ../gdk/gdkevents.c:73
#35 0x00007fb820b01f02 in gdk_event_source_dispatch (source=<optimized out>, callback=<optimized out>, user_data=<optimized out>) at ../gdk/x11/gdkeventsource.c:367
#36 0x00007fb81f922ead in g_main_dispatch (context=0x1f6a070) at ../glib/gmain.c:3460
#37 g_main_context_dispatch (context=context@entry=0x1f6a070) at ../glib/gmain.c:4200
#38 0x00007fb81f923158 in g_main_context_iterate (context=0x1f6a070, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4276
#39 0x00007fb81f92340f in g_main_loop_run (loop=loop@entry=0x335c3e0) at ../glib/gmain.c:4479
#40 0x00007fb820005fd5 in gtk_main () at ../gtk/gtkmain.c:1329
#41 0x00007fb8213831c5 in wxGUIEventLoop::DoRun() () from /nix/store/xmklpcjb4h9n3k4hjr5jwcvm5l7w9lfy-wxwidgets-3.2.2.1/lib/libwx_gtk3u_core-3.2.so.0
#42 0x00007fb821adc3bd in wxEventLoopBase::Run() () from /nix/store/xmklpcjb4h9n3k4hjr5jwcvm5l7w9lfy-wxwidgets-3.2.2.1/lib/libwx_baseu-3.2.so.0
#43 0x00007fb821aa752b in wxAppConsoleBase::MainLoop() () from /nix/store/xmklpcjb4h9n3k4hjr5jwcvm5l7w9lfy-wxwidgets-3.2.2.1/lib/libwx_baseu-3.2.so.0
#44 0x00000000007ed74f in AegisubApp::OnRun() ()
#45 0x00007fb821b23267 in wxEntry(int&, wchar_t**) () from /nix/store/xmklpcjb4h9n3k4hjr5jwcvm5l7w9lfy-wxwidgets-3.2.2.1/lib/libwx_baseu-3.2.so.0
#46 0x00000000004f639e in main ()

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions