TypesettingTools/Aegisub

Coredumped when pasting a smiley in aegisub

anne-o-pixel opened this issue · 4 comments

Hello
Using aegisub 48c3acd

When pasting 🎶 in it, it crash.

On console here the content:

(aegisub:22901): Pango-WARNING **: Invalid UTF-8 string passed to pango_layout_set_text()
./include/wx/dynarray.h(841): assert "uiIndex < m_nCount" failed in Item().
./include/wx/dynarray.h(841): assert "uiIndex < m_nCount" failed in Item().
Trace/breakpoint trap (core dumped)

A warning dialog open with this text:

ASSERT INFO:
./include/wx/dynarray.h(841): assert "uiIndex < m_nCount" failed in Item().

BACKTRACE:
[1] wxOnAssert(char const*, int, char const*, char const*, char const*)
[2] wxWindowDCImpl::DoGetPartialTextExtents(wxString const&, wxArrayInt&) const
[3] wxStyledTextCtrl::OnPaint(wxPaintEvent&)
[4] wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&)
[5] wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*)
[6] wxEvtHandler::TryHereOnly(wxEvent&)
[7] wxEvtHandler::ProcessEventLocally(wxEvent&)
[8] wxEvtHandler::ProcessEvent(wxEvent&)
[9] wxEvtHandler::SafelyProcessEvent(wxEvent&)
[10] wxWindow::GTKSendPaintEvents(_GdkRegion const*)
[11] g_closure_invoke
[12] g_signal_emit_valist
[13] g_signal_emit
[14] gtk_main_do_event
[15] gdk_window_process_all_updates
[16] g_main_context_dispatch
[17] g_main_loop_run
[18] gtk_main
[19] wxGUIEventLoop::DoRun()
[20] wxEventLoopBase::Run()
[21] wxAppConsoleBase::MainLoop()
[22] wxEntry(int&, wchar_t**)
[23] main
[24] __libc_start_main

Here some gdb information:

(aegisub:23777): Pango-WARNING **: Invalid UTF-8 string passed to pango_layout_set_text()
./include/wx/dynarray.h(841): assert "uiIndex < m_nCount" failed in Item().
[New Thread 0x7fff5b7fe640 (LWP 23871)]
[New Thread 0x7fff5bfff640 (LWP 23872)]
[Thread 0x7fff5bfff640 (LWP 23872) exited]
./include/wx/dynarray.h(841): assert "uiIndex < m_nCount" failed in Item().
[Thread 0x7fff5affd640 (LWP 23852) exited]

