Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 895634 - net-im/qtox-1.17.6-r1 segfault at exit in spellchecker
Summary: net-im/qtox-1.17.6-r1 segfault at exit in spellchecker
Status: CONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Chiitoo
URL:
Whiteboard:
Keywords: PATCH
Depends on:
Blocks:
 
Reported: 2023-02-21 00:04 UTC by Михаил
Modified: 2023-02-24 12:48 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
patch to delete spell cheker before chat window (spellcheckdeletebefore.patch,452 bytes, patch)
2023-02-21 00:04 UTC, Михаил
Details | Diff
segfault backtrace (qtoxbt.txt,5.80 KB, text/plain)
2023-02-24 12:23 UTC, Михаил
Details
emerge --info qtox (emergeinfo.txt,9.28 KB, text/plain)
2023-02-24 12:26 UTC, Михаил
Details
valgrind report use after free error (qtoxvalgrind.txt,4.05 KB, text/plain)
2023-02-24 12:48 UTC, Михаил
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Михаил 2023-02-21 00:04:01 UTC
Created attachment 853422 [details, diff]
patch to delete spell cheker before chat window

net-im/qtox-1.17.6-r1 segmentation fault at exit if spellcheck is enabled.

                Stack trace of thread 5737:
                #0  0x00007ffff4ea6f08 _ZN7QObject17removeEventFilterEPS_ (libQt5Core.so.5 + 0x2a6f08)
                #1  0x00007ffff6a93ee6 _ZN6Sonnet26SpellCheckDecoratorPrivateD2Ev (libKF5SonnetUi.so.5 + 0x1dee6)
                #2  0x00007ffff6a9400d _ZNKSt14default_deleteIN6Sonnet26SpellCheckDecoratorPrivateEEclEPS1_ (libKF5SonnetUi.so.5 + 0x1e00d)
                #3  0x00007ffff6a9402f _ZNSt10unique_ptrIN6Sonnet26SpellCheckDecoratorPrivateESt14default_deleteIS1_EED2Ev (libKF5SonnetUi.so.5 + 0x1e02f)
                #4  0x00007ffff6a936df _ZN6Sonnet19SpellCheckDecoratorD2Ev (libKF5SonnetUi.so.5 + 0x1d6df)
                #5  0x00007ffff6a936f3 _ZN6Sonnet19SpellCheckDecoratorD0Ev (libKF5SonnetUi.so.5 + 0x1d6f3)
                #6  0x00007ffff4ea08a2 _ZN14QObjectPrivate14deleteChildrenEv (libQt5Core.so.5 + 0x2a08a2)
                #7  0x00007ffff5ba0626 _ZN7QWidgetD2Ev (libQt5Widgets.so.5 + 0x1a0626)
                #8  0x000055555575917d _ZN12ChatTextEditD0Ev (qtox + 0x20517d)
                #9  0x00007ffff4ea08a2 _ZN14QObjectPrivate14deleteChildrenEv (libQt5Core.so.5 + 0x2a08a2)
                #10 0x00007ffff5ba0626 _ZN7QWidgetD2Ev (libQt5Widgets.so.5 + 0x1a0626)
                #11 0x00007ffff5ba0969 _ZN7QWidgetD0Ev (libQt5Widgets.so.5 + 0x1a0969)
                #12 0x00007ffff4ea08a2 _ZN14QObjectPrivate14deleteChildrenEv (libQt5Core.so.5 + 0x2a08a2)
                #13 0x00007ffff5ba0626 _ZN7QWidgetD2Ev (libQt5Widgets.so.5 + 0x1a0626)
                #14 0x00007ffff5d12d59 _ZN9QSplitterD0Ev (libQt5Widgets.so.5 + 0x312d59)
                #15 0x00007ffff4ea08a2 _ZN14QObjectPrivate14deleteChildrenEv (libQt5Core.so.5 + 0x2a08a2)
                #16 0x00007ffff5ba0626 _ZN7QWidgetD2Ev (libQt5Widgets.so.5 + 0x1a0626)
                #17 0x00005555556f726d _ZN8ChatFormD0Ev (qtox + 0x1a326d)
                #18 0x000055555576bad5 _ZN6Widget12removeFriendEP6Friendb (qtox + 0x217ad5)
                #19 0x000055555577330d _ZN6WidgetD1Ev (qtox + 0x21f30d)
                #20 0x0000555555773b1d _ZN6WidgetD0Ev (qtox + 0x21fb1d)
                #21 0x0000555555693982 _ZN5NexusD1Ev (qtox + 0x13f982)
                #22 0x0000555555693a5d _ZN5Nexus15destroyInstanceEv (qtox + 0x13fa5d)
                #23 0x00005555556124de _Z7cleanupv (qtox + 0xbe4de)
                #24 0x00007ffff4eaac95 n/a (libQt5Core.so.5 + 0x2aac95)
                #25 0x00007ffff4e7700a _ZN16QCoreApplication11aboutToQuitENS_14QPrivateSignalE (libQt5Core.so.5 + 0x27700a)
                #26 0x00007ffff4e7b5a9 _ZN23QCoreApplicationPrivate11execCleanupEv (libQt5Core.so.5 + 0x27b5a9)
                #27 0x00007ffff4e7eaf4 _ZN16QCoreApplication4execEv (libQt5Core.so.5 + 0x27eaf4)
                #28 0x000055555560e3a9 main (qtox + 0xba3a9)
                #29 0x00007ffff465434a __libc_start_call_main (libc.so.6 + 0x2334a)
                #30 0x00007ffff46543fc __libc_start_main@@GLIBC_2.34 (libc.so.6 + 0x233fc)
                #31 0x0000555555611e01 _start (qtox + 0xbde01)
                
Problem caused by incorrect destruction order for child of ChatForm widget.

Spell checker tried detaching event filter from deleted viewport widget.
Comment 1 Chiitoo gentoo-dev 2023-02-24 08:09:23 UTC
Hmmm, so far I can not re-produce the issue here with up-to-date unstable packages.

Does it require some specific steps, and does it happen always even with a new, clean and fresh profile?
Comment 2 Михаил 2023-02-24 12:19:46 UTC
(In reply to Chiitoo from comment #1)
> Does it require some specific steps, and does it happen always even with a
> new, clean and fresh profile?

Yep.
1. Build qtox with USE=spellcheck
2. You have to enable spell checking in Settings/General
3. Restart qtox, because checker settings apply after restart.
4. Open chat form with text widget and verify spellchecker is working.
5. Quit from application. Default behavior is closing to tray. You should quit.
Comment 3 Михаил 2023-02-24 12:23:18 UTC
Created attachment 854336 [details]
segfault backtrace
Comment 4 Chiitoo gentoo-dev 2023-02-24 12:24:54 UTC
Ah, yes, I see it now.

I only tried actually using it, and left it running, heh.

I'll try to look into more when I have more time, too, but thanks so far.

Unfortunately, since upstream is "gone" at this time, meaning patches will not be going upstream, we're probably not going to carry it in ::gentoo for long either... but perhaps, hopefully, the maintainers will return to it before that.
Comment 5 Михаил 2023-02-24 12:26:50 UTC
Created attachment 854338 [details]
emerge --info qtox
Comment 6 Михаил 2023-02-24 12:48:22 UTC
Created attachment 854340 [details]
valgrind report use after free error