Bug 28713 - aegisub unusable - launches an error window for everything
Summary: aegisub unusable - launches an error window for everything
Status: NEW
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: 8
Hardware: All Linux
Priority: Normal major
Target Milestone: ---
Assignee: QA Team
QA Contact:
URL:
Whiteboard: MGA8-64-OK
Keywords: advisory, validated_update
Depends on:
Blocks:
 
Reported: 2021-04-04 08:06 CEST by Mészáros Csaba
Modified: 2021-04-15 18:13 CEST (History)
4 users (show)

See Also:
Source RPM: aegisub-3.2.2-14.git20191006.9.mga8.src.rpm
CVE:
Status comment:


Attachments

Description Mészáros Csaba 2021-04-04 08:06:52 CEST
Description of problem:
When I open a .srt file, this occurs. Through some Google searching, it seems to have something to do with wxwidget
Unfortunately, aegisub is almost unusable because it keeps popping up a window full of errors. 
The log backtrace is not long, so I will insert it here:

ASSERT INFO:
./src/stc/stc.cpp(5186): assert "unused==0" failed in StartStyling(): The second argument passed to StartStyling should be 0

BACKTRACE:
[1] wxStyledTextCtrl::StartStyling(int, int)
[2] std::vector<int, std::allocator<int> >::_M_fill_assign(unsigned long, int const&)
[3] wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&)
[4] wxEvtHandler::SearchDynamicEventTable(wxEvent&)
[5] wxEvtHandler::TryHereOnly(wxEvent&)
[6] wxEvtHandler::ProcessEventLocally(wxEvent&)
[7] wxEvtHandler::ProcessEvent(wxEvent&)
[8] wxStyledTextCtrl::NotifyParent(SCNotification*)
[9] wxStyledTextCtrl::OnPaint(wxPaintEvent&)
[10] wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&)
[11] wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*)
[12] wxEvtHandler::TryHereOnly(wxEvent&)
[13] wxEvtHandler::ProcessEventLocally(wxEvent&)
[14] wxEvtHandler::ProcessEvent(wxEvent&)
[15] wxEvtHandler::SafelyProcessEvent(wxEvent&)
[16] wxWindow::GTKSendPaintEvents(_cairo*)
[17] g_closure_invoke
[18] g_signal_emit_valist
[19] g_signal_emit
[20] gtk_container_propagate_draw
[21] g_closure_invoke
[22] g_signal_emit_valist
[23] g_signal_emit
[24] gtk_container_propagate_draw
[25] g_closure_invoke
[26] g_signal_emit_valist
[27] g_signal_emit
[28] gtk_container_propagate_draw
[29] g_closure_invoke
[30] g_signal_emit_valist
[31] g_signal_emit
[32] gtk_container_propagate_draw
[33] g_closure_invoke
[34] g_signal_emit_valist
[35] g_signal_emit
[36] gtk_container_propagate_draw
[37] gtk_container_propagate_draw
[38] gtk_main_do_event
[39] g_signal_emit_valist
[40] g_signal_emit
[41] g_main_context_dispatch
[42] g_main_loop_run
[43] gtk_main
[44] wxGUIEventLoop::DoRun()
[45] wxEventLoopBase::Run()
[46] wxAppConsoleBase::MainLoop()
[47] std::vector<int, std::allocator<int> >::operator=(std::vector<int, std::allocator<int> > const&)
[48] wxEntry(int&, wchar_t**)
[49] main
[50] __libc_start_main
[51] main

They write about it here:   
https://github.com/Aegisub/Aegisub/issues/133
Comment 1 Lewis Smith 2021-04-04 20:49:43 CEST
Thank you for the report, and the invaluable pointer.

"This is because of that StartStyling with two arguments has been deprecated since wxWidgets 3.1"
"Compatibility with wxWidgets 3.1 is highly desirable" implies that 'aegisub' is not yet:
"Temporary patch: aegisub-wxStyledTextCtrl-StartStyling.patch" 
(->  https://pastebin.com/raw/C7n5x61y, but the patch is shown also in the bug).

'wxwidgets' alone is a worm's nest, with many different occurrences. This looks the best:
 $ urpmq --requires aegisub | grep wx
libwx_baseu-3.1.so.5()(64bit)
libwx_baseu-3.1.so.5(WXU_3.1)(64bit)
libwx_baseu_xml-3.1.so.5()(64bit)
libwx_baseu_xml-3.1.so.5(WXU_3.1)(64bit)
libwx_gtk3u_core-3.1.so.5()(64bit)
libwx_gtk3u_core-3.1.so.5(WXU_3.1)(64bit)
libwx_gtk3u_gl-3.1.so.5()(64bit)
libwx_gtk3u_gl-3.1.so.5(WXU_3.1)(64bit)
libwx_gtk3u_stc-3.1.so.5()(64bit)
libwx_gtk3u_stc-3.1.so.5(WXU_3.1)(64bit)
 $ urpmq --requires-recursive aegisub | grep wx
lib64wx_baseu3.1_5
lib64wx_baseu_xml3.1_5
lib64wx_gtk3u_core3.1_5
lib64wx_gtk3u_gl3.1_5
lib64wx_gtk3u_stc3.1_5
wxgtk3.1

Since these wx* look current, and the upstream comment does not accuse wxwidgets, it looks as if patching aegisub is the necessary answer.

Not sure where to push this, so assigniong globally; CC'ing DavidG and wally who have had most to do with it.

CC: (none) => geiger.david68210, jani.valimaa
Assignee: bugsquad => pkg-bugs

Comment 2 Jani Välimaa 2021-04-05 15:35:32 CEST
Added patch from https://github.com/Aegisub/Aegisub/pull/134 to aegisub-3.2.2-14.git20191006.9.1.mga8.

Please test it when it lands to mirrors.

Assignee: pkg-bugs => qa-bugs

Comment 3 Mészáros Csaba 2021-04-06 08:48:05 CEST
I tested it. It seems to work. So far there has been no problem.
Thank You!
Comment 4 David GEIGER 2021-04-12 08:38:12 CEST
Advisory:
========================

This update fixes deprecated calls to wxSTC as wxStyledTextCtrl::StartStyling() should take only one argument since wxWidgets 3.1.

Reference:
https://github.com/Aegisub/Aegisub/issues/133

========================

Packages in 8/core/updates_testing:
========================
aegisub-3.2.2-14.git20191006.9.1.mga8.i586.rpm
aegisub-3.2.2-14.git20191006.9.1.mga8.x86_64.rpm

Source RPM: 
========================
aegisub-3.2.2-14.git20191006.9.1.mga8.src.rpm
Comment 5 Aurelien Oudelet 2021-04-15 18:13:20 CEST
(In reply to Mészáros Csaba from comment #3)
> I tested it. It seems to work. So far there has been no problem.
> Thank You!

And yet another OK.
Validating.

CC: (none) => ouaurelien, sysadmin-bugs
Whiteboard: (none) => MGA8-64-OK
Keywords: (none) => advisory, validated_update


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