Thread 1 "aegisub" received signal SIGTRAP, Trace/breakpoint trap.
0x00007ffff657a7e5 in raise () from /usr/lib/libpthread.so.0
(gdb) bt
#0  0x00007ffff657a7e5 in raise () at /usr/lib/libpthread.so.0
#1  0x00007ffff70139f6 in  () at /usr/lib/libwx_baseu-3.0.so.0
#2  0x00007ffff7011280 in wxOnAssert(char const*, int, char const*, char const*, wchar_t const*) () at /usr/lib/libwx_baseu-3.0.so.0
#3  0x00007ffff74d2a4c in wxGUIAppTraits::ShowAssertDialog(wxString const&) () at /usr/lib/libwx_gtk2u_core-3.0.so.0
#4  0x00007ffff70134a7 in  () at /usr/lib/libwx_baseu-3.0.so.0
#5  0x00007ffff701372d in wxAppConsoleBase::OnAssertFailure(wchar_t const*, int, wchar_t const*, wchar_t const*, wchar_t const*) () at /usr/lib/libwx_baseu-3.0.so.0
#6  0x00007ffff74a1631 in wxApp::OnAssertFailure(wchar_t const*, int, wchar_t const*, wchar_t const*, wchar_t const*) () at /usr/lib/libwx_gtk2u_core-3.0.so.0
#7  0x000055555596a6a9 in  ()
#8  0x00007ffff7013968 in  () at /usr/lib/libwx_baseu-3.0.so.0
#9  0x00007ffff70105e4 in wxOnAssert(char const*, int, char const*, char const*, char const*) () at /usr/lib/libwx_baseu-3.0.so.0
#10 0x00007ffff74cbfb5 in  () at /usr/lib/libwx_gtk2u_core-3.0.so.0
#11 0x00007ffff769406a in  () at /usr/lib/libwx_gtk2u_core-3.0.so.0
#12 0x00007ffff74e6065 in wxWindowDCImpl::DoGetPartialTextExtents(wxString const&, wxArrayInt&) const () at /usr/lib/libwx_gtk2u_core-3.0.so.0
#13 0x00007ffff7ae3f40 in  () at /usr/lib/libwx_gtk2u_stc-3.0.so.0
#14 0x00007ffff7b20f7a in  () at /usr/lib/libwx_gtk2u_stc-3.0.so.0
#15 0x00007ffff7afb332 in  () at /usr/lib/libwx_gtk2u_stc-3.0.so.0
#16 0x00007ffff7afb839 in  () at /usr/lib/libwx_gtk2u_stc-3.0.so.0
#17 0x00007ffff7b070c0 in  () at /usr/lib/libwx_gtk2u_stc-3.0.so.0
#18 0x00007ffff7b0fd22 in  () at /usr/lib/libwx_gtk2u_stc-3.0.so.0
#19 0x00007ffff7ae76bf in  () at /usr/lib/libwx_gtk2u_stc-3.0.so.0
#20 0x00007ffff7adc4b8 in wxStyledTextCtrl::OnPaint(wxPaintEvent&) () at /usr/lib/libwx_gtk2u_stc-3.0.so.0
#21 0x00007ffff7172dde in wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) () at /usr/lib/libwx_baseu-3.0.so.0
#22 0x00007ffff7172edc in wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) () at /usr/lib/libwx_baseu-3.0.so.0
#23 0x00007ffff717321e in wxEvtHandler::TryHereOnly(wxEvent&) () at /usr/lib/libwx_baseu-3.0.so.0
#24 0x00007ffff71732ac in wxEvtHandler::ProcessEventLocally(wxEvent&) () at /usr/lib/libwx_baseu-3.0.so.0
#25 0x00007ffff7173382 in wxEvtHandler::ProcessEvent(wxEvent&) () at /usr/lib/libwx_baseu-3.0.so.0
#26 0x00007ffff71730d7 in wxEvtHandler::SafelyProcessEvent(wxEvent&) () at /usr/lib/libwx_baseu-3.0.so.0
#27 0x00007ffff74e3c4d in wxWindow::GTKSendPaintEvents(_GdkRegion const*) () at /usr/lib/libwx_gtk2u_core-3.0.so.0
#28 0x00007ffff74e41b5 in  () at /usr/lib/libwx_gtk2u_core-3.0.so.0
#29 0x00007ffff3fea0a8 in  () at /usr/lib/libgtk-x11-2.0.so.0
#30 0x00007ffff3db1ddf in g_closure_invoke () at /usr/lib/libgobject-2.0.so.0
#31 0x00007ffff3ddafbd in  () at /usr/lib/libgobject-2.0.so.0
#32 0x00007ffff3dce2db in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#33 0x00007ffff3dcf210 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#34 0x00007ffff410f275 in  () at /usr/lib/libgtk-x11-2.0.so.0
#35 0x00007ffff3fe8eae in gtk_main_do_event () at /usr/lib/libgtk-x11-2.0.so.0
#36 0x00007ffff3e3c3a0 in  () at /usr/lib/libgdk-x11-2.0.so.0
#37 0x00007ffff3e3c343 in  () at /usr/lib/libgdk-x11-2.0.so.0
#38 0x00007ffff3e3c343 in  () at /usr/lib/libgdk-x11-2.0.so.0
#39 0x00007ffff3e3c343 in  () at /usr/lib/libgdk-x11-2.0.so.0
#40 0x00007ffff3e3c343 in  () at /usr/lib/libgdk-x11-2.0.so.0
#41 0x00007ffff3e3818f in  () at /usr/lib/libgdk-x11-2.0.so.0
#42 0x00007ffff3e38c78 in gdk_window_process_all_updates () at /usr/lib/libgdk-x11-2.0.so.0
#43 0x00007ffff3e38cc9 in  () at /usr/lib/libgdk-x11-2.0.so.0
#44 0x00007ffff3e15257 in  () at /usr/lib/libgdk-x11-2.0.so.0
#45 0x00007ffff3ae2f30 in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
#46 0x00007ffff3b36b59 in  () at /usr/lib/libglib-2.0.so.0
#47 0x00007ffff3ae2593 in g_main_loop_run () at /usr/lib/libglib-2.0.so.0
#48 0x00007ffff3fe79fe in gtk_main () at /usr/lib/libgtk-x11-2.0.so.0
#49 0x00007ffff74b9876 in wxGUIEventLoop::DoRun() () at /usr/lib/libwx_gtk2u_core-3.0.so.0
#50 0x00007ffff704b37e in wxEventLoopBase::Run() () at /usr/lib/libwx_baseu-3.0.so.0
#51 0x00007ffff7011766 in wxAppConsoleBase::MainLoop() () at /usr/lib/libwx_baseu-3.0.so.0
#52 0x000055555596cfee in  ()
#53 0x00007ffff7090199 in wxEntry(int&, wchar_t**) () at /usr/lib/libwx_baseu-3.0.so.0
#54 0x000055555596a4e2 in main ()

I'm using Aeg-dev@e8d324f, a fork of b00f5dd with some windows related commits.

This version cannot correctly display emoji in text box, and it gives lots of warnings. But it didn't crash.

image

image

Also didn't crash for me on Arch, master branch from a couple weeks ago.

I create new build from 48c3acd, it does not crash anymore, I'm closing ticket.
Maybe some dependencies which as been upgraded in my system